In-memory grid files on graphics processors

Recently, graphics processing units, or GPUs, have become a viable alternative as commodity, parallel hardware for general-purpose computing, due to their massive data-parallelism, high memory bandwidth, and improved general-purpose programming interface. In this paper, we explore the use of GPU on the grid file, a traditional multidimensional access method. Considering the hardware characteristics of GPUs, we design a massively multi-threaded GPU-based grid file for static, memory-resident multidimensional point data. Moreover, we propose a hierarchical grid file variant to handle data skews efficiently. Our implementations on the NVIDIA G80 GTX graphics card are able to achieve two to eight times' higher performance than their CPU counterparts on a single PC.

[1]  Ronald Fagin,et al.  Extendible hashing—a fast access method for dynamic files , 1979, ACM Trans. Database Syst..

[2]  J. T. Robinson,et al.  The K-D-B-tree: a search structure for large multidimensional dynamic indexes , 1981, SIGMOD '81.

[3]  Markku Tamminen,et al.  The extendible cell method for closest point problems , 1982, BIT.

[4]  Mireille Régnier,et al.  Analysis of grid file algorithms , 1985, BIT.

[5]  Aris M. Ouksel The interpolation-based grid file , 1985, PODS '85.

[6]  Klaus H. Hinrichs,et al.  Implementation of the grid file: Design concepts and experience , 1985, BIT.

[7]  Hans-Peter Kriegel,et al.  Multidimensional Order Preserving Linear Hashing with Partial Expansions , 1986, ICDT.

[8]  Hans-Peter Kriegel,et al.  Multidimensional dynamic quantile hashing is very efficient for non-uniform record distributions , 1987, 1987 IEEE Third International Conference on Data Engineering.

[9]  Hans-Werner Six,et al.  Spatial searching in geometric databases , 1988, Proceedings. Fourth International Conference on Data Engineering.

[10]  Hans-Peter Kriegel,et al.  Multidimensional quantile hashing is very efficient for nonuniform distributions , 1989, Inf. Sci..

[11]  Hans-Peter Kriegel,et al.  The Buddy-Tree: An Efficient and Robust Access Method for Spatial Data Base Systems , 1990, VLDB.

[12]  Henk M. Blanken,et al.  The generalized grid file: description and performance aspects , 1990, [1990] Proceedings. Sixth International Conference on Data Engineering.

[13]  Jaideep Srivastava,et al.  Algorithms for loading parallel grid files , 1993, SIGMOD Conference.

[14]  H. Sagan Space-filling curves , 1994 .

[15]  Phu Dung Le,et al.  Novel parallel join algorithms for grid files , 1996, Proceedings of 3rd International Conference on High Performance Computing (HiPC).

[16]  Oliver Günther,et al.  Multidimensional access methods , 1998, CSUR.

[17]  Kenneth A. Ross,et al.  Cache Conscious Indexing for Decision-Support in Main Memory , 1999, VLDB.

[18]  H. Buchner The Grid File : An Adaptable , Symmetric Multikey File Structure , 2001 .

[19]  Divyakant Agrawal,et al.  Hardware acceleration for spatial selections and joins , 2003, SIGMOD '03.

[20]  Dinesh Manocha,et al.  Fast computation of database operations using graphics processors , 2004, SIGMOD '04.

[21]  Jon Louis Bentley,et al.  Quad trees a data structure for retrieval on composite keys , 1974, Acta Informatica.

[22]  Divyakant Agrawal,et al.  Hardware Acceleration in Commercial Databases: A Case Study of Spatial Operations , 2004, VLDB.

[23]  Jens H. Krüger,et al.  A Survey of General‐Purpose Computation on Graphics Hardware , 2007, Eurographics.

[24]  Dinesh Manocha,et al.  Fast and approximate stream mining of quantiles and frequencies using graphics processors , 2005, SIGMOD '05.

[25]  Dinesh Manocha,et al.  GPUTeraSort: high performance graphics co-processor sorting for large database management , 2006, SIGMOD Conference.

[26]  Bingsheng He,et al.  Relational joins on graphics processors , 2008, SIGMOD Conference.

[27]  Marios Hadjieleftheriou,et al.  R-Trees - A Dynamic Index Structure for Spatial Searching , 2008, ACM SIGSPATIAL International Workshop on Advances in Geographic Information Systems.