Interactive Rendering of Large-Scale Volumes on Multi-Core CPUs

Feng Wang, Ingo Wald, Chris R. Johnson
In IEEE Symposium on Large Data Analysis and Visualization, 2019
Fig. 1: Screenshots from our high-fidelity interactive volume visualization renderer. Top left: volume rendering of a 5123 magnetic reconnection dataset [15]. Top middle: volume rendering of the 2048 x 2048 x 1920 Richtmyer-Meshkov instability (RMI) [6]. Top right: visualization of a 2048 x 2048 x 2612 cardiac volume [22]. Bottom: visualization of the 10240 x 7680 x 1356 DNS dataset [31]. All images are rendered with surface shading.

Abstract

Recent advances in large-scale simulations have resulted in volume data of increasing size that stress the capabilities of off-the-shelf visualization tools. Users suffer from long data loading times because large data must be read from disk into memory prior to rendering the first frame. In this work, we present a volume renderer that enables high-fidelity interactive visualization of large volumes on multi-core CPU architectures. Compared to existing CPU-based visualization frameworks, which take minutes or hours for data loading, our renderer allows users to get a data overview in seconds. Using a hierarchical representation of raw volumes and ray-guided streaming, we reduce the data loading time dramatically and improve the user’s interactivity experience. We also examine system design choices with respect to performance and scalability. Specifically, we evaluate the hierarchy generation time, which has been ignored in most prior work, but which can become a significant bottleneck as data scales. Finally, we create a module on top of the OSPRay raytracing framework that is ready to be integrated into general-purpose visualization frameworks such as Paraview.

Supplemental Video

BibTeX

@inproceedings{Wang2019InteractiveRO,
journal = {IEEE Symposium on LDAV,
title = {{ Interactive Rendering of Large-Scale Volumes on Multi-Core CPUs}},
author = {Feng Wang, Ingo Wald, Chris R. Johnson},
year = {2019},
publisher = {IEEE Symposium on Large Data Analysis and Visualization}