Multithreaded Architectures and Database Query Processing

Dr. Henry Korth, Professor and Chair
Dept. of Computer Scienc and Engineering, Lehigh University


Multicore and multithreaded processors present both opportunities and Challenges in the design of database query-processing algorithms. Modern database systems gain their parallelism from concurrent transactions or queries, but parallelism of this sort can result in cache contention. It is therefore increasingly important to consider parallelism within individual database queries. This talk describes experiments done with two of the operations that consume most of the database CPU cycles: sorting and joining. We revisit the classic sort benchmark in a main-memory/CPU-cache context and consider the hash-join algorithm for a single join and a pair of pipelined joins. In each case we examine performance for a pair of parallel threads and a pair of parallel processors sharing a cache. Our results indicate issues that will rise to greater importance with the emergence of new processors with an increased number of cores and increased number of potential parallel threads. This work is joint with Philip Garcia, formerly of Lehigh and now a Ph.D. student at the University of Wisconsin, Madison