Explicit Cache Management for Volume Ray-Casting on Parallel Architectures

Explicit Cache Management for Volume Ray-Casting on Parallel Architectures
复制标题

并行架构上体积射线投射的显式缓存管理

DOI:
10.2312/egpgv/egpgv12/031-040
复制
发表时间:
2012
期刊:
--
影响因子:
--
通讯作者:
T. Ropinski
T. Ropinski
中科院分区:
--
文献类型:
--
作者:
D. Jönsson;P. Ganestam;M. Doggett;A. Ynnerman;T. Ropinski

文献摘要

被引文献

相似文献

设计通用图形硬件时的一个主要挑战是允许有效地访问纹理数据。尽管不同的渲染范例在其数据访问模式方面有所不同,但是在涉及到由图形体系结构提供的数据缓存时没有灵活性。在本文中,我们专注于体积光线投射,并显示算法感知的数据缓存的好处。我们的Marching Caches方法利用了光线间的一致性,从而利用了高度并行处理器的内存布局,允许它们通过与光线前沿沿着行进的缓存共享数据。通过利用Marching Caches,我们可以应用更高阶的重建和增强滤波器来生成更准确和丰富的渲染,并提高渲染性能。我们已经用七种不同的过滤器测试了我们的Marching Caches。例如,在一个实施例中,Catmul-Rom、B样条、环境遮挡投影,并且可以表明,与使用图形硬件隐式提供的缓存相比,可以实现四倍的速度提升,并且全局内存的内存带宽可以减少几个数量级。在本文中,我们将介绍Marching Cache概念,提供实现细节,并讨论使用不同过滤器时对性能和内存带宽的影响。
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.