Abstract

State-of-the-art algorithms generate scattering amplitudes for high-energy physics at leading order for high-multiplicity processes as compiled code (in Fortran, C or C++). For complicated processes the size of these libraries can become tremendous (many GiB). We show that amplitudes can be translated to byte-code instructions, which even reduce the size by one order of magnitude. The byte-code is interpreted by a Virtual Machine with runtimes comparable to compiled code and a better scaling with additional legs. We study the properties of this algorithm, as an extension of the Optimizing Matrix Element Generator (O'Mega). The bytecode matrix elements are available as alternative input for the event generator WHIZARD. The bytecode interpreter can be implemented very compactly, which will help with a future implementation on massively parallel GPUs.

Highlights

  • Making extreme computations possible with virtual machines196 (2015) 58-69 J.R.Reuter Extreme computations with Virtual Machines ACAT 2016,Valparaíso, 21.01.16

  • Tree-level matrix elements (MEs) needed in corrections to the parton shower and for k real emissions in NkLO fixed order calculations

  • A Virtual Machine (VM) in our context is a compiled program The VM is able to read instructions from disk The VM performs arbitrary number of operations of a finite instruction set Instructions can be stored as byte code VM can be regarded as machine with registers and instructions what to do on the registers Similar to a CPU, but on a higher level: registers are e.g. arrays of momenta and wave functions instructions are e.g. scalar products of momenta and wave functions

Read more

Summary

Making extreme computations possible with virtual machines

196 (2015) 58-69 J.R.Reuter Extreme computations with Virtual Machines ACAT 2016,Valparaíso, 21.01.16. Modern collider experiments need matrix elements (MEs) of tremendous multiplicity. Tree-level MEs needed in corrections to the parton shower (merging) and for k real emissions in NkLO fixed order calculations. Examples: access to top Yukawa at ILC/CLIC: e+e ! Automated efficient ME generators provide every multiplicity (in principle) Alpha [Caravaglios/Moretti, 1995], O’Mega [Ohl/JRR, 2000], Helac [Papadopoulos, 2001], Comix [Gleisberg/Hoeche, 2008]. Direct numerical implementations of recursions less flexible Traditional method: use meta programming to combine fast code & full flexibility. Algebraic expression from high-level language: Form, Mathematica, OCaml, Python,. Evaluation in numerical fast language: C, Fortran,. Examples: O’Mega [Ohl/JRR, 2000], Madgraph [Alwall et al, 2008], FormCalc [Hahn/Perez-Victoria, 1998], GoSam [van Deurzen et al, 2013],

What to do with complex processes?
Contents of the byte code
Parallelization in High Energy Physics
OVM interpreter matrix element
FUSE Z
Performance of byte code generation
Fortran size
Identify a level of the parallelization by counting external momenta
Source code is like an unrolled version of this loop
Quantitative Analysis of the Parallelization
Application on GPUs ?
Conclusions & Outlook
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call