Authors
Thomas Neumann
Publication date
2011/6/1
Journal
Proceedings of the VLDB Endowment
Volume
4
Issue
9
Pages
539-550
Publisher
VLDB Endowment
Description
As main memory grows, query performance is more and more determined by the raw CPU costs of query processing itself. The classical iterator style query processing technique is very simple and exible, but shows poor performance on modern CPUs due to lack of locality and frequent instruction mispredictions. Several techniques like batch oriented processing or vectorized tuple processing have been proposed in the past to improve this situation, but even these techniques are frequently out-performed by hand-written execution plans.
In this work we present a novel compilation strategy that translates a query into compact and efficient machine code using the LLVM compiler framework. By aiming at good code and data locality and predictable branch layout the resulting code frequently rivals the performance of hand-written C++ code. We integrated these techniques into the HyPer main memory database system …
Total citations
20112012201320142015201620172018201920202021202220232024516303745627866667183688038
Scholar articles