Efficient rendering of large 3-D and 4-D scalar fields
Files
Publication or External Link
Date
Authors
Advisor
Citation
DRUM DOI
Abstract
Rendering volumetric data, as a compute/communication intensive and highly parallel application,
represents the characteristics of future workloads for desktop computers.
Interactively rendering volumetric data has been a challenging problem due to its
high computational and communication requirements.
With the consistent trend toward high resolution data, it has remained
a difficult problem despite the continuous increase in processing power,
because of the increasing performance gap between computation and communication.
On the other hand, the new multi-core architecture trend in computational units in PC, which
can be characterized by parallelism and heterogeneity, provides both
opportunities and challenges. While the new on-chip parallel architectures
offer opportunities for extremely high performance,
widespread use of those parallel processors requires extensive changes in previous
algorithms to take advantage of the new architectures.
In this dissertation, we develop new methods and techniques to support interactive rendering of large volumetric data.
In particular, we present a novel method to layout data on disk for efficiently
performing an out-of-core axis-aligned slicing of large multidimensional scalar
fields. We also present a new method to efficiently build an out-of-core indexing structure for
n-dimensional volumetric data. Then, we describe a streaming model for efficiently implementing
volume ray casting on a heterogeneous compute resource environment.
We describe how we implement the model on SONY/TOSHIBA/IBM Cell Broadband Engine
and on NVIDIA CUDA architecture.
Our results show that our out-of-core techniques significantly reduce
the communication bandwidth requirements and that our streaming model very effectively makes use of
the strengths of those heterogeneous parallel compute resource environment for volume rendering.
In all cases, we achieve scalability and load balancing, while hiding memory latency.