A Study of the Fundamental Performance Characteristics of GPUs and CPUs for Database Analytics
A Study of the Fundamental Performance Characteristics of GPUs and CPUs for Database Analytics
复制标题
DOI:
10.1145/3318464.3380595
复制
发表时间:
2020-03
期刊:
影响因子:
--
通讯作者:
Anil Shanbhag;S. Madden;Xiangyao Yu
中科院分区:
文献类型:
--
作者:
Anil Shanbhag;S. Madden;Xiangyao Yu
There has been significant amount of excitement and recent work on GPU-based database systems. Previous work has claimed that these systems can perform orders of magnitude better than CPU-based database systems on analytical workloads such as those found in decision support and business intelligence applications. A hardware expert would view these claims with suspicion. Given the general notion that database operators are memory-bandwidth bound, one would expect the maximum gain to be roughly equal to the ratio of the memory bandwidth of GPU to that of CPU. In this paper, we adopt a model-based approach to understand when and why the performance gains of running queries on GPUs vs on CPUs vary from the bandwidth ratio (which is roughly 16× on modern hardware). We propose Crystal, a library of parallel routines that can be combined together to run full SQL queries on a GPU with minimal materialization overhead. We implement individual query operators to show that while the speedups for selection, projection, and sorts are near the bandwidth ratio, joins achieve less speedup due to differences in hardware capabilities. Interestingly, we show on a popular analytical workload that full query performance gain from running on GPU exceeds the bandwidth ratio despite individual operators having speedup less than bandwidth ratio, as a result of limitations of vectorizing chained operators on CPUs, resulting in a 25× speedup for GPUs over CPUs on the benchmark.