• 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