Novel insights on atomic synchronization for sort-based group-by on GPUs
University of Magdeburg, 39104 Magdeburg, Germany
Distributed and Parallel Databases, 2023
@article{gurumurthy2023novel,
title={Novel insights on atomic synchronization for sort-based group-by on GPUs},
author={Gurumurthy, Bala and Broneske, David and Sch{"a}ler, Martin and Pionteck, Thilo and Saake, Gunter},
journal={Distributed and Parallel Databases},
pages={1–23},
year={2023},
publisher={Springer}
}
Using heterogeneous processing devices, like GPUs, to accelerate relational database operations is a well-known strategy. In this context, the group by operation is highly interesting for two reasons. Firstly, it incurs large processing costs. Secondly, its results (i.e., aggregates) are usually small, reducing data movement costs whose compensation is a major challenge for heterogeneous computing. Generally, for group by computation on GPUs, one relies either on sorting or hashing. Today, empirical results suggest that hash-based approaches are superior. However, by concept, hashing induces an unpredictable memory access pattern conflicting with the architecture of GPUs. This motivates studying why current sort-based approaches are generally inferior. Our results indicate that current sorting solutions cannot exploit the full parallel power of modern GPUs. Experimentally, we show that the issue arises from the need to synchronize parallel threads that access the shared memory location containing the aggregates via atomics. Our quantification of the optimal performance motivates us to investigate how to minimize the overhead of atomics. This results in different variants using atomics, where the best variants almost mitigate the atomics overhead entirely. The results of a large-scale evaluation reveal that our approach achieves a 3x speed-up over existing sort-based approaches and up to 2x speed-up over hash-based approaches.
August 28, 2023 by hgpu