The GeantV project: preparing the future of simulation (original) (raw)

GeantV: Results from the prototype of concurrent vector particle transport simulation in HEP

arXiv: Computational Physics, 2020

Full detector simulation was among the largest CPU consumer in all CERN experiment software stacks for the first two runs of the Large Hadron Collider (LHC). In the early 2010's, the projections were that simulation demands would scale linearly with luminosity increase, compensated only partially by an increase of computing resources. The extension of fast simulation approaches to more use cases, covering a larger fraction of the simulation budget, is only part of the solution due to intrinsic precision limitations. The remainder corresponds to speeding-up the simulation software by several factors, which is out of reach using simple optimizations on the current code base. In this context, the GeantV R&D project was launched, aiming to redesign the legacy particle transport codes in order to make them benefit from fine-grained parallelism features such as vectorization, but also from increased code and data locality. This paper presents extensively the results and achievements o...

Towards a high performance geometry library for particle-detector simulations

Journal of Physics: Conference Series, 2015

Thread-parallelisation and single-instruction multiple data (SIMD) "vectorisation" of software components in HEP computing has become a necessity to fully benefit from current and future computing hardware. In this context, the Geant-Vector/GPU simulation project aims to re-engineer current software for the simulation of the passage of particles through detectors in order to increase the overall event throughput. As one of the core modules in this area, the geometry library plays a central role and vectorising its algorithms will be one of the cornerstones towards achieving good CPU performance. Here, we report on the progress made in vectorising the shape primitives, as well as in applying new C++ template based optimisations of existing code available in the Geant4, ROOT or USolids geometry libraries. We will focus on a presentation of our software development approach that aims to provide optimised code for all use cases of the library (e.g., single particle and many-particle APIs) and to support different architectures (CPU and GPU) while keeping the code base small, manageable and maintainable. We report on a generic and templated C++ geometry library as a continuation of the AIDA USolids project. The experience gained with these developments will be beneficial to other parts of the simulation software, such as for the optimisation of the physics library, and possibly to other parts of the experiment software stack, such as reconstruction and analysis.

Performance of GeantV EM Physics Models

Journal of Physics: Conference Series

The recent progress in parallel hardware architectures with deeper vector pipelines or many-cores technologies brings opportunities for HEP experiments to take advantage of SIMD and SIMT computing models. Launched in 2013, the GeantV project studies performance gains in propagating multiple particles in parallel, improving instruction throughput and data locality in HEP event simulation on modern parallel hardware architecture. Due to the complexity of geometry description and physics algorithms of a typical HEP application, performance analysis is indispensable in identifying factors limiting parallel execution. In this report, we will present design considerations and preliminary computing performance of GeantV physics models on coprocessors (Intel Xeon Phi and NVidia GPUs) as well as on mainstream CPUs.

Geant4—a simulation toolkit

Nuclear Instruments & Methods in Physics Research Section A-accelerators Spectrometers Detectors and Associated Equipment, 2003

Geant4 is a toolkit for simulating the passage of particles through matter. It includes a complete range of functionality including tracking, geometry, physics models and hits. The physics processes offered cover a comprehensive range, including electromagnetic, hadronic and optical processes, a large set of long-lived particles, materials and elements, over a wide energy range starting, in some cases, from 250eV and extending in others to the TeV energy range. It has been designed and constructed to expose the physics models utilised, to handle complex geometries, and to enable its easy adaptation for optimal use in different sets of applications. The toolkit is the result of a worldwide collaboration of physicists and software engineers. It has been created exploiting software engineering and object-oriented technology and implemented in the C++ programming language. It has been used in applications in particle physics, nuclear physics, accelerator design, space engineering and medical physics.

Simulation strategies for the LHC ATLAS experiment

IEEE Nuclear Science Symposuim & Medical Imaging Conference, 2010

The ATLAS experiment, operational at the new LHC collider, is fully simulated using a Geant 4-based simulation program within the ATLAS Athena framework. This simulation software is used for large-scale production of events on the LHC Computing Grid as well as for smaller-scale studies. Simulation of ATLAS requires many components, from the generators that simulate particle collisions to packages simulating the response of the various detectors and triggers. The latest developments in the saga of ATLAS simulation have been focussed on better representation of the real detector, based on first LHC data, and on performance improvements to ensure that event simulation is not a limiting factor in ATLAS physics analyses. The full process is constantly monitored and profiled to guarantee the best use of available resources without any degradation in the quality and accuracy of the simulation.

Studies of GEANT4 performance for different ATLAS detector geometries and code compilation methods

EPJ Web of Conferences, 2021

Full detector simulation is known to consume a large proportion of computing resources available to the LHC experiments, and reducing time consumed by simulation will allow for more profound physics studies. There are many avenues to exploit, and in this work we investigate those that do not require changes in the GEANT4 simulation suite. In this study, several factors affecting the full GEANT4 simulation execution time are investigated. A broad range of configurations has been tested to ensure consistency of physical results. The effect of a single dynamic library GEANT4 build type has been investigated and the impact of different primary particles at different energies has been evaluated using GDML and GeoModel geometries. Some configurations have an impact on the physics results and are, therefore, excluded from further analysis. Usage of the single dynamic library is shown to increase execution time and does not represent a viable option for optimization. Lastly, the static buil...

Detector Simulation Challenges for Future Accelerator Experiments

Frontiers in Physics

Detector simulation is a key component for studies on prospective future high-energy colliders, the design, optimization, testing and operation of particle physics experiments, and the analysis of the data collected to perform physics measurements. This review starts from the current state of the art technology applied to detector simulation in high-energy physics and elaborates on the evolution of software tools developed to address the challenges posed by future accelerator programs beyond the HL-LHC era, into the 2030–2050 period. New accelerator, detector, and computing technologies set the stage for an exercise in how detector simulation will serve the needs of the high-energy physics programs of the mid 21st century, and its potential impact on other research domains.

GeantV: from CPU to accelerators

Journal of Physics: Conference Series, 2016

The GeantV project aims to research and develop the next-generation simulation software describing the passage of particles through matter. While the modern CPU architectures are being targeted first, resources such as GPGPU, Intel© Xeon Phi, Atom or ARM cannot be ignored anymore by HEP CPU-bound applications. The proof of concept GeantV prototype has been mainly engineered for CPU's having vector units but we have foreseen from early stages a bridge to arbitrary accelerators. A software layer consisting of architecture/technology specific backends supports currently this concept. This approach allows to abstract out the basic types such as scalar/vector but also to formalize generic computation kernels using transparently library or device specific constructs based on Vc, CUDA, Cilk+ or Intel intrinsics. While the main goal of this approach is portable performance, as a bonus, it comes with the insulation of the core application and algorithms from the technology layer. This allows our application to be long term maintainable and versatile to changes at the backend side. The paper presents the first results of basket-based GeantV geometry navigation on the Intel© Xeon Phi KNC architecture. We present the scalability and vectorization study, conducted using Intel performance tools, as well as our preliminary conclusions on the use of accelerators for GeantV transport. We also describe the current work and preliminary results for using the GeantV transport kernel on GPUs.

Geant4 Simulation for LHC Radiation Monitoring

2006 IEEE Nuclear Science Symposium Conference Record, 2006

Monitoring radiation background is a crucial task for the operation of LHC experiments. A project is in progress at CERN for the optimisation of the radiation monitors for LHC experiments. A simulation system based on Geant4, designed to assist the engineering optimisation of LHC radiation monitor detectors, is presented. Various detector packaging configurations are studied through their Geant4-based simulation, and their behaviour is compared.

Parallel geometries in Geant4: Foundation and recent enhancements

2008 IEEE Nuclear Science Symposium Conference Record, 2008

The Geant4 software toolkit simulates the passage of particles through matter. It is utilized in high energy and nuclear physics experiments, in medical physics and space applications. For many applications it is necessary to measure particle fluxes and radiation doses in parts of the setup where there are complex structures. To undertake this in a flexible way, Geant4 has tools to create and use additional, parallel, geometrical hierarchies within a single application. A separate, parallel geometry can be used for each one amongst shower parameterization, event biasing, scoring of radiation, and/or the creation of hits in detailed readout structures. We describe the existing basic capabilities of the Geant4 toolkit to create multiple geometries and the recent major enhancements undertaken to streamline, enhance and extend these. New functionality enables Geant4 developers to offer new embedded schemes for scoring (requiring no user C++ code); has simplified the implementation of processes or capabilities using alternative geometries. In addition they provide advanced users easy to use tools with which to create new processes or applications which use different (or common) geometries for any purpose. I. INTRODUCTION HE Geant4 simulation toolkit [1][2] provides comprehensive detector and physics modeling capabilities embedded in a flexible structure. It is in use by many high-energy physics experiments, projects in space science [3] and medical physics [4] to simulate setups of arbitrary complexity. Key capabilities of this kernel include, geometry description and navigation, and tracking which interfaces with its physics processes and models. This paper provides an overview of the capabilities of the Geant4 toolkit for creating and utilizing multiple geometrical descriptions of a setup. Their primary uses are for performance optimization, by parameterizing the energy deposition of showers or biasing the Monte Carlo to sample efficiently tracks in an important region[5], and for measuring the effects of the passage of particles, in scoring radiation dose and flux. New features that greatly enhance Geant4 toolkit's capabilities for parallel geometries are described in this paper, and have been publicly available since Geant4 version 9.0, released in