English
Related papers

Related papers: Better GPU Hash Tables

200 papers

Cuckoo hashing is a common hashing technique, guaranteeing constant-time lookups in the worst case. Adding a stash was proposed by Kirsch, Mitzenmacher, and Wieder at SICOMP 2010, as a way to reduce the probability of failure (i.e., the…

Data Structures and Algorithms · Computer Science 2023-01-03 Brice Minaud , Charalampos Papamanthou

Concurrent hash tables are one of the most important concurrent data structures with numerous applications. Since hash table accesses can dominate the execution time of the overall application, we need implementations that achieve good…

Data Structures and Algorithms · Computer Science 2016-09-07 Tobias Maier , Peter Sanders , Roman Dementiev

Hash tables are one of the most fundamental data structures for effectively storing and accessing sparse data, with widespread usage in domains ranging from computer graphics to machine learning. This study surveys the state-of-the-art…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-07-13 Brenton Lessley

Cuckoo hashing guarantees constant-time lookups regardless of table density, making it a viable candidate for high-density tables. Cuckoo hashing insertions perform poorly at high table densities, however. In this paper, we mitigate this…

Data Structures and Algorithms · Computer Science 2016-05-18 William Kuszmaul

Modern hash table designs strive to minimize space while maximizing speed. The most important factor in speed is the number of cache lines accessed during updates and queries. This is especially important on PMEM, which is slower than DRAM…

Data Structures and Algorithms · Computer Science 2022-10-13 Prashant Pandey , Michael A. Bender , Alex Conway , Martín Farach-Colton , William Kuszmaul , Guido Tagliavini , Rob Johnson

A minimal perfect hash function (MPHF) maps a set $S$ of $n$ keys to the first $n$ integers without collisions. There is a lower bound of $n\log_2e-O(\log n)$ bits of space needed to represent an MPHF. A matching upper bound is obtained…

Data Structures and Algorithms · Computer Science 2023-11-14 Hans-Peter Lehmann , Peter Sanders , Stefan Walzer

We present the Cuckoo Trie, a fast, memory-efficient ordered index structure. The Cuckoo Trie is designed to have memory-level parallelism -- which a modern out-of-order processor can exploit to execute DRAM accesses in parallel -- without…

Data Structures and Algorithms · Computer Science 2022-01-25 Adar Zeitak , Adam Morrison

Given a specified average load factor, hash tables offer the appeal of constant time lookup operations. However, hash tables could face severe hash collisions because of malicious attacks, buggy applications, or even bursts of incoming…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-06-02 Junchang Wang , Xiong Fu , Fu Xiao , Chen Tian

In the first part of this survey, we review how the power of two choices underlies space-efficient data structures like cuckoo hash tables. We'll find that the additional power afforded by more than 2 choices is often outweighed by the…

Data Structures and Algorithms · Computer Science 2023-07-04 Stefan Walzer

In this paper, the author proposes a series of multilevel double hashing schemes called cascade hash tables. They use several levels of hash tables. In each table, we use the common double hashing scheme. Higher level hash tables work as…

Data Structures and Algorithms · Computer Science 2015-06-26 Shaohua Li

Hash tables are ubiquitous and used in a wide range of applications for efficient probing of large and unsorted data. If designed properly, hash-tables can enable efficients look ups in a constant number of operations or commonly referred…

Data Structures and Algorithms · Computer Science 2019-07-08 Oded Green

We present a GPU-based Locality Sensitive Hashing (LSH) algorithm to speed up beam search for sequence models. We utilize the winner-take-all (WTA) hash, which is based on relative ranking order of hidden dimensions and thus resilient to…

Computation and Language · Computer Science 2018-06-05 Xing Shi , Shizhen Xu , Kevin Knight

A $d$-ary cuckoo hash table is an open-addressed hash table that stores each key $x$ in one of $d$ random positions $h_1(x), h_2(x), \ldots, h_d(x)$. In the offline setting, where all items are given and keys need only be matched to…

Data Structures and Algorithms · Computer Science 2025-01-07 William Kuszmaul , Michael Mitzenmacher

We describe a consistent hashing algorithm which performs multiple lookups per key in a hash table of nodes. It requires no additional storage beyond the hash table, and achieves a peak-to-average load ratio of 1 + epsilon with just 1 +…

Data Structures and Algorithms · Computer Science 2015-05-04 Ben Appleton , Michael O'Reilly

We study wear-leveling techniques for cuckoo hashing, showing that it is possible to achieve a memory wear bound of $\log\log n+O(1)$ after the insertion of $n$ items into a table of size $Cn$ for a suitable constant $C$ using cuckoo…

Data Structures and Algorithms · Computer Science 2014-04-02 David Eppstein , Michael T. Goodrich , Michael Mitzenmacher , Paweł Pszona

Cuckoo hashing is an efficient technique for creating large hash tables with high space utilization and guaranteed constant access times. There, each item can be placed in a location given by any one out of k different hash functions. In…

Data Structures and Algorithms · Computer Science 2013-10-11 Nikolaos Fountoulakis , Konstantinos Panagiotou , Angelika Steger

We show how to answer spatial multiple-set intersection queries in O(n(log w)/w + kt) expected time, where n is the total size of the t sets involved in the query, w is the number of bits in a memory word, k is the output size, and c is any…

Data Structures and Algorithms · Computer Science 2017-08-31 Michael T. Goodrich

The study of hashing is closely related to the analysis of balls and bins. It is well-known that instead of using a single hash function if we randomly hash a ball into two bins and place it in the smaller of the two, then this dramatically…

Data Structures and Algorithms · Computer Science 2007-05-23 Rina Panigrahy

A minimal perfect hash function (MPHF) maps a set S of n keys to the first n integers without collisions. There is a lower bound of n*log(e)=1.44n bits needed to represent an MPHF. This can be reached by a brute-force algorithm that tries…

Data Structures and Algorithms · Computer Science 2024-06-14 Hans-Peter Lehmann , Peter Sanders , Stefan Walzer

Hashing functions, which are created to provide brief and erratic digests for the message entered, are the primary cryptographic primitives used in blockchain networks. Hashing is employed in blockchain networks to create linked block…

Cryptography and Security · Computer Science 2024-07-12 Marut Pandya