Giter VIP home page Giter VIP logo

genonhpc's Introduction

GenOnHPC: Generator configurations on High Performance Computing Resource

이 프로젝트는 nurion HPC시스템 위에서 여러 MC generator들을 이용해 대용량 MC샘플을 생성하기 위한 환경 세팅, 잡 섭밋 환경 등을 다룹니다. 각종 MC generator에 따라 달라지는 라이브러리 세팅 등의 문제를 피하기 위하여 singularity container를 이용하고, 따라서 singularity recipe도 함께 제공합니다.

LHC에서는 gridpack라는 잘 검증된 시스템이 있지만, 여기에서는 별도의 환경을 구축합니다. Gridpack은 잘 검증되어 있지만, nurion시스템에서는 그리드, cvmfs, condor cmssw등과 의존성이 있는 경우 이를 구성하기 어려울 수 있기 때문입니다.

현재(2022.06.08)까지 사용해본 MC Generator list

Powheg : https://powhegbox.mib.infn.it/
MG5 : https://launchpad.net/mg5amcnlo
Pythia8 : https://pythia.org/
Herwig7 : https://herwig.hepforge.org/index.html
Sherpa : https://sherpa-team.gitlab.io/

Building singularity images

Singularity image를 만들기 위한 recipe파일들은 config/singularity디렉토리 아래에 저장되어 있습니다.

Example

cd config/singularity
singularity build mg5_amc_2.9.9.sif mg5_amc_2.9.recipe

Singularity image를 만들기 위해 사용한 docker image는 hepstore의 docker image들을 사용하였습니다.
Link : https://hub.docker.com/u/hepstore

Producing MC samples

Example command to produce 1M events:

cd test/mg5
export SIF=../../config/singularity/mg5_amc_2.9.9.sif
export LHAPDFSETS=/store/sw/hep/lhapdfsets/current
export NCPUS=8
export JOBSTART=1000
export NEVENT=10000
export NJOBS=100
export JOBSUFFIX="1M"
export DORUN=1
./prepare.sh TTTT_5f_NLO.tgz

Wrting MC cards

MC generator들을 활용하려면 먼저 각각 제너레이터에 필요한 Card들을 작성해야합니다.

작성한 Card 파일들을 tgz형식으로 압축 후 .sh 파일과 실행하게 됩니다.
단. Madgraph5의 경우 card 파일을 직접 스크립트에 사용하는것이 아닌 프로그램으로 최초 실행하여 만들어진 폴더 자체를 압축하여 실행합니다.

CMS card link

Powheg : https://github.com/cms-sw/genproductions/tree/master/bin/Powheg
MG5 : https://github.com/cms-sw/genproductions/tree/master/bin/MadGraph5_aMCatNLO
Pythia8 : https://github.com/cms-sw/cmssw/tree/master/Configuration/Generator/python
Herwig7 : https://github.com/cms-sw/cmssw/tree/master/Configuration/Generator/python/Herwig7Settings
Sherpa : https://github.com/cms-sw/genproductions/tree/master/bin/Sherpa

MC 샘플을 validate 하기 위해서 rivet toolkit을 사용하게됩니다.

rivet -a analysis 'filename'.hepmc
rivet-mkhtml Rivet.yoda

genonhpc's People

Contributors

jhgoh avatar parkseastar avatar

Watchers

James Cloos avatar  avatar

genonhpc's Issues

Migration to CMS gridpack

본래 이 project의 주요 목적 중 하나가 CMS independent하게 MC generation을 하는 것이었지만,
모든 generator들의 모든 변화에 맞추기에는 현실적인 어려움이 있을 것으로 보임.

따라서 generator와의 interface 등은 gridpack프로젝트에 직접 기여하고,
대신 여기에서는 HPC 자원 활용도를 높이는 방식으로 전체 프로젝트의 방향성을 변화 하는 것이 바람직해 보임.

madgraph-lhapdf python인터페이스 문제

아래와 같은 메시지가 출력되면서 lhapdf 에서 reweighting이 실패함. generation자체에는 문제가 없음.

Failed to access python version of LHAPDF: If the python interface to LHAPDF is available on your system, try adding its location to the PYTHONPATH environment variable and theLHAPDF library location to LD_LIBRARY_PATH (linux) or DYLD_LIBRARY_PATH (mac os x).The required LD_LIBRARY_PATH is /sw/MG5_aMC_v2_9_9/HEPTools/lhapdf6_py3//lib
WARNING: Failed to access python version of LHAPDF: cannot compute PDF uncertainty from the weights in the events. The weights in the LHE event files will still cover all PDF set members, but there will be no PDF uncertainty printed in the run summary. 
 If the python interface to LHAPDF is available on your system, try adding its location to the PYTHONPATH environment variable and theLHAPDF library location to LD_LIBRARY_PATH (linux) or DYLD_LIBRARY_PATH (mac os x). 

Recipe to setup CMSSW

Provide a recipe to setup CMSSW to perform generator level analysis, mostly just to dump LHE from MINIAODSIM

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.