Query Acceleration using Complex CPU Features
Time:2:00pm (coffee: 1:30)
Modern databases have shifted from traditional disk based programs into highly optimized main memory performance based systems. Modern CPUs are also highly complicated offering a plethora of features that could provide serious speedups on performance critical applications if utilized correctly, avoiding well hidden performance pitfalls. We focus on fully utilizing CPU features like cache hierarchy and data alignment, branch misprediction elimination and write-combining.
We evaluate these techniques by first optimizing partitioning and then re-designing sort, join and group-by operations to operate in a cache resident manner. We evaluate these designs on a single machine environment for small to medium sized tables (~1GB). While our experiments are individual ad-hoc operations and not typical analytical queries, they represent the building blocks of query execution and careful integration into a full scale DBMS will result in a significant performance boost on OLAP queries.