In-Memory Data Analytics on Coupled CPU-GPU Architectures

In the big data era, in-memory data analytics is an effective means of achieving high performance data processing and realizing the value of data in a timely manner. Efforts in this direction have been spent on various aspects, including in-memory algorithmic designs and system optimizations. In this paper, we propose to develop the next-generation in-memory relational database processing techniques on coupled CPU-GPU architectures. Particularly, we demonstrate novel design and implementations of query processing paradigms to utilize the strengths of coupled CPU-GPU architectures such as shared main memory and cache hierarchy. We propose a fine-grained method to distribute workload onto available processors, since the CPU and the GPU share the same main memory space. Besides, we propose an in-cache paradigm for query processing to take advantage of shared cache hierarchy to overcome memory stalls of query processing. Our experimental results demonstrate that 1) the proposed finegrained and in-cache query processing significantly improve the performance of in-memory databases, and 2) such coupled architectures are more energy efficient in query processing compared with other discrete systems.

[1]  Minyi Guo,et al.  RAMZzz: Rank-aware DRAM power management with dynamic migrations and demotions , 2012, 2012 International Conference for High Performance Computing, Networking, Storage and Analysis.

[2]  Aaftab Munshi,et al.  The OpenCL specification , 2009, 2009 IEEE Hot Chips 21 Symposium (HCS).

[3]  Bingsheng He,et al.  Relational query coprocessing on graphics processors , 2009, TODS.

[4]  Bingsheng He,et al.  In-Cache Query Co-Processing on Coupled CPU-GPU Architectures , 2014, Proc. VLDB Endow..

[5]  Mike O'Connor,et al.  Characterizing and evaluating a key-value store application on heterogeneous CPU-GPU systems , 2012, 2012 IEEE International Symposium on Performance Analysis of Systems & Software.

[6]  Wu-chun Feng,et al.  Performance characterization of data-intensive kernels on AMD Fusion architectures , 2012, Computer Science - Research and Development.

[7]  Jianlong Zhong,et al.  Medusa: Simplified Graph Processing on GPUs , 2014, IEEE Transactions on Parallel and Distributed Systems.

[8]  Bingsheng He,et al.  OmniDB: Towards Portable and Efficient Query Processing on Parallel CPU/GPU Architectures , 2013, Proc. VLDB Endow..

[9]  Kenneth A. Ross,et al.  Improving Database Performance on Simultaneous Multithreading Processors , 2005, VLDB.

[10]  Bingsheng He,et al.  Database compression on graphics processors , 2010, Proc. VLDB Endow..

[11]  Patricia G. Selinger,et al.  Access path selection in a relational database management system , 1979, SIGMOD '79.

[12]  Gagan Agrawal,et al.  Accelerating MapReduce on a coupled CPU-GPU architecture , 2012, 2012 International Conference for High Performance Computing, Networking, Storage and Analysis.

[13]  Naga K. Govindaraju,et al.  Mars: A MapReduce Framework on graphics processors , 2008, 2008 International Conference on Parallel Architectures and Compilation Techniques (PACT).

[14]  Bingsheng He,et al.  Revisiting Co-Processing for Hash Joins on the Coupled CPU-GPU Architecture , 2013, Proc. VLDB Endow..