Improving Performances of an Embedded Relational Database Management System with a Hybrid CPU/GPU Processing Engine

  • Samuel CremerEmail author
  • Michel Bagein
  • Saïd Mahmoudi
  • Pierre Manneback
Conference paper
Part of the Communications in Computer and Information Science book series (CCIS, volume 737)


End-user systems are increasingly impacted by the exponential growth of data volumes and their processing. Moreover, post-processing operations, essentially dedicated to ergonomic features, require more and more resources. Improving overall performances of embedded relational database management systems (RDBMS) can contribute to deliver better responsiveness of end-user systems while increasing the energy efficiency. In this paper, it is proposed to upgrade SQLite, the most-spreaded embedded RDBMS, with a hybrid CPU/GPU processing engine combined with appropriate data management. With the proposed solution, named CuDB, massively parallel processing is combined with strategic data placement, closer to computing units. Experimental results revealed, in all cases, better performances and power efficiency compared to SQLite with an in-memory database.


In-memory database systems Embedded databases Relational database management systems GPU 


  1. 1.
    Huang, S., Xiao, S., Feng, W.: On the energy efficiency of graphics processing units for scientific computing. In: IPDPS 2009, Sichaun (2009)Google Scholar
  2. 2.
    Govindaraju, N., Lloyd, B., Wang, W., Lin, M., Manochad, D.: Fast computation of database operations using graphics processors. In: SIGMOD/PODS 2004, Paris, pp. 215–216 (2004)Google Scholar
  3. 3.
    Fang, R., He, B., Lu, M., Yang, K., Govindaraju, N., Luo, Q., Sander, P.: GPUQP: query co-processing using graphics processors. In: SIGMOD/PODS 2007, Beijing, pp. 1061–1063 (2007)Google Scholar
  4. 4.
    Zhang, S., He, J., He, B., Lu, M.: Omnidb: towards portable and efficient query processing on parallel CPU/GPU architectures. VLDB Endow. 4(5), 1374–1377 (2013)CrossRefGoogle Scholar
  5. 5.
    Yuan, Y., Lee, R., Zhang, X.: The Yin and Yang of processing data warehousing queries on GPU devices. VLDB Endow. 6(10), 817–828 (2013)CrossRefGoogle Scholar
  6. 6.
    O’Neil, P., O’Neil, B., Chen, X.: Star Schema Benchmark (Revision 3, June 5, 2009). Technical report, UMass/Boston (2009)Google Scholar
  7. 7.
    Breß, S., Siegmund, N., Bellatreche, L., Saake, G.: An operator-stream-based scheduling engine for effective GPU coprocessing. In: Catania, B., Guerrini, G., Pokorný, J. (eds.) ADBIS 2013. LNCS, vol. 8133, pp. 288–301. Springer, Heidelberg (2013). doi: 10.1007/978-3-642-40683-6_22 CrossRefGoogle Scholar
  8. 8.
    Heimel, M., Saecker, M., Pirk, H., Manegold, S., Markl, V.: Hardware-oblivious parallelism for in-memory column-stores. PVLDB 6(9), 709–720 (2013)Google Scholar
  9. 9.
    Yong, K., Karuppiah, E., Chong-Wee See, S.: Galactica: a GPU parallelized database accelerator. In: Third ASE International Conference on Big Data Science and Computing, Beijing (2014)Google Scholar
  10. 10.
    He, B.X., Yu, J.: High-throughput transaction executions on graphics processors. VLDB Endow. 8(5), 314–325 (2011)CrossRefGoogle Scholar
  11. 11.
    Bakkum, P., Skadron, K.: Accelerating SQL database operations on a GPU with CUDA. In: 3rd Workshop on GPGPU, Pittsburgh, pp. 94–103 (2010)Google Scholar
  12. 12.
    Cremer, S., Bagein, M., Mahmoudi, S., Manneback, P.: Boosting an embedded relational database management system with graphics processing units. In: DATA 2016, Lisbon, pp. 170–175 (2016)Google Scholar
  13. 13.
    Kinetica: GPU-accelerated database for real-time analysis of large and streaming datasets.
  14. 14.
    MapD: The World’s Fastest Data Exploration Platform.
  15. 15.
  16. 16.
    BlazingDB: Blazing GPU Database.
  17. 17.
    Cisco has Completed the Acquisition of Parstream.
  18. 18.
    Landaverde, R., Zhang, T., Coskun, A., Herbordt, M.: An investigation of unified memory access performance in CUDA. In: HPEC 2014, Waltham (2014)Google Scholar
  19. 19.
    van den Braak, G., Mersman, B., Corporaal, H.: Compiletime GPU memory access optimizations. In: ICSAMOS 2010, Samos (2010)Google Scholar
  20. 20.
    Kaczmarski, K.: Experimental B+-tree for GPU. In: ADBIS 2011, Vienna (2011)Google Scholar
  21. 21.
    Peters, H., Schulz-Hildebrandt, O., Luttenberger, N.: Fast in-place sorting with CUDA based on Bitonic sort. In: Wyrzykowski, R., Dongarra, J., Karczewski, K., Wasniewski, J. (eds.) PPAM 2009. LNCS, vol. 6067, pp. 403–410. Springer, Heidelberg (2010). doi: 10.1007/978-3-642-14390-8_42 CrossRefGoogle Scholar

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  • Samuel Cremer
    • 1
    • 2
    Email author
  • Michel Bagein
    • 2
  • Saïd Mahmoudi
    • 2
  • Pierre Manneback
    • 2
  1. 1.Computer Engineering DepartmentHaute Ecole en HainautMonsBelgium
  2. 2.Computer Science DepartmentUniversity of MonsMonsBelgium

Personalised recommendations