Abstract | ||
---|---|---|
There is a trend towards increased specialization of data management software for performance reasons. In this paper, we study the automatic specialization and optimization of database application programs -- sequences of queries and updates, augmented with control flow constructs as they appear in database scripts, UDFs, transactional workloads and triggers in languages such as PL/SQL. show how to build an optimizing compiler for database application programs using generative programming and state-of-the-art compiler technology. We evaluate a hand-optimized low-level implementation of TPC-C, and identify the key optimization techniques that account for its good performance. Our compiler fully automates these optimizations and, applied to this benchmark, outperforms the manually optimized baseline by a factor of two. By selectively disabling some of the optimizations in the compiler, we derive a clinical and precise way of obtaining insight into their individual performance contributions. |
Year | Venue | Field |
---|---|---|
2018 | arXiv: Databases | SQL,Programming language,Computer science,Control flow,Compiler,Optimizing compiler,Software,Database application,Data management,Database,Scripting language |
DocType | Volume | Citations |
Journal | abs/1807.09887 | 0 |
PageRank | References | Authors |
0.34 | 0 | 6 |
Name | Order | Citations | PageRank |
---|---|---|---|
Mohammad Dashti | 1 | 46 | 4.52 |
Sachin Basil John | 2 | 2 | 0.70 |
Thierry Coppey | 3 | 0 | 0.68 |
Amir Shaikhha | 4 | 37 | 7.31 |
Vojin Jovanovic | 5 | 103 | 5.03 |
Christoph Koch | 6 | 2817 | 163.43 |