English
Related papers

Related papers: Fast and Powerful Hashing using Tabulation

200 papers

Randomized algorithms are often enjoyed for their simplicity, but the hash functions used to yield the desired theoretical guarantees are often neither simple nor practical. Here we show that the simplest possible tabulation hashing…

Data Structures and Algorithms · Computer Science 2011-05-10 Mihai Patrascu , Mikkel Thorup

Simple tabulation dates back to Zobrist in 1970. Keys are viewed as c characters from some alphabet A. We initialize c tables h_0, ..., h_{c-1} mapping characters to random hash values. A key x=(x_0, ..., x_{c-1}) is hashed to h_0[x_0]…

Data Structures and Algorithms · Computer Science 2016-11-15 Mikkel Thorup

Simple tabulation hashing dates back to Zobrist in 1970 and is defined as follows: Each key is viewed as $c$ characters from some alphabet $\Sigma$, we have $c$ fully random hash functions $h_0, \ldots, h_{c - 1} \colon \Sigma \to \{0,…

Data Structures and Algorithms · Computer Science 2022-05-04 Jakob Bæk Tejs Houen , Mikkel Thorup

Previous work on tabulation hashing by Patrascu and Thorup from STOC'11 on simple tabulation and from SODA'13 on twisted tabulation offered Chernoff-style concentration bounds on hash based sums, e.g., the number of balls/keys hashing to a…

Data Structures and Algorithms · Computer Science 2020-08-11 Anders Aamand , Jakob B. T. Knudsen , Mathias B. T. Knudsen , Peter M. R. Rasmussen , Mikkel Thorup

A random hash function $h$ is $\varepsilon$-minwise if for any set $S$, $|S|=n$, and element $x\in S$, $\Pr[h(x)=\min h(S)]=(1\pm\varepsilon)/n$. Minwise hash functions with low bias $\varepsilon$ have widespread applications within…

Data Structures and Algorithms · Computer Science 2014-05-02 Søren Dahlgaard , Mikkel Thorup

A tabulation-based hash function maps a key into d derived characters indexing random values in tables that are then combined with bitwise xor operations to give the hash. Thorup and Zhang (2004) presented d-wise independent…

Data Structures and Algorithms · Computer Science 2011-12-15 Toryn Qwyllyn Klassen , Philipp Woelfel

Hashing is a common technique used in data processing, with a strong impact on the time and resources spent on computation. Hashing also affects the applicability of theoretical results that often assume access to (unrealistic)…

Data Structures and Algorithms · Computer Science 2023-09-29 Ioana O. Bercea , Lorenzo Beretta , Jonas Klausen , Jakob Bæk Tejs Houen , Mikkel Thorup

This paper considers the basic question of how strong of a probabilistic guarantee can a hash table, storing $n$ $(1 + \Theta(1)) \log n$-bit key/value pairs, offer? Past work on this question has been bottlenecked by limitations of the…

Data Structures and Algorithms · Computer Science 2022-09-19 William Kuszmaul

The power of two choices is a classic paradigm for load balancing when assigning $m$ balls to $n$ bins. When placing a ball, we pick two bins according to two hash functions $h_0$ and $h_1$, and place the ball in the least loaded bin.…

Data Structures and Algorithms · Computer Science 2016-01-26 Søren Dahlgaard , Mathias Bæk Tejs Knudsen , Eva Rotenberg , Mikkel Thorup

Hashing is a basic tool for dimensionality reduction employed in several aspects of machine learning. However, the perfomance analysis is often carried out under the abstract assumption that a truly random unit cost hash function is used,…

Machine Learning · Statistics 2017-11-27 Søren Dahlgaard , Mathias Bæk Tejs Knudsen , Mikkel Thorup

It is shown that for cuckoo hashing with a stash as proposed by Kirsch, Mitzenmacher, and Wieder (2008) families of very simple hash functions can be used, maintaining the favorable performance guarantees: with stash size $s$ the…

Data Structures and Algorithms · Computer Science 2012-04-20 Martin Aumüller , Martin Dietzfelbinger , Philipp Woelfel

This paper presents an efficient wait-free resizable hash table. To achieve high throughput at large core counts, our algorithm is specifically designed to retain the natural parallelism of concurrent hashing, while providing wait-free…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-04-21 Panagiota Fatourou , Nikolaos D. Kallimanis , Thomas Ropars

We study randomness properties of graphs and hypergraphs generated by simple hash functions. Several hashing applications can be analyzed by studying the structure of $d$-uniform random ($d$-partite) hypergraphs obtained from a set $S$ of…

Data Structures and Algorithms · Computer Science 2016-11-02 Martin Aumüller , Martin Dietzfelbinger , Philipp Woelfel

Hash tables are ubiquitous in computer science for efficient access to large datasets. However, there is always a need for approaches that offer compact memory utilisation without substantial degradation of lookup performance. Cuckoo…

Data Structures and Algorithms · Computer Science 2019-07-17 Megha Khosla , Avishek Anand

The problem of fast items retrieval from a fixed collection is often encountered in most computer science areas, from operating system components to databases and user interfaces. We present an approach based on hash tables that focuses on…

Neural and Evolutionary Computing · Computer Science 2020-07-17 Dan Domnita , Ciprian Oprisa

We consider the hashing of a set $X\subseteq U$ with $|X|=m$ using a simple tabulation hash function $h:U\to [n]=\{0,\dots,n-1\}$ and analyse the number of non-empty bins, that is, the size of $h(X)$. We show that the expected size of…

Data Structures and Algorithms · Computer Science 2018-11-01 Anders Aamand , Mikkel Thorup

In this paper we analyze a hash function for $k$-partitioning a set into bins, obtaining strong concentration bounds for standard algorithms combining statistics from each bin. This generic method was originally introduced by Flajolet and…

Data Structures and Algorithms · Computer Science 2016-02-16 Søren Dahlgaard , Mathias Bæk Tejs Knudsen , Eva Rotenberg , Mikkel Thorup

Cuckoo hashing is a powerful primitive that enables storing items using small space with efficient querying. At a high level, cuckoo hashing maps $n$ items into $b$ entries storing at most $\ell$ items such that each item is placed into one…

Cryptography and Security · Computer Science 2023-06-21 Kevin Yeo

Consistent Hashing functions are widely used for load balancing across a variety of applications. However, the original presentation and typical implementations of Consistent Hashing rely on randomised allocation of hash codes to keys which…

Data Structures and Algorithms · Computer Science 2015-03-19 Matthew Sackman

Despite being one of the oldest data structures in computer science, hash tables continue to be the focus of a great deal of both theoretical and empirical research. A central reason for this is that many of the fundamental properties that…

Data Structures and Algorithms · Computer Science 2023-10-24 Michael A. Bender , Alex Conway , Martín Farach-Colton , William Kuszmaul , Guido Tagliavini
‹ Prev 1 2 3 10 Next ›