Analyzing and implementing GPU hash tables

MA Awad, S Ashkiani, SD Porumbescu… - 2023 Symposium on …, 2023 - SIAM
2023 Symposium on Algorithmic Principles of Computer Systems (APOCS), 2023SIAM
We revisit the problem of building static hash tables on the GPU and present an efficient
implementation of bucketed hash tables. By decoupling the probing scheme from the hash
table in-memory representation, we offer an implementation where the number of probes
and the bucket size are the only factors limiting performance. Our analysis sweeps through
the hash table parameter space for two probing schemes: cuckoo and iceberg hashing. We
show that a bucketed cuckoo hash table (BCHT) that uses three hash functions outperforms …
We revisit the problem of building static hash tables on the GPU and present an efficient implementation of bucketed hash tables. By decoupling the probing scheme from the hash table in-memory representation, we offer an implementation where the number of probes and the bucket size are the only factors limiting performance. Our analysis sweeps through the hash table parameter space for two probing schemes: cuckoo and iceberg hashing. We show that a bucketed cuckoo hash table (BCHT) that uses three hash functions outperforms alternative methods that use iceberg hashing and a cuckoo hash table that uses a bucket size of one. At load factors as high as 0.99, BCHT enjoys an average probe count of 1.43 during insertion. Using three hash functions only, positive and negative queries require at most 1.39 and 2.8 average probes per key, respectively.
Society for Industrial and Applied Mathematics
Showing the best result for this search. See all results