CERN Accelerating science

Article
Report number arXiv:2306.03675
Title Potential of the Julia programming language for high energy physics computing
Author(s) Eschle, Jonas (U. Zurich (main)) ; Gál, Tamás (Erlangen - Nuremberg U., Theorie III) ; Giordano, Mosè (Imperial Coll., London) ; Gras, Philippe (IRFU, Saclay) ; Hegner, Benedikt (CERN) ; Heinrich, Lukas (Munich, Max Planck Inst.) ; Hernandez Acosta, Uwe (HZDR, Dresden) ; Kluth, Stefan (Munich, Max Planck Inst.) ; Ling, Jerry (Harvard U.) ; Mato, Pere (CERN) ; Mikhasenko, Mikhail (ORIGINS, Garching ; LMU Munich (main)) ; Moreno Briceño, Alexander (Antonio Narino U.) ; Pivarski, Jim (Princeton U.) ; Samaras-Tsakiris, Konstantinos (CERN) ; Schulz, Oliver (Munich, Max Planck Inst.) ; Stewart, Graeme Andrew (CERN) ; Strube, Jan (PNL, Richland ; Oregon U.) ; Vassilev, Vassil (Princeton U.)
Publication 2023-10-05
Imprint 2023-06-06
Number of pages 24
In: Comput. Softw. Big Sci. 7 (2023) 10
DOI 10.1007/s41781-023-00104-x
Subject category physics.comp-ph ; Other Fields of Physics ; hep-ex ; Particle Physics - Experiment ; cs.PL ; Computing and Computers ; hep-ph ; Particle Physics - Phenomenology
Abstract Research in high energy physics (HEP) requires huge amounts of computing and storage, putting strong constraints on the code speed and resource usage. To meet these requirements, a compiled high-performance language is typically used; while for physicists, who focus on the application when developing the code, better research productivity pleads for a high-level programming language. A popular approach consists of combining Python, used for the high-level interface, and C++, used for the computing intensive part of the code. A more convenient and efficient approach would be to use a language that provides both high-level programming and high-performance. The Julia programming language, developed at MIT especially to allow the use of a single language in research activities, has followed this path. In this paper the applicability of using the Julia language for HEP research is explored, covering the different aspects that are important for HEP code development: runtime performance, handling of large projects, interface with legacy code, distributed computing, training, and ease of programming. The study shows that the HEP community would benefit from a large scale adoption of this programming language. The HEP-specific foundation libraries that would need to be consolidated are identified
Copyright/License publication: © 2023-2024 The Author(s) (License: CC-BY-4.0)
preprint: (License: CC BY 4.0)



Corresponding record in: Inspire
 Registro creado el 2023-08-04, última modificación el 2024-10-12


Texto completo:
2306.03675 - Descargar el texto completoPDF
document - Descargar el texto completoPDF