Spatial Partitioning Strategies for Memory-Efficient Ray Tracing of Particles
Patrick Gralka, Ingo Wald, Sergej Geringer, Guido Reina, Thomas Ertl
View presentation: 2020-10-25T19:00:00Z GMT-0600 Change your timezone on the schedule page
3D particle data is relevant for a wide range of scientific domains, from molecular dynamics to astrophysics. Simulations in these domains can produce datasets containing millions or billions of particles and rendering needs to be in high quality and interactive to support the scientists in exploring and understanding the structure of their data. One general baseline approach is to represent particles as spheres and employ ray tracing as a rendering technique. However, ray tracing requires the data to be organized in acceleration data structures like bounding volume hierarchies (BVH) to achieve interactive frame rates. Modern GPUs provide hardware acceleration for traversing such data structures but are more limited in memory than CPUs. In this paper, we evaluate different acceleration data structures for sphere-based datasets, including particle kD trees, with respect to their scalability regarding both memory size and speed, and we analyze how these data structures can benefit from hardware acceleration. We show that a bricking of data results in the most effective BVH, both fast to traverse utilizing hardware acceleration and with a reasonably small memory footprint. Additionally, we present a hybrid acceleration data structure that has negligible memory overhead and still ensures reasonable traversal speed. Based on our results, visualization tools and APIs for the ray tracing can provide overall better performance by adapting to the needs of particle-centric application scenarios.