4.5 Article

Hybrid CPU/GPU/APU accelerated query, insert, update and erase operations in hash tables with string keys

Journal

KNOWLEDGE AND INFORMATION SYSTEMS
Volume 65, Issue 10, Pages 4359-4377

Publisher

SPRINGER LONDON LTD
DOI: 10.1007/s10115-023-01891-w

Keywords

Hybrid; Hash table; Strings; GPU; APU; SYCL

Ask authors/readers for more resources

Modern computer systems can achieve significant performance improvements by using various types of hardware acceleration. Different accelerators require different optimized data structures and memory configurations to achieve the best performance. APUs, which combine CPU and integrated GPU, support shared memory and enable CPU and iGPU collaboration on pointer-based data structures.
Modern computer systems can use different types of hardware acceleration to achieve massive performance improvements. Some accelerators like FPGA and dedicated GPU (dGPU) need optimized data structures for the best performance and often use dedicated memory. In contrast, APUs, which are a combination of a CPU and an integrated GPU (iGPU), support shared memory and allow the iGPU to work together with the CPU on pointer-based data structures. First, we develop an approach for dGPU to accelerate queries in libcuckoo and robin-map and when looking at accelerating insert, updates and erase operations in the original libcuckoo using OneAPI on an APU. We evaluate the dGPU against the CPU variants and our dGPU approach adapted for the CPU and also in a hybrid context by using longer keys on the CPU and shorter keys on the dGPU. In comparison with the original libcuckoo algorithm, our dGPU approach achieves a speed-up of 2.1, and in comparison with the robin-map a speed-up of 1.5. For hybrid workloads, our approach is efficient if long keys are processed on the CPU and short keys are processed on the dGPU. By processing a mixture of 20% long keys on the CPU and 80% short keys on dGPU, our hybrid approach has a 40% higher throughput than the CPU only approach. In addition, we develop a hybrid APU approach for insert, update and erase operations in the original libcuckoo structure focusing on shared memory with iGPU accelerated look-ups of the positions for insert, update and erase operations.

Authors

I am an author on this paper
Click your name to claim this paper and add it to your profile.

Reviews

Primary Rating

4.5
Not enough ratings

Secondary Ratings

Novelty
-
Significance
-
Scientific rigor
-
Rate this paper

Recommended

No Data Available
No Data Available