DocumentCode :
23648
Title :
Exploiting Massive Parallelism for IndexingMulti-Dimensional Datasets on the GPU
Author :
Jinwoong Kim ; Won-Ki Jeong ; Beomseok Nam
Author_Institution :
Sch. of Electr. & Comput. Eng., Ulsan Nat. Inst. of Sci. & Technol., Ulsan, South Korea
Volume :
26
Issue :
8
fYear :
2015
fDate :
Aug. 1 2015
Firstpage :
2258
Lastpage :
2271
Abstract :
Inherently multi-dimensional n-ary indexing structures such as R-trees are not well suited for the GPU because of their irregular memory access patterns and recursive back-tracking function calls. It has been known that traversing hierarchical tree structures in an irregular manner makes it difficult to exploit parallelism and to maximize the utilization of GPU processing units. Moreover, the recursive tree search algorithms often fail with large indexes because of the GPU´s tiny runtime stack size. In this paper, we propose a novel parallel tree traversal algorithm-massively parallel restart scanning (MPRS) for multi-dimensional range queries that avoids recursion and irregular memory access. The proposed MPRS algorithm traverses hierarchical tree structures with mostly contiguous memory access patterns without recursion, which offers more chances to optimize the parallel SIMD algorithm. We implemented the proposed MPRS range query processing algorithm on n-ary bounding volume hierarchies including R-trees and evaluated its performance using real scientific datasets on an NVIDIA Tesla M2090 GPU. Our experiments show braided parallel SIMD friendly MPRS range query algorithm achieves at least 80 percent warp execution efficiency while task parallel tree traversal algorithm shows only 9-15 percent efficiency. Moreover, braided parallel MPRS algorithm accesses 7-20 times less amount of global memory than task parallel parent link algorithm by virtue of minimal warp divergence.
Keywords :
graphics processing units; indexing; parallel processing; program control structures; recursive estimation; tree searching; MPRS algorithm; MPRS range query algorithm; R-trees; UNITS; general purpose computing on graphics processing; massively parallel restart scanning; multidimensional dataset indexing; multidimensional n-ary indexing structures; multidimensional range queries; n-ary bounding volume hierarchies; parallel SIMD algorithm; range query processing algorithm; recursive tree search algorithms; Graphics processing units; Indexing; Instruction sets; Parallel processing; Query processing; Ray tracing; Vegetation; GPGPU; Parallel multi-dimensional indexing; multi-dimensional range query;
fLanguage :
English
Journal_Title :
Parallel and Distributed Systems, IEEE Transactions on
Publisher :
ieee
ISSN :
1045-9219
Type :
jour
DOI :
10.1109/TPDS.2014.2347041
Filename :
6876171
Link To Document :
بازگشت