Compact Parallel Hash Tables on the GPU

Fuente: arXiv
Saved in:
Bibliographic Details
Main Authors: Hegeman, Steef, Wöltgens, Daan, Wijs, Anton, Laarman, Alfons
Format: Preprint
Published: 2024
Subjects:
Online Access:
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866909223340736512
author Hegeman, Steef
Wöltgens, Daan
Wijs, Anton
Laarman, Alfons
author_facet Hegeman, Steef
Wöltgens, Daan
Wijs, Anton
Laarman, Alfons
contents On the GPU, hash table operation speed is determined in large part by cache line efficiency, and state-of-the-art hashing schemes thus divide tables into cache line-sized buckets. This raises the question whether performance can be further improved by increasing the number of entries that fit in such buckets. Known compact hashing techniques have not yet been adapted to the massively parallel setting, nor have they been evaluated on the GPU. We consider a compact version of bucketed cuckoo hashing, and a version of compact iceberg hashing suitable for the GPU. We discuss the tables from a theoretical perspective, and provide an open source implementation of both schemes in CUDA for comparative benchmarking. In terms of performance, the state-of-the-art cuckoo hashing benefits from compactness on lookups and insertions (most experiments show at least 10-20% increase in throughput), and the iceberg table benefits significantly, to the point of being comparable to compact cuckoo hashing--while supporting performant dynamic operation.
format Preprint
id arxiv_https___arxiv_org_abs_2406_09255
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle Compact Parallel Hash Tables on the GPU
Hegeman, Steef
Wöltgens, Daan
Wijs, Anton
Laarman, Alfons
Data Structures and Algorithms
On the GPU, hash table operation speed is determined in large part by cache line efficiency, and state-of-the-art hashing schemes thus divide tables into cache line-sized buckets. This raises the question whether performance can be further improved by increasing the number of entries that fit in such buckets. Known compact hashing techniques have not yet been adapted to the massively parallel setting, nor have they been evaluated on the GPU. We consider a compact version of bucketed cuckoo hashing, and a version of compact iceberg hashing suitable for the GPU. We discuss the tables from a theoretical perspective, and provide an open source implementation of both schemes in CUDA for comparative benchmarking. In terms of performance, the state-of-the-art cuckoo hashing benefits from compactness on lookups and insertions (most experiments show at least 10-20% increase in throughput), and the iceberg table benefits significantly, to the point of being comparable to compact cuckoo hashing--while supporting performant dynamic operation.
title Compact Parallel Hash Tables on the GPU
topic Data Structures and Algorithms
url https://arxiv.org/abs/2406.09255