Event generators simulate particle interactions using Monte Carlo techniques, providing the primary connection between experiment and theory in experimental high energy physics. These software packages, which are the first step in the simulation worflow of collider experiments, represent approximately 5 to 20% of the annual WLCG usage for the ATLAS and CMS experiments. With computing architectures becoming more heterogeneous, it is important to ensure that these key software frameworks can be run on future systems, large and small. In this contribution, recent progress on porting and speeding up the Madgraph5_aMC@NLO event generator on hybrid architectures, i.e. CPU with GPU accelerators, is discussed. The main focus of this work has been in the calculation of scattering amplitudes and "matrix elements", which is the computational bottleneck of an event generation application. For physics processes limited to QCD leading order, the code generation toolkit has been expanded to produce matrix element calculations using C++ vector instructions on CPUs and using CUDA for NVidia GPUs, as well as using Alpaka, Kokkos and SYCL for multiple CPU and GPU architectures. Performance is reported in terms of matrix element calculations per time on NVidia, Intel, and AMD devices. The status and outlook for the integration of this work into a production release usable by the LHC experiments, with the same functionalities and very similar user interfaces as the current Fortran version, is also described.
翻译:利用蒙特卡洛 模拟事件生成器模拟利用蒙特卡洛 技术的粒子互动,为实验性高能量物理实验实验实验和理论之间的实验和理论提供主要联系。 这些软件包是模拟对撞器实验的模拟滚动过程的第一步,大约代表了ATLAS和 CMS 实验每年WLLG的5%至20%。 随着计算结构日益多样化,必须确保这些关键软件框架能够在未来系统(大小)运行。在这一贡献中,在混合结构(即使用GPU加速器的CPU)上移植和加速Madrop5_aMC@NLLO事件生成器方面,最近的进展得到了讨论。这项工作的主要重点是计算分散的缩放调和“矩阵元素”的使用情况。这是一个事件生成应用程序的计算瓶颈。对于限于QCD领先秩序的物理过程来说,代码生成工具已经扩大,以便利用C++ 矢量指令和 NVidia GPUs 的 CUDA 事件生成器,以及使用 Alpka、 Kokos 和 SYCLU 和 SyCLF 等用户当前变压模型的模拟模型, 运行模型的性模型的运行状态模型, 和同步模型的运行模型的模型的运行状态和同步模型的模型的运行状态是报告的模型。