skip to main content
research-article

High-throughput transaction executions on graphics processors

Published:01 February 2011Publication History
Skip Abstract Section

Abstract

OLTP (On-Line Transaction Processing) is an important business system sector in various traditional and emerging online services. Due to the increasing number of users, OLTP systems require high throughput for executing tens of thousands of transactions in a short time period. Encouraged by the recent success of GPGPU (General-Purpose computation on Graphics Processors), we propose GPUTx, an OLTP engine performing high-throughput transaction executions on the GPU for in-memory databases. Compared with existing GPGPU studies usually optimizing a single task, transaction executions require handling many small tasks concurrently. Specifically, we propose the bulk execution model to group multiple transactions into a bulk and to execute the bulk on the GPU as a single task. The transactions within the bulk are executed concurrently on the GPU. We study three basic execution strategies (one with locks and the other two lock-free), and optimize them with the GPU features including the hardware support of atomic operations, the massive thread parallelism and the SPMD (Single Program Multiple Data) execution. We evaluate GPUTx on a recent NVIDIA GPU in comparison with its counterpart on a quad-core CPU. Our experimental results show that optimizations on GPUTx significantly improve the throughput, and the optimized GPUTx achieves 4-10 times higher throughput than its CPU-based counterpart on public transaction processing benchmarks.

References

  1. N. Bandi, C. Sun, D. Agrawal, and A. E. Abbadi. Hardware acceleration in commercial databases: a case study of spatial operations. In VLDB, pages 1021--1032, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. W. Fang, B. He, and Q. Luo. Database compression on graphics processors. Proc. VLDB Endow., 3:670--680, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. A. Fekete, D. Liarokapis, E. O'Neil, P. O'Neil, and D. Shasha. Making snapshot isolation serializable. ACM Trans. Database Syst., 30, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. N. K. Govindaraju, J. Gray, R. Kumar, and D. Manocha. Gputerasort: High performance graphics coprocessor sorting for large database management. In SIGMOD, pages 325--336, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. N. K. Govindaraju, B. Lloyd, W. Wang, M. Lin, and D. Manocha. Fast computation of database operations using graphics processors. In SIGMOD, pages 215--226, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. S. Harizopoulos, D. J. Abadi, S. R. Madden, and M. Stonebraker. Oltp through the looking glass, and what we found there. In SIGMOD, pages 981--992, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. S. Harizopoulos and A. Ailamaki. A case for staged database systems. In CIDR, 2003.Google ScholarGoogle Scholar
  8. B. He, M. Lu, K. Yang, R. Fang, N. K. Govindaraju, Q. Luo, and P. V. Sander. Relational query coprocessing on graphics processors. ACM Trans. Database Syst., 34(4):1--39, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. B. He and Q. Luo. Cache-oblivious databases: Limitations and opportunities. ACM Trans. Database Syst., 33:8:1--8:42, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. B. He, K. Yang, R. Fang, M. Lu, N. Govindaraju, Q. Luo, and P. Sander. Relational joins on graphics processors. In SIGMOD, pages 511--524, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. E. Jones, D. Abadi, and S. Madden. Low overhead concurrency control for partitioned main memory databases. In SIGMOD, pages 603--614, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. C. Kim, J. Chhugani, N. Satish, E. Sedlar, A. Nguyen, T. Kaldewey, V. Lee, S. Brandt, and P. Dubey. Fast: Fast architecture sensitive tree search on modern cpus and gpus. In SIGMOD, pages 339--350, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Nokia. Network Database Benchmark. http://hoslab.cs.helsinki.fi/homepages/ndbbenchmark/.Google ScholarGoogle Scholar
  14. NVIDIA CUDA. http://developer.nvidia.com/object/cuda.html.Google ScholarGoogle Scholar
  15. J. D. Owens, D. Luebke, N. K. Govindaraju, M. Harris, J. Kruger, A. E. Lefohn, and T. J. Purcell. A survey of general-purpose computation on graphics hardware. In Eurographics 2005, State of the Art Reports, 2005.Google ScholarGoogle Scholar
  16. I. Pandis, R. Johnson, N. Hardavellas, and A. Ailamaki. Data-oriented transaction execution. Proc. VLDB Endow., 3:928--939, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. R. Ramakrishnan and J. Gehrke. Database Management Systems (3rd edition). McGraw-Hill, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. M. Stonebraker, S. R. Madden, D. J. Abadi, S. Harizopoulos, N. Hachem, and P. Helland. The end of an architectural era (it's time for a complete rewrite). In VLDB, pages 1150--1160, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. High-throughput transaction executions on graphics processors

            Recommendations

            Comments

            Login options

            Check if you have access through your login credentials or your institution to get full access on this article.

            Sign in

            Full Access

            • Published in

              cover image Proceedings of the VLDB Endowment
              Proceedings of the VLDB Endowment  Volume 4, Issue 5
              February 2011
              71 pages

              Publisher

              VLDB Endowment

              Publication History

              • Published: 1 February 2011
              Published in pvldb Volume 4, Issue 5

              Qualifiers

              • research-article

            PDF Format

            View or Download as a PDF file.

            PDF

            eReader

            View online with eReader.

            eReader