Opticks : GPU Optical Photon Simulation for Particle Physics using NVIDIA® OptiXTM

Opticks is an open source project that integrates the NVIDIA OptiX GPU ray tracing engine with Geant4 toolkit based simulations. Massive parallelism brings drastic performance improvements with optical photon simulation speedup expected to exceed 1000 times Geant4 with workstation GPUs. Optical physics processes of scattering, absorption, scintillator reemission and boundary processes are implemented as CUDA OptiX programs based on the Geant4 implementations. Wavelength-dependent material and surface properties as well as inverse cumulative distribution functions for reemission are interleaved into GPU textures providing fast interpolated property lookup or wavelength generation. OptiX handles the creation and application of a choice of acceleration structures such as boundary volume hierarchies and the transparent use of multiple GPUs. A major recent advance is the implementation of GPU ray tracing of complex constructive solid geometry shapes, enabling automated translation of Geant4 geometries to the GPU without approximation. Using common initial photons and random number sequences allows the Opticks and Geant4 simulations to be run point-by-point aligned. Aligned running has reached near perfect equivalence with test geometries.

[1]  Zheng Wang,et al.  Neutrino Physics with JUNO , 2015, 1507.05613.

[2]  Michael Garland,et al.  Understanding throughput-oriented architectures , 2010, Commun. ACM.

[3]  S. Incerti,et al.  Geant4 developments and applications , 2006, IEEE Transactions on Nuclear Science.

[4]  Nathan Bell,et al.  Thrust: A Productivity-Oriented Library for CUDA , 2012 .

[5]  A. Dell'Acqua,et al.  Geant4 - A simulation toolkit , 2003 .