Banner Banner

Benchmarking Stream Join Algorithms on GPUs: A Framework and Its Application to the State of the Art

Dwi P. A. Nugroho
Philipp M. Grulich
Steffen Zeuch
Clemens Lutz
Stefano Bortoli
Volker Markl

March 28, 2024

Joining streams is an essential and resource-demanding operation in stream processing engines. Recent works have shown significant performance benefits by offloading stream-join processing to hardware accelerators, including GPUs. As a result, a wide variety of GPU-accelerated stream join algorithms (SJAs) have emerged. However, existing works evaluate the proposed GPU-accelerated SJAs only in isolation, on different hardware, and not using a common workload. Consequently, it is difficult to compare different SJAs and select the best-suited SJA for a particular situation. In our paper, we shed light on the performance characterisJcs of GPU-accelerated SJAs. Our experiments show that each variant of SJA has its strengths and weaknesses and that ill-suited configurations of parameters lead to up to two orders of magnitude difference in throughput. Based on our results, we have developed a guideline for selecting SJA variants for different circumstances.