Limitations of Intra-Operator Parallelism using Heterogeneous Computing Resoucres
Published on in ORCHESTRATION (RECENT ACHIEVEMENTS)
In the recent years, hardware changes shaped the database system architecture by moving from sequential execution to parallel multi-core execution and from disk-centric systems to in-memory systems. At the moment, the hardware is changing again from homogeneous CPU systems towards heterogeneous systems with many different computing units (CUs). Generally, heterogeneous systems combine different CUs, like CPUs, GPUs or Xeon Phis, with different architectures, memory hierarchies, and interconnects, leading to different execution behaviors. That means, the current challenge for the database community is to find ways to utilize these systems efficiently. One opportunity is to execute a single query operator on all available CUs, this is usually called intra-operator parallelism. In homogeneous multi-core system, that can be easily achieved by uniformly partitioning of data to all cores and there, such intra-operator parallelism is beneficial. In our current research work, we have investigated the same approach to heterogeneous systems. The corresponding paper  has been accepted for oral presentation and full publication at the 20th East-European Conference on Advances in Databases and Information Systems (http://adbis2016.vsb.cz).
Figure 1: Operator Execution on Two Computing Units.
Figure 1 shows our approach using two different computing units. For heterogeneous systems, we have to define a way to find the ideal data partitioning according to the different execution performances of the given CUs. Afterwards, the partitioned data is used to execute an operator, which computes a partial result. Finally, the partial results of all CUs have to be merged. In our paper , we analyze this approach for two operators, selection and sorting, on two different heterogeneous systems. We present performance insides as well as occurring limitations to intra-operator parallelism in heterogeneous environments. As a result, we show that the actual potential of improvements is small, while the limitations and overheads can be significant, sometimes leading to an even worse performance than single-CU execution. Therefore, our findings can help system developers to decide if intra-operator parallelism can be applied effectively or if it should be avoided.
 Tomas Karnagel, Dirk Habich, Wolfgang Lehner: Limitations of Intra-Operator Parallelism using Heterogeneous Computing Resources: Accepted at 20th East-European Conference on Advances in Databases and Information Systems (ADBIS, August 28-31, Prague, Czech Republic), 2016