A CUDA Monte Carlo simulator for radiation therapy dosimetry based on Geant4

Geant4 is a large-scale particle physics package that facilitates every aspect of particle transport simulation. This includes, but is not limited to, geometry description, material definition, tracking of particles passing through and interacting with matter, storage of event data, and visualization. As more detailed and complex simulations are required in different application domains, there is much interest in adapting the code for parallel and multi-core architectures. Parallelism can be achieved by tracking many particles at the same time. The complexity in the context of a GPU/CUDA adaptation is the highly serialized nature of the Geant4 package and the presence of large lookup tables that guide the simulation. This work presents G4CU, a CUDA implementation of the core Geant4 algorithm adapted for dose calculations in radiation therapy. For these applications the geometry is a block of voxels and the physics is limited to low energy electromagnetic physics. These features allow efficient tracking of many particles in parallel on the GPU. Experiments with radiotherapy simulations in G4CU demonstrate about 40 times speedups over Geant4.