Proteus is a database engine designed for today's heterogeneous environments. Proteus adapts to variable data, hardware and workloads through a combination of GPU acceleration, data virtualization, and adaptive scheduling.

Hardware-conscious Query Processing in GPU-accelerated Analytical Engines

CIDR 2019. P. Chrysogelos, P. Sioulas, A. Ailamaki

Abstract

In the last years, modern servers are adopting hardware accelerators, such as GPUs, in order to improve their power efficiency and computational capacity. Modern analytical query processing engines are highly optimized for multi-core multi-CPU query execution, but lack the necessary abstractions to support concurrent hardware-conscious query execution over multiple heterogeneous devices and exploit the available accelerators.

This work presents a Heterogeneity-conscious Analytical query Processing Engine (HAPE), a blueprint for hardware-conscious analytical engines for efficient and concurrent multi-CPU multi-GPU query execution. HAPE decomposes query execution on heterogeneous hardware into, 1) efficient single-device and 2) concurrent multi-device query execution. It uses hardware-conscious algorithms designed for single-device execution and combines them into efficient intra-device hardware-conscious execution modules, via code generation. HAPE combines these modules to achieve multi-device execution by handling data and control transfers.

We validate our design by building a prototype and evaluating its performance using radix-join co-processing and the TPC-H benchmark. We show that it achieves up to 10x and 3.5x speed-up on the radix-join against CPU and GPU alternatives, respectively, and 1.6x-8x against state-of-the-art CPU- and GPU-based commercial DBMSs on the selected TPC-H queries.

@inproceedings{DBLP:conf/cidr/ChrysogelosSA19,
  author    = {Periklis Chrysogelos and
               Panagiotis Sioulas and
               Anastasia Ailamaki},
  title     = {Hardware-conscious Query Processing in GPU-accelerated Analytical
               Engines},
  booktitle = {9th Biennial Conference on Innovative Data Systems Research, {CIDR}
               2019, Asilomar, CA, USA, January 13-16, 2019, Online Proceedings},
  publisher = {www.cidrdb.org},
  year      = {2019},
  url       = {http://cidrdb.org/cidr2019/papers/p127-chrysogelos-cidr19.pdf},
  timestamp = {Mon, 18 Jul 2022 17:13:00 +0200},
  biburl    = {https://dblp.org/rec/conf/cidr/ChrysogelosSA19.bib},
  bibsource = {dblp computer science bibliography, https://dblp.org}
}