Automatic selection of processing units for coprocessing in databases

  • Authors:
  • Sebastian Breß;Felix Beier;Hannes Rauhe;Eike Schallehn;Kai-Uwe Sattler;Gunter Saake

  • Affiliations:
  • Otto-von-Guericke University Magdeburg, Germany;Ilmenau University of Technology, Germany;Ilmenau University of Technology, Germany,SAP AG, Germany;Otto-von-Guericke University Magdeburg, Germany;Ilmenau University of Technology, Germany;Otto-von-Guericke University Magdeburg, Germany

  • Venue:
  • ADBIS'12 Proceedings of the 16th East European conference on Advances in Databases and Information Systems
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

Specialized processing units such as GPUs or FPGAs provide great opportunities to speed up database operations by exploiting parallelism and relieving the CPU. But utilizing coprocessors efficiently poses major challenges to developers. Besides finding fine-granular data parallel algorithms and tuning them for the available hardware, it has to be decided at runtime which (co)processor should be chosen to execute a specific task. Depending on input parameters, wrong decisions can lead to severe performance degradations since involving coprocessors introduces a significant overhead, e.g., for data transfers. In this paper, we present a framework that automatically learns and adapts execution models for arbitrary algorithms on any (co)processor to find break-even points and support scheduling decisions. We demonstrate its applicability for three common use cases in modern database systems and show how their performance can be improved with wise scheduling decisions.