GPU-Based Large-Scale Scientific Visualization
TimeTuesday, 4 December 20182:15pm - 6pm
DescriptionRecent advances in image and volume acquisition as well as computational advances in simulation have led to an explosion of the amount of data that must be visualized and analyzed. Modern visualization techniques combine the parallel processing power of GPUs with out-of-core methods and data streaming to enable the interactive exploration of giga- and terabytes of image and volume data. A major enabler for interactivity is making both the computational and the visualization effort proportional to the amount of data that is actually visible on screen, decoupling it from the full data size. This leads to powerful display-aware multi-resolution techniques that enable the visualization of data of almost arbitrary size.
This course consists of two major parts: An introductory part that progresses from fundamentals to modern techniques, and a more advanced part that discusses details and the current state of the art of ray-guided volume rendering, display-aware processing, and novel data structures for efficient empty space skipping of large-scale multi-modal volumes.
You will learn how to develop efficient GPU data structures and large-scale visualizations, and how to implement out-of-core strategies and concepts such as virtual texturing, as well as how to use modern multi-resolution representations. These approaches reduce the GPU memory requirements of extremely large data to a working set size that fits into current GPUs. You will learn how to perform ray-casting of volume data of almost arbitrary size and how to render and process gigapixel images using scalable, display-aware techniques. We will describe custom virtual texturing architectures as well as recent hardware developments in this area. We will also describe novel deterministic and probabilistic empty space skipping methods for multi-modal volumes.
We will describe implementations using OpenGL as well as CUDA, exploiting parallelism on GPUs combined with additional asynchronous processing and data streaming on CPUs.