TY - GEN
T1 - Analyzing and Implementing GPU Hash Tables
AU - Awad, Muhammad A.
AU - Ashkiani, Saman
AU - Porumbescu, Serban D.
AU - Farach-Colton, Martín
AU - Owens, John D.
N1 - Publisher Copyright:
Copyright © 2023 Copyright for this paper is retained by the authors.
PY - 2023
Y1 - 2023
N2 - 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.
AB - 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.
UR - http://www.scopus.com/inward/record.url?scp=85164621632&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85164621632&partnerID=8YFLogxK
M3 - Conference contribution
AN - SCOPUS:85164621632
T3 - 4th Meeting of the Symposium on Algorithmic Principles of Computer Systems, APOCS 2023
SP - 33
EP - 50
BT - 4th Meeting of the Symposium on Algorithmic Principles of Computer Systems, APOCS 2023
PB - Society for Industrial and Applied Mathematics Publications
T2 - 4th Meeting of the Symposium on Algorithmic Principles of Computer Systems, APOCS 2023
Y2 - 25 January 2023
ER -