Engineering Papers⌕ Search

Engineering topics

Granroth, Garrett

Publications and source records attributed to Granroth, Garrett.

Using Numba for GPU acceleration of Neutron Beamline Digital Twins

Digital twins of neutron instruments using Monte Carlo ray tracing have proven to be useful in neutron data analysis and verifying instrument and sample designs. However, these simulations can become quite complex and computationally demanding with tens of billions of neutrons. In this paper, we present a GPU accelerated version of MCViNE using Python and Numba to balance user extensibility with performance. Numba is an open-source just-in-time (JIT) compiler for Python using LLVM to generate efficient machine code for CPUs and GPUs with NVIDIA CUDA. The JIT nature of Numba allowed complex instrument kernels to be generated easily. Initial simulations have shown a speedup between 200-1000x over the original CPU implementation. The performance gain with Numba enables more sophisticated data analysis and impacts neutron scattering science and instrument design.

Kendrick, Coleman↗

SNAP diffraction dataset for 2023 SMC data challenge

The data provided this challenge is ice under high pressure measured using the Spallation Neutrons and Pressure Diffractometer (SNAP) at the Spallation Neutron Source (SNS) at Oak Ridge National Laboratory. The data is stored in a hdf5 file following the NeXus standard and can be read with tools built for either. While the NeXus format is self-describing, there is benefit to explaining some details. The data is stored in a single NXdata entry within a single NXentry. The NXdata has several fields denoting the 3-dimensional data (signal), the axes (D0 is the Qx axis, D1 is the Qy axis, and D2 is the Qz axis), and fields for the uncertainties and masking information. The data can be quickly viewed using the LoadMD algorithm and slice viewer in the Mantid workbench https://www.mantidproject.org.

36 MATERIALS SCIENCE↗