The VecGeom geometry library is a relatively recent effort aiming to provide
a modern and high performance geometry service for particle-detector simulation
in hierarchical detector geometries common to HEP experiments.
One of its principal targets is the effective use of vector SIMD hardware
instructions to accelerate geometry calculations for single-track as well
as multiple-track queries. Previously, excellent performance improvements compared to Geant4/ROOT
could be reported for elementary geometry algorithms at the level of single shape queries.
In this contribution, we will focus on the higher level navigation algorithms
in VecGeom, which are the most important components as seen from the simulation engines.
In this contribution, we will first report on our R&D effort and developments to implement SIMD enhanced
data structures to speed up the well-known "voxelized" navigation algorithms,
ubiquitously used for particle tracing in complex detector modules
consisting of many daughter parts.
Second, we will discuss complementary new approaches to improve
navigation algorithms in HEP. These ideas are based on a systematic
exploitation of static properties of the detector layout as well as
automatic code generation and specialization of the C++ navigator classes.
Such specializations reduce the overhead of generic- or virtual function based
algorithms and enhance the effectiveness of the SIMD vector units.
These novel approaches go well beyond the existing solutions available in Geant4 or TGeo/ROOT,
achieve a significantly superior performance, and might be of interest
for a wide range of simulation backends (Geant-V, VMC, Geant4).
We exemplify this with concrete benchmarks for the CMS and ALICE detectors.
|Primary Keyword (Mandatory)||High performance computing|
|Secondary Keyword (Optional)||Simulation|