This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Memory-Scalable GPU Spatial Hierarchy Construction
April 2011 (vol. 17 no. 4)
pp. 466-474
Qiming Hou, Tsinghua University and Microsoft Research Asia, Beijing
Xin Sun, Zhejiang University, HangZhou and Microsoft Research Asia. Beijing
Kun Zhou, Zhejiang University, HangZhou
Christian Lauterbach, University of North Carolina at Chapel Hill, Chapel Hill
Dinesh Manocha, University of North Carolina at Chapel Hill, Chapel Hill
Recent GPU algorithms for constructing spatial hierarchies have achieved promising performance for moderately complex models by using the breadth-first search (BFS) construction order. While being able to exploit the massive parallelism on the GPU, the BFS order also consumes excessive GPU memory, which becomes a serious issue for interactive applications involving very complex models with more than a few million triangles. In this paper, we propose to use the partial breadth-first search (PBFS) construction order to control memory consumption while maximizing performance. We apply the PBFS order to two hierarchy construction algorithms. The first algorithm is for kd-trees that automatically balances between the level of parallelism and intermediate memory usage. With PBFS, peak memory consumption during construction can be efficiently controlled without costly CPU-GPU data transfer. We also develop memory allocation strategies to effectively limit memory fragmentation. The resulting algorithm scales well with GPU memory and constructs kd-trees of models with millions of triangles at interactive rates on GPUs with 1 GB memory. Compared with existing algorithms, our algorithm is an order of magnitude more scalable for a given GPU memory bound. The second algorithm is for out-of-core bounding volume hierarchy (BVH) construction for very large scenes based on the PBFS construction order. At each iteration, all constructed nodes are dumped to the CPU memory, and the GPU memory is freed for the next iteration's use. In this way, the algorithm is able to build trees that are too large to be stored in the GPU memory. Experiments show that our algorithm can construct BVHs for scenes with up to 20 M triangles, several times larger than previous GPU algorithms.
Index Terms:
Memory bound, kd-tree, bounding volume hierarchy.
Citation:
Qiming Hou, Xin Sun, Kun Zhou, Christian Lauterbach, Dinesh Manocha, "Memory-Scalable GPU Spatial Hierarchy Construction," IEEE Transactions on Visualization and Computer Graphics, vol. 17, no. 4, pp. 466-474, April 2011, doi:10.1109/TVCG.2010.88
Usage of this product signifies your acceptance of the Terms of Use.