A GPU implementation of EGSnrc's Monte Carlo photon transport for imaging applications.
EGSnrc is a well-known Monte Carlo simulation package for coupled electron-photon transport that is widely used in medical physics application. This paper proposes a parallel implementation of the photon transport mechanism of EGSnrc for graphics processing units (GPUs) using NVIDIA's Compute Unified Device Architecture (CUDA). The implementation is specifically designed for imaging applications in the diagnostic energy range and does not model electrons. No approximations or simplifications of the original EGSnrc code were made other than using single floating-point precision instead of double precision and a different random number generator. To avoid performance penalties due to the random nature of the Monte Carlo method, the simulation was divided into smaller steps that could easily be performed in a parallel fashion suitable for GPUs. Speedups of 20 to 40 times for 64(3) to 256(3) voxels were observed while the accuracy of the simulation was preserved. A detailed analysis of the differences between the CUDA simulation and the original EGSnrc was conducted. The two simulations were found to produce equivalent results for scattered photons and an overall systematic deviation of less than 0.08% was observed for primary photons.
Department of Physics and Astronomy, University of Manitoba, Winnipeg, Manitoba R3T2N2, Canada. jonas@lippuner.ca
Jonas
J
Lippuner
Idris A
IA
Elbakri
D003196:Computer Graphics / Q000295:instrumentation*; D003198:Computer Simulation; D003952:Diagnostic Imaging / Q000295:instrumentation* / Q000379:methods; D004583:Electrons; D009010:Monte Carlo Method; D019047:Phantoms, Imaging; D017785:Photons / Q000627:therapeutic use*