Speculative Progressive Raycasting for Memory Constrained Isosurface Visualization of Massive Volumes (2309.10212v1)
Abstract: New web technologies have enabled the deployment of powerful GPU-based computational pipelines that run entirely in the web browser, opening a new frontier for accessible scientific visualization applications. However, these new capabilities do not address the memory constraints of lightweight end-user devices encountered when attempting to visualize the massive data sets produced by today's simulations and data acquisition systems. In this paper, we propose a novel implicit isosurface rendering algorithm for interactive visualization of massive volumes within a small memory footprint. We achieve this by progressively traversing a wavefront of rays through the volume and decompressing blocks of the data on-demand to perform implicit ray-isosurface intersections. The progressively rendered surface is displayed after each pass to improve interactivity. Furthermore, to accelerate rendering and increase GPU utilization, we introduce speculative ray-block intersection into our algorithm, where additional blocks are traversed and intersected speculatively along rays as other rays terminate to exploit additional parallelism in the workload. Our entire pipeline is run in parallel on the GPU to leverage the parallel computing power that is available even on lightweight end-user devices. We compare our algorithm to the state of the art in low-overhead isosurface extraction and demonstrate that it achieves 1.7x-5.7x reductions in memory overhead and up to 8.4x reductions in data decompressed.
- NVIDIA: CUDA Marching Cubes Example. https://docs.nvidia.com/cuda/cuda-samples/index.html#marching-cubes-isosurfaces.
- J. Amanatides and A. Woo. A fast voxel traversal algorithm for ray tracing. In EG 1987-Technical Papers, 1987. doi: 10 . 2312/egtp . 19871000
- State-of-the-Art in Compressed GPU-Based Direct Volume Rendering: State-of-the-Art in Compressed GPU-Based DVR. Computer Graphics Forum, 2014. doi: 10 . 1111/cgf . 12280
- FoVolNet: Fast Volume Rendering using Foveated Deep Neural Networks. IEEE Transactions on Visualization and Computer Graphics, 2023. doi: 10 . 1109/TVCG . 2022 . 3209498
- State-of-the-Art in GPU-Based Large-Scale Volume Visualization. Computer Graphics Forum, 2015. doi: 10 . 1111/cgf . 12605
- Optimal isosurface extraction from irregular volume data. In Proceedings of 1996 Symposium on Volume Visualization. IEEE Press, 1996. doi: 10 . 1109/SVV . 1996 . 558040
- Efficient Isosurface Extraction Using Marching Tetrahedra and Histogram Pyramids on Multiple GPUs. In R. Wyrzykowski, J. Dongarra, K. Karczewski, and J. Waśniewski, eds., Parallel Processing and Applied Mathematics, 2012.
- Gigavoxels: Ray-guided streaming for efficient and detailed voxel rendering. In Proceedings of the 2009 Symposium on Interactive 3D Graphics and Games. ACM, 2009. doi: 10 . 1145/1507149 . 1507152
- High-speed Marching Cubes using HistoPyramids. Computer Graphics Forum, 2008. doi: 10 . 1111/j . 1467-8659 . 2008 . 01182 . x
- GraphWaGu: GPU Powered Large Scale Graph Layout Computation and Rendering for the Web. 2022.
- Interactive 3D Visualization for Theoretical Virtual Observatories. Monthly Notices of the Royal Astronomical Society, 2018. doi: 10 . 1093/mnras/sty855
- K. Engel. CERA-TVR: A framework for interactive high-quality teravoxel volume visualization on standard PCs. In 2011 IEEE Symposium on Large Data Analysis and Visualization. IEEE, 2011. doi: 10 . 1109/LDAV . 2011 . 6092330
- Real-Time Volume Graphics. A K Peters, Ltd, Wellesley, Mass, 2006.
- An analysis of scalable GPU-based ray-guided volume rendering. In 2013 IEEE Symposium on Large-Scale Data Analysis and Visualization, 2013. doi: 10 . 1109/LDAV . 2013 . 6675157
- High-Quality Rendering of Compressed Volume Data Formats. EUROVIS 2005: Eurographics / IEEE VGTC Symposium on Visualization, 2005. doi: 10 . 2312/VISSYM/EUROVIS05/077-084
- N. Fout and K.-L. Ma. Transform Coding for Hardware-accelerated Volume Rendering. IEEE Transactions on Visualization and Computer Graphics, 2007. doi: 10 . 1109/TVCG . 2007 . 70516
- COVRA: A compression-domain output-sensitive volume rendering architecture based on a sparse representation of voxel blocks. Computer Graphics Forum, 2012. doi: 10 . 1111/j . 1467-8659 . 2012 . 03124 . x
- K. Group. WebGL: Low-level 3D Graphics API Based on OpenGL ES. https://www.khronos.org/api/webgl, 2022. [Online; accessed 11-March-2022].
- SparseLeap: Efficient Empty Space Skipping for Large-Scale Volume Rendering. IEEE Transactions on Visualization and Computer Graphics, 2018. doi: 10 . 1109/TVCG . 2017 . 2744238
- Interactive Volume Exploration of Petascale Microscopy Data Streams Using a Visualization-Driven Virtual Memory Approach. IEEE Transactions on Visualization and Computer Graphics, 2012. doi: 10 . 1109/TVCG . 2012 . 240
- Real-Time Ray-Casting and Advanced Shading of Discrete Isosurfaces. Computer Graphics Forum, 2005. doi: 10 . 1111/j . 1467-8659 . 2005 . 00855 . x
- WebDNN: Fastest DNN execution framework on web browser. In Proceedings of the 25th ACM International Conference on Multimedia, MM ’17, 2017. doi: 10 . 1145/3123266 . 3129394
- A Study of the Trade-off Between Reducing Precision and Reducing Resolution for Data Analysis and Visualization. IEEE Transactions on Visualization and Computer Graphics, 2019. doi: 10 . 1109/TVCG . 2018 . 2864853
- Efficient and Flexible Hierarchical Data Layouts for a Unified Encoding of Scalar Field Precision and Resolution. IEEE Transactions on Visualization and Computer Graphics, 2021. doi: 10 . 1109/TVCG . 2020 . 3030381
- A web interface for 3D visualization and interactive segmentation of medical images. In Proceedings of the 17th International Conference on 3D Web Technology, 2012. doi: 10 . 1145/2338714 . 2338722
- ParaViewWeb: A Web Framework for 3D Visualization and Data Processing. International Journal of Computer Information Systems and Industrial Management Applications, 2011.
- Efficient Direct Isosurface Rasterization of Scalar Volumes. Computer Graphics Forum, 2022. doi: 10 . 1111/cgf . 14670
- P4: Portable Parallel Processing Pipelines for Interactive Information Visualization. IEEE Transactions on Visualization and Computer Graphics, 2018. doi: 10 . 1109/TVCG . 2018 . 2871139
- P5: Portable Progressive Parallel Processing Pipelines for Interactive Data Analysis and Visualization. IEEE Transactions on Visualization and Computer Graphics, 2019. doi: 10 . 1109/TVCG . 2019 . 2934537
- P. Lindstrom. Fixed-Rate Compressed Floating-Point Arrays. IEEE Transactions on Visualization and Computer Graphics, 2014. doi: 10 . 1109/TVCG . 2014 . 2346458
- Parallel Marching Blocks: A Practical Isosurfacing Algorithm for Large Data on Many-Core Architectures. Computer Graphics Forum, 2016. doi: 10 . 1111/cgf . 12897
- Y. Livnat and C. Hansen. View dependent isosurface extraction. In Proceedings Visualization ’98. IEEE Computer Society Press, 1998. doi: 10 . 1109/VISUAL . 1998 . 745300
- A near optimal isosurface extraction algorithm using the span space. IEEE Transactions on Visualization and Computer Graphics, 1996. doi: 10 . 1109/2945 . 489388
- Marching Cubes: A High Resolution 3D Surface Construction Algorithm. SIGGRAPH Computer Graphics, 1987. doi: 10 . 1145/37402 . 37422
- Fast and Accurate Ray-Voxel Intersection Techniques for Iso-Surface Ray Tracing. In 9th International Fall Workshop on Vision, Modeling, and Visualization, 2004.
- Load-Balanced Isosurfacing on Multi-GPU Clusters. In Eurographics Symposium on Parallel Graphics and Visualization, 2010. doi: 10 . 2312/EGPGV/EGPGV10/091-100
- A GPU-Supported Lossless Compression Scheme for Rendering Time-Varying Volume Data. IEEE/ EG Symposium on Volume Graphics, 2010. doi: 10 . 2312/VG/VG10/109-116
- M. M. Mobeen and L. Feng. High-Performance Volume Rendering on the Ubiquitous WebGL Platform. In 2012 IEEE 14th International Conference on High Performance Computing and Communication & 2012 IEEE 9th International Conference on Embedded Software and Systems, 2012. doi: 10 . 1109/HPCC . 2012 . 58
- Interactive Ray Tracing for Isosurface Rendering. In Proceedings Visualization ’98, 1998. doi: 10 . 1109/VISUAL . 1998 . 745713
- F. Perez and B. E. Granger. IPython: A System for Interactive Scientific Computing. Computing in Science & Engineering, 2007. doi: 10 . 1109/MCSE . 2007 . 53
- Scientific Visualization as a Microservice. IEEE Transactions on Visualization and Computer Graphics, 2018. doi: 10 . 1109/TVCG . 2018 . 2879672
- Scalable Web-Embedded Volume Rendering. In IEEE 7th Symposium on Large Data Analysis and Visualization. IEEE, 2017. doi: 10 . 1109/LDAV . 2017 . 8231850
- Efficient and Quality Contouring Algorithms on the GPU. Computer Graphics Forum, 2010. doi: 10 . 1111/j . 1467-8659 . 2010 . 01825 . x
- J. Schneider and R. Westermann. Compression domain volume rendering. In IEEE Transactions on Ultrasonics, Ferroelectrics and Frequency Control. IEEE, Seattle, WA, USA, 2003. doi: 10 . 1109/VISUAL . 2003 . 1250385
- Flying edges: A high-performance scalable isocontouring algorithm. In IEEE 5th Symposium on Large Data Analysis and Visualization. IEEE, 2015. doi: 10 . 1109/LDAV . 2015 . 7348069
- M. Schütz. Potree: Rendering Large Point Clouds in Web Browsers. PhD thesis, Vienna Univ. of Technol., Vienna, Austria, 2016.
- Software Rasterization of 2 Billion Points in Real Time. Proceedings of the ACM on Computer Graphics and Interactive Techniques, 2022. doi: 10 . 1145/3543863
- BrainBrowser: Distributed, web-based neurological data visualization. Frontiers in Neuroinformatics, 2015. doi: 10 . 3389/fninf . 2014 . 00089
- A Simple and Flexible Volume Rendering Framework for Graphics-Hardware-based Raycasting. In Volume Graphics. IEEE, 2005. doi: 10 . 2312/VG/VG05/187-195
- Interactive Multiscale Tensor Reconstruction for Multiresolution Volume Visualization. IEEE Transactions on Visualization and Computer Graphics, 2011. doi: 10 . 1109/TVCG . 2011 . 214
- W. Usher and V. Pascucci. Interactive Visualization of Terascale Data in the Browser: Fact or Fiction? In IEEE 10th Symposium on Large Data Analysis and Visualization, 2020. doi: 10 . 1109/LDAV51489 . 2020 . 00010
- Faster isosurface ray tracing using implicit KD-trees. IEEE Transactions on Visualization and Computer Graphics, 2005. doi: 10 . 1109/TVCG . 2005 . 79
- Application-Driven Compression for Visualizing Large-Scale Time-Varying Data. IEEE Computer Graphics and Applications, 2010. doi: 10 . 1109/MCG . 2010 . 3
- WebAssembly. https://webassembly.org/.
- WebGPU. https://gpuweb.github.io/gpuweb/.
- Volumetric Isosurface Rendering with Deep Learning-Based Super-Resolution. IEEE Transactions on Visualization and Computer Graphics, 2021. doi: 10 . 1109/TVCG . 2019 . 2956697