Explicit Cache Management for Volume Ray-Casting on Parallel Architectures

Daniel Jönsson Linköping University Per Ganestam Michael Doggett Anders Ynnerman Linköping University Timo Ropinski Ulm University

Eurographics Symposium on Parallel Graphics and Visualization, 2012

Abstract

A major challenge when designing general purpose graphics hardware is to allow efficient access to texture data. Although different rendering paradigms vary with respect to their data access patterns, there is no flexibility when it comes to data caching provided by the graphics architecture. In this paper we focus on volume ray-casting, and show the benefits of algorithm-aware data caching. Our Marching Caches method exploits inter-ray coherence and thus utilizes the memory layout of the highly parallel processors by allowing them to share data through a cache which marches along with the ray front. By exploiting Marching Caches we can apply higher-order reconstruction and enhancement filters to generate more accurate and enriched renderings with an improved rendering performance. We have tested our Marching Caches with seven different filters, e. g., Catmul-Rom, Bspline, ambient occlusion projection, and could show that a speed up of four times can be achieved compared to using the caching implicitly provided by the graphics hardware, and that the memory bandwidth to global memory can be reduced by orders of magnitude. Throughout the paper, we will introduce the Marching Cache concept, provide implementation details and discuss the performance and memory bandwidth impact when using different filters.

Bibtex

content_copy
@article{jonsson2012explicit,
	title={Explicit Cache Management for Volume Ray-Casting on Parallel Architectures},
	author={J{\"o}nsson, Daniel and Ganestam, Per and Doggett, Michael and Ynnerman, Anders and Ropinski, Timo},
	year={2012},
	pages={31--40},
	doi={10.2312/EGPGV/EGPGV12/031-040}
}