Skip to content

Madgraph4GPU User Guide

Stefan Roiser edited this page Apr 30, 2024 · 16 revisions

Last modification: 25 Apr 2024



TL;DR

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.mg5


The 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 Madgraph 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 stefan.roiser@cern.ch

Nomenclature

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

General remarks about the repository

Environment to build the software

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.

CPU with vector instructions

OS Compiler

NVidia GPUs

OS CPU compiler NVidia version

AMD GPUs

OS CPU compiler AMD version

Retrieving the software

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

Generating code for a physics process and run the event generation

Clone this wiki locally