OSPRay - A CPU Ray Tracing Framework for Scientific Visualization

Scientific data is continually increasing in complexity, variety and size, making efficient visualization and specifically rendering an ongoing challenge. Traditional rasterization-based visualization approaches encounter performance and quality limitations, particularly in HPC environments without dedicated rendering hardware. In this paper, we present OSPRay, a turn-key CPU ray tracing framework oriented towards production-use scientific visualization which can utilize varying SIMD widths and multiple device backends found across diverse HPC resources. This framework provides a high-quality, efficient CPU-based solution for typical visualization workloads, which has already been integrated into several prevalent visualization packages. We show that this system delivers the performance, high-level API simplicity, and modular device support needed to provide a compelling new rendering framework for implementing efficient scientific visualization workflows.

[1]  Charles D. Hansen,et al.  GLuRay: Enhanced Ray Tracing in Existing Scientific Visualization Applications using OpenGL Interception , 2012, EGPGV@Eurographics.

[2]  Kelly P. Gaither,et al.  Ray tracing and volume rendering large molecular data on multi-core and many-core architectures , 2013, UltraVis@SC.

[3]  K Schulten,et al.  VMD: visual molecular dynamics. , 1996, Journal of molecular graphics.

[4]  Hans Hagen,et al.  IRIS: Illustrative Rendering for Integral Surfaces , 2010, IEEE Transactions on Visualization and Computer Graphics.

[5]  Gordon Stoll,et al.  Razor: An architecture for dynamic multiresolution ray tracing , 2011, TOGS.

[6]  Amy Henderson,et al.  The ParaView Guide: A Parallel Visualization Application , 2004 .

[7]  Robert L. Cook,et al.  The Reyes image rendering architecture , 1987, SIGGRAPH.

[8]  Wolfgang Straßer Schnelle Kurven- und Flächendarstellung auf grafischen Sichtgeräten , 1974 .

[9]  S. Boulos,et al.  RTSL: a Ray Tracing Shading Language , 2007, 2007 IEEE Symposium on Interactive Ray Tracing.

[10]  David K. McAllister,et al.  OptiX: a general purpose ray tracing engine , 2010, ACM Trans. Graph..

[11]  Valerio Pascucci,et al.  CPU ray tracing large particle data with balanced P-k-d trees , 2015, 2015 IEEE Scientific Visualization Conference (SciVis).

[12]  James P. Ahrens,et al.  A Study of Ray Tracing Large-scale Scientific Data in Two Widely Used Parallel Visualization Applications , 2012, EGPGV@Eurographics.

[13]  Charles Hansen,et al.  The Visualization Handbook , 2011 .

[14]  Christophe Hery,et al.  Art and technology at Pixar, from toy story to today , 2015, SIGGRAPH Asia Courses.

[15]  Ingo Wald A Flexible and Scalable Rendering Engine for Interactive 3D Graphics , 2002 .

[16]  Turner Whitted,et al.  An improved illumination model for shaded display , 1979, CACM.

[17]  Hank Childs,et al.  VisIt: An End-User Tool for Visualizing and Analyzing Very Large Data , 2011 .

[18]  Peter-Pike J. Sloan,et al.  Interactive ray tracing , 2005, SIGGRAPH Courses.

[19]  John E. Stone,et al.  An efficient library for parallel ray tracing and animation , 1998 .

[20]  James T. Kajiya,et al.  The rendering equation , 1998 .

[21]  Steven G. Parker,et al.  Enhancing interactive particle visualization with advanced shading models , 2006, APGV '06.

[22]  S.G. Parker,et al.  Design for Parallel Interactive Ray Tracing Systems , 2006, 2006 IEEE Symposium on Interactive Ray Tracing.

[23]  Charl P. Botha,et al.  Exposure Render: An Interactive Photo-Realistic Volume Rendering Framework , 2012, PloS one.

[24]  Greg Humphreys,et al.  Physically Based Rendering: From Theory to Implementation , 2004 .

[25]  Timo Ropinski,et al.  Voreen: A Rapid-Prototyping Environment for Ray-Casting-Based Volume Visualizations , 2009, IEEE Computer Graphics and Applications.

[26]  M. Pharr,et al.  ispc: A SPMD compiler for high-performance CPU programming , 2012, 2012 Innovative Parallel Computing (InPar).

[27]  William M. Hsu,et al.  Segmented ray casting for data parallel volume rendering , 1993, Proceedings of 1993 IEEE Parallel Rendering Symposium.

[28]  Ieee Transactions A Coherent Grid Traversal Approach to Visualizing Particle-Based Simulation Data , 2007 .

[29]  Markus Hadwiger,et al.  Real‐Time Ray‐Casting and Advanced Shading of Discrete Isosurfaces , 2005, Comput. Graph. Forum.

[30]  Ingo Wald,et al.  SIMD Parallel Ray Tracing of Homogeneous Polyhedral Grids , 2015, EGPGV@EuroVis.

[31]  Hank Childs Architectural challenges and solutions for petascale postprocessing , 2007 .

[32]  Carsten Dachsbacher,et al.  Anisotropic Ambient Volume Shading , 2016, IEEE Transactions on Visualization and Computer Graphics.

[33]  Markus Hadwiger,et al.  Real-time volume graphics , 2006, SIGGRAPH '04.

[34]  Sven Woop,et al.  A Ray Tracing Hardware Architecture for Dynamic Scenes , 2004 .

[35]  Hans Hagen,et al.  Full-resolution interactive CPU volume rendering with coherent BVH traversal , 2011, 2011 IEEE Pacific Visualization Symposium.

[36]  Ingo Wald,et al.  Embree: a kernel framework for efficient CPU ray tracing , 2014, ACM Trans. Graph..

[37]  Paul A. Navrátil,et al.  Memory-efficient, scalable ray tracing , 2010 .

[38]  Peter-Pike J. Sloan,et al.  Interactive ray tracing for volume visualization , 1999, IEEE Trans. Vis. Comput. Graph..

[39]  Charles D. Hansen,et al.  Distributed interactive ray tracing for large volume visualization , 2003, IEEE Symposium on Parallel and Large-Data Visualization and Graphics, 2003. PVG 2003..

[40]  Markus Hadwiger,et al.  A Survey of GPU-Based Large-Scale Volume Visualization , 2014, EuroVis.