-
Notifications
You must be signed in to change notification settings - Fork 37
Madgraph4GPU User Guide
Last modification: 25 Apr 2024
generate 10k events for p p > t t~ g on a CPU with:
git clone --recurse-submodules https://github.com/madgraph5/madgraph4gpu.git
cd madgraph4gpu/MG5aMC/mg5amcnlo
cat << EOF >> pp_ttxg.mg5
generate p p > t t~ g
ouptut madgraph_simd
launch
EOF
./bin/mg5_aMC pp_ttxg.mg5The instructions below shall provide the necessary information for users of the madgraph4gpu repository to install the software, generate the source code for various physics processes and to run the event generation for those.
We have agreed with the upstream mg5amcnlo team to provide madgraph4gpu as a "plugin" to the project. The instructions below provide you the current way of retrieving and building the software. It is expected that the way of retrieving the software will change, the usage of it though shall be less impacted by the future evolution of this software.
If you run into any troubles with the guide below please contact [email protected]
We are building the software with various compiler versions. Below you find a table of compiler versions and operating systems which we have tested. For usage within the experiment workflows (especially LHC) we intend to align those.
| OS | Compiler |
|---|---|
| Alma Linux 9.3 | gcc 13.1.1 |
| OS | CPU compiler | NVidia version |
|---|---|---|
| Alma Linux 9.3 | gcc 13.1.1 | nvcc 12.4 |
| OS | CPU compiler | AMD version |
|---|---|---|
As the software is still under development we have not provided an official release of it yet. We always intend to keep the master branches in a working state. To retrieve the Madgraph4GPU package together with the upstream Madgraph5_amc@NLO generator software you can checkout the software with
git clone --recurse-submodules https://github.com/madgraph5/madgraph4gpu.git
The upstream mg5amcnlo package is currently being provided as a git submodule in the repository under madgraph4gpu/MG5aMC/mg5amcnlo. With the git clone above the proper version with the correct git hash of the submodule shall be checked out which is compatible with the madgraph4gpu project. In case of incompatibilities you can checkout the proper tip of the branch of this submodule with
cd madgraph4gpu/MG5aMC/mg5amcnlo
git checkout gpucpp
The project aims to stay as close as possible to the original syntax of mg5amcnlo when it comes to generating physics processes. We have augmented the syntax where necessary e.g. to steer the generation of code for a certain hardware platform or the level of parallelisation for the event generation.
From a functionality point of view two modes for the code generation can be distinguished
- "madevent" mode which allows the full fledged generation of events which can be generated together with the mg5amcnlo package which provides pieces such as the random number generation, phase space sampling, phase space integration and I/O.
- "standalone" mode provides a reduced functionality and shall be done when e.g. used in connection with another event generator where the matrix element calculations are used as a "plugin"
| madgraph4gpu | The project to speed up the Madgraph5_aMC@NLO event generator package by offloading parts of the upstream project to compute accelerators |
| mg5amcnlo | The upstream Madgraph5_aMC@NLO event generator package, as provided in |