Multithreaded query execution on multicore processors

Konstantinos Krikellas, Marcelo Cintra, Stratis Viglas

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

Modern CPUs follow multicore designs with multiple threads running in parallel. The dataflow of query engine algorithms needs to be adapted to exploit such designs. We identify memory accesses and thread synchronization as the main bottlenecks in a multicore execution environment. We present a uniform framework to mitigate the impact of these bottlenecks in multithreaded versions of the most frequently used query processing algorithms, namely sorting, partitioning, join evaluation, and aggregation. Through an analytical model, we extract the expected behavior and scalability of the proposed algorithms. We conduct an extensive experimental analysis of both the analytical model and the algorithms. Our results show that: (a) the analytical model adequately captures the performance of the algorithms, and (b) the algorithms themselves achieve considerable speedups compared to their single-threaded counterparts.
Original languageEnglish
Title of host publication35th International Conference on Very Large Data Bases VLDB 2009
Number of pages12
Publication statusPublished - 2009

Fingerprint Dive into the research topics of 'Multithreaded query execution on multicore processors'. Together they form a unique fingerprint.

Cite this