- Abstract:
-
Modern CPUs follow multicore designs with multiple threads running in parallel. The dataflow of query engine algorithms needs to beadapted 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.
- Links To Paper
- 1st Link
- Bibtex format
- @InProceedings{EDI-INF-RR-1320,
- author = {
Konstantinos Krikellas
and Marcelo Cintra
and Stratis Viglas
},
- title = {Multithreaded query execution on multicore processors},
- book title = {VLDB 2009},
- year = 2009,
- url = {http://homepages.inf.ed.ac.uk/s0676486/index_files/multithread.pdf},
- }
|