华南理工大学学报(自然科学版) ›› 2013, Vol. 41 ›› Issue (3): 22-28.doi: 10.3969/j.issn.1000-565X.2013.03.004

• 计算机科学与技术 • 上一篇    下一篇

图形处理器上内存数据库索引T- 树的研究

刘勇 奚建清 黄东平 贾连印 苗德成   

  1. 华南理工大学 计算机科学与工程学院,广东 广州 510006
  • 收稿日期:2012-08-15 修回日期:2013-01-02 出版日期:2013-03-25 发布日期:2013-02-01
  • 通信作者: 刘勇(1973-),男,博士生,高级工程师,主要从事数据库与高性能并行计算研究. E-mail:l.yong07@mail.scut.edu.cn
  • 作者简介:刘勇(1973-),男,博士生,高级工程师,主要从事数据库与高性能并行计算研究.
  • 基金资助:

    广东省科技计划项目( 2012A010701011, 2011A010801008) ; 云南省教育厅重点项目( 2012Z008)

T-tree: Main Memory Database Indexing on Graphics Processing Unit

Liu Yong Xi Jian-qing Huang Dong-ping Jia Lian-yin Miao De-cheng   

  1. School of Computer Science and Engineering,South China University of Technology,Guangzhou 510006,Guangdong,China
  • Received:2012-08-15 Revised:2013-01-02 Online:2013-03-25 Published:2013-02-01
  • Contact: 刘勇(1973-),男,博士生,高级工程师,主要从事数据库与高性能并行计算研究. E-mail:l.yong07@mail.scut.edu.cn
  • About author:刘勇(1973-),男,博士生,高级工程师,主要从事数据库与高性能并行计算研究.
  • Supported by:

    广东省科技计划项目( 2012A010701011, 2011A010801008) ; 云南省教育厅重点项目( 2012Z008)

摘要: 为进一步提高内存数据库索引结构T-树的操作性能,提出一种基于图形处理器的T-树无锁并行计算方案.该方案通过分析平衡树结构的父子节点间的关系,在图形处理器平台上实现使用m 个线程并行创建具有m 个节点的T- 树索引,从而以最大并行度的方式构建T- 树.为验证方案的正确性,提出以堆栈的方式在图形处理器上遍历T- 树的算法,对各平台上构建T-树的方案进行性能分析,并通过页锁定内存的方式提高CPU 和GPU 间的数据传输速率. 通过对多个处理器平台上的实验结果的对比发现,提出的方案在并行构建T-树和T-树的批量节点插入上相比于传统CPU 平台方案分别获得12 倍和8 倍以上的加速比.

关键词: 图形处理器, T- 树, 内存数据库, 索引结构, 并行构建, 批量节点插入

Abstract:

In order to improve the operation performance of T-tree,a main memory database indexing,a lock-freeparallel computing scheme for T-tree on the graphics processing unit ( GPU) is proposed.By analyzing the parentchildrelationship of balanced tree structure,a T-tree with m nodes is constructed with n separate threads in a parallelmode on GPG platform.Thus,a T-tree with the maximum parallelism degree is successfully constructed.Then,in orderto verify the correctness of the proposed scheme,a T-tree traversal algorithm with stacking on GPU platform isproposed.Moreover,different schemes of constructing T-tree on different platforms are analyzed and the data transmissionbetween CPU and GPU is optimized by means of memory pinning.The result of experiments on different platformsshow that,as compared with the conventional CPU-based schemes,the proposed scheme obtains about 12 timesbatch creating and 8 times batch inserting of T-tree.

Key words: graphic processing unit, T-tree, main memory database, index structure, parallel creation, batch nodeinsertion