Title: A Multiresolution Volume Rendering Framework for LargeScale TimeVarying Data Visualization
1A Multiresolution Volume Rendering Framework for
Large-Scale Time-Varying Data Visualization
- Chaoli Wang1, Jinzhu Gao2,
- Liya Li1, Han-Wei Shen1
- 1The Ohio State University
- 2Oak Ridge National Laboratory
2Introduction
- Large-scale numerical simulation
- Richtmyer-Meshkov Instability (RMI) data _at_ LLNL
- 2,048 2,048 1,920 grid
- 960 (8 8 15) nodes of the IBM-SP system
- 7.5 GB per time step, output 274 time steps
- Goal
- Data exploration
- Quick overview, detail on demand
- Approach
- Multiresolution data representation
- Error-controlled parallel rendering
3Challenge
- Compact hierarchical data representation
- Allow specifying different spatial and temporal
resolutions for rendering - Long chains of parent-child node dependency
- Data dependency among processors
- Balance the workload for parallel rendering
4Algorithm Overview
The algorithm flow for large-scale time-varying
data visualization
5Wavelet-Based Time Space Partitioning Tree
- The WTSP tree
- Space-time hierarchical data structure to
organize time-varying data - An octree (spatial hierarchy) of binary trees
(temporal hierarchy) - Originate from the TSP tree Shen et al. 1999
- Borrow the idea of the wavelet tree Guthe et al.
2002
6Wavelet-Based Time Space Partitioning Tree
- WTSP tree construction
- Two-stage block-wise wavelet transform and
compression process - Build a spatial hierarchy in the form of an
octree for each time step - Merge the same octree nodes across time into
binary time trees
7Hierarchical Spatial and Temporal Error Metric
se(T) Si0..7MSE(T, Ti) MAXse(Ti)i0..7
- Based on MSE calculation
- Compare the error of each block with its children
te(T) MSE(T, Tl) MSE(T, Tr) MAXte(Tl),
te(Tr)
8Storing Reconstructed Data for Space-Time Tradeoff
- Alleviate data dependency
- EVERY-K scheme
ho 6, ht 4 ko 2, kt 2
9WTSP Tree Partition and Data Distribution
- Eliminate dependency among processors
- Distribution units
ho 6, ht 4 ko 2, kt 2
10WTSP Tree Partition and Data Distribution
- Space-filling curve traversal
- Neighboring blocks of similar spatial-temporal
resolution should be evenly distributed to
different processors - Space-filling curve preserves locality, always
visits neighboring blocks first - Traverse the volume to create a one-dimensional
ordering of the blocks
11WTSP Tree Partition and Data Distribution
- Error-guided bucketization
- Data blocks with similar spatial and temporal
errors should be distributed to different
processors - Create buckets with different spatial-temporal
error intervals
12WTSP Tree Partition and Data Distribution
- Error-guided bucketization
- Bucketize the distribution units when performing
hierarchical space-filling curve traversals - Distribute units in each bucket in a round-robin
fashion
13Run-Time Rendering
- WTSP tree traversal
- User specifies time step and tolerances of both
spatial and temporal errors - Traverse octree skeleton and the binary time
trees for each encountered octree node - A sequence of data blocks is identified in
back-to-front order for rendering
14Run-Time Rendering
- Data block reconstruction
- Get low-pass filtered subblock from its parent
node - Decode high-pass filtered wavelet coefficients
- Perform inverse 3D wavelet transform
- Reduce reconstruction time from O(c1ho c2hoht)
to O(c1ko c2kokt), where - c1 time to perform an inverse 3D wavelet
transform - c2 time to perform an inverse 1D wavelet
transform - ho the height of the octree
- ht the height of the time tree
- ko of levels in an octree node group
- kt of levels in a time tree node group
15Run-Time Rendering
- Parallel Volume Rendering
- Each processor renders the data blocks identified
by the WTSP tree traversal and assigned to it
during the data distribution stage - Cache reconstructed data for subsequent frames
- Screen tiles partition
- Image composition
16Results
- Data sets and wavelet transforms
17Results
- Testing environment
- A PC cluster consisting of 32 2.4 GHz Pentium 4
processors connected by Dolphin networks - Performance
- Software raycasting
- 96.53 parallel CPU utilization, or a speedup of
30.89 times for 32 processors
18Results
- Data distribution with EVERY-K scheme (ko 2, kt
2)
RMI data set
SPOT data set
19Results
RMI data set
SPOT data set
20Results
- The timing result with 5122 output image
resolution
21Results
- Rendering of RMI data set at selected time steps
1st 536
8th 743
15th 1,317
32th 1,625
22Results
- Rendering of SPOT data set at selected time steps
1st 2,558
12th 2,743
21th 2,392
30th 2,461
23Results
- Multiresolution volume rendering
RMI data set, 11th time step
SPOT data set, 5th time step
24Conclusion Future Work
- Multiresolution volume rendering framework for
large-scale time-varying data visualization - Hierarchical WTSP tree data representation
- Data partition and distribution scheme
- Parallel volume rendering algorithm
- Future work
- Utilize graphics hardware for wavelet
reconstruction and rendering speedup - Incorporate optimal feature-preserving wavelet
transforms for feature detection
25Acknowledgements
- Funding agencies
- NSF ITR grant ACI-0325934
- NSF Career Award CCF-0346883
- DOE Early Career Principal Investigator Award
DE-FG02-03ER25572 - Data sets
- Mark Duchaineau _at_ LLNL
- John Clyne _at_ NCAR
- Testing environment
- Jack Dongarra and Clay England _at_ UTK
- Don Stredney and Dennis Sessanna _at_ OSC