Accelerating IceCube's Photon Propagation Code with CUDA

19 May 2021, 16:50
30m
Long talk Offline Computing Weds PM Plenaries

Speaker

Benedikt Riedel (University of Wisconsin-Madison)

Description

The IceCube Neutrino Observatory is a cubic kilometer neutrino detector located at the geographic South Pole designed to detect high-energy astrophysical neutrinos. To thoroughly understand the detected neutrinos and their properties, the detector response to signal and background has to be modeled using Monte Carlo techniques. An integral part of these studies are the optical properties of the ice the observatory is built into. The simulated propagation of individual photons from particles produced by neutrino interactions in the ice can be greatly accelerated using graphics processing units (GPUs). In this paper, we (a collaboration between NVIDIA and IceCube) reduced the propagation time per photon by a factor of 3. We achieved this by porting the OpenCL parts of the program to CUDA and optimizing the performance. This involved careful analysis and multiple changes to the algorithm. We also ported the code to NVIDIA OptiX to handle the collision detection. The hand-tuned CUDA algorithm turned out to be faster than OptiX. It exploits detector geometry and only a small fraction of photons ever travel close to one of the detectors.

Primary authors

Benedikt Riedel (University of Wisconsin-Madison) Hendrik Schwanekamp (NVIDIA Corp) Ramona Hohl (NVIDIA Corp)

Co-authors

Tom Gibbs (NVIDIA Corp) Dmitry Chirkin (UW-Madison) Alexander Harnisch (Michigan State University) Peter Messmer (NVIDIA Corp.) Jakob van Santen (DESY-Zeuthen) David Schultz (UW-Madison) Martin Rongen (ohannes Gutenberg-Universitaet Mainz) Alexander Olivas (UMD-College Park) Vishal Mehta (NVIDIA Corp.)

Presentation materials