English
Related papers

Related papers: Power of $d$ Choices with Simple Tabulation

200 papers

Randomized algorithms are often enjoyed for their simplicity, but the hash functions employed to yield the desired probabilistic guarantees are often too complicated to be practical. Here we survey recent results on how simple hashing…

Data Structures and Algorithms · Computer Science 2017-01-04 Mikkel Thorup

Balls are sequentially allocated into $n$ bins as follows: for each ball, an independent, uniformly random bin is generated. An overseer may then choose to either allocate the ball to this bin, or else the ball is allocated to a new…

Probability · Mathematics 2018-07-04 Ohad N. Feldheim , Ori Gurel-Gurevich

A fundamental problem in distributed computing is the distribution of requests to a set of uniform servers without a centralized controller. Classically, such problems are modeled as static balls into bins processes, where $m$ balls (tasks)…

Distributed, Parallel, and Cluster Computing · Computer Science 2016-03-08 Petra Berenbrink , Tom Friedetzky , Peter Kling , Frederik Mallmann-Trenn , Lars Nagel , Chris Wastell

Load balancing is a well-studied problem, with balls-in-bins being the primary framework. The greedy algorithm $\mathsf{Greedy}[d]$ of Azar et al. places each ball by probing $d > 1$ random bins and placing the ball in the least loaded of…

Data Structures and Algorithms · Computer Science 2018-01-24 John Augustine , William K. Moses , Amanda Redlich , Eli Upfal

The random walk $d$-ary cuckoo hashing algorithm was defined by Fotakis, Pagh, Sanders, and Spirakis to generalize and improve upon the standard cuckoo hashing algorithm of Pagh and Rodler. Random walk $d$-ary cuckoo hashing has low space…

Data Structures and Algorithms · Computer Science 2025-12-04 Tolson Bell , Alan Frieze

In multi-server distributed queueing systems, the access of stochastically arriving jobs to resources is often regulated by a dispatcher, also known as load balancer. A fundamental problem consists in designing a load balancing algorithm…

Probability · Mathematics 2025-02-23 Jonatha Anselmi , Francois Dufour

In Linear Hashing ($\mathsf{LH}$) with $\beta$ bins on a size $u$ universe ${\mathcal{U}=\{0,1,\ldots, u-1\}}$, items $\{x_1,x_2,\ldots, x_n\}\subset \mathcal{U}$ are placed in bins by the hash function $$x_i\mapsto (ax_i+b)\mod p \mod…

Data Structures and Algorithms · Computer Science 2024-05-21 Alek Westover

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

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

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

We consider the following balls-into-bins process with $n$ bins and $m$ balls: each ball is equipped with a mutually independent exponential clock of rate 1. Whenever a ball's clock rings, the ball samples a random bin and moves there if…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-07-03 Petra Berenbrink , Peter Kling , Christopher Liaw , Abbas Mehrabian

Consider a situation with $n$ agents or players where some of the players form a coalition with a certain collective objective. Simple games are used to model systems that can decide whether coalitions are successful (winning) or not…

Computer Science and Game Theory · Computer Science 2016-09-19 Martin Olsen

For fixed weights w_1,...,w_n, and for d>0, we let B denote a collection of d*n balls, with d balls of weight w_i for each i=1,...,n. We consider the problem of assigning the balls to n bins with capacities C_1,...,C_n, in such a way that…

Combinatorics · Mathematics 2019-09-06 Claudiu Raicu

We consider the allocation problem in which $m \leq (1-\epsilon) dn $ items are to be allocated to $n$ bins with capacity $d$. The items $x_1,x_2,\ldots,x_m$ arrive sequentially and when item $x_i$ arrives it is given two possible bin…

Data Structures and Algorithms · Computer Science 2017-08-24 Alan Frieze , Samantha Petti

This paper analyzes a variation on the well-known "power of two choices" allocation algorithms. Classically, the smallest of $d$ randomly-chosen options is selected. We investigate what happens when the largest of $d$ randomly-chosen…

Data Structures and Algorithms · Computer Science 2026-03-23 Amanda Redlich

The graphical balls-into-bins process is a generalization of the classical 2-choice balls-into-bins process, where the bins correspond to vertices of an arbitrary underlying graph $G$. At each time step an edge of $G$ is chosen uniformly at…

Discrete Mathematics · Computer Science 2021-11-23 Nikhil Bansal , Ohad Feldheim

We study a natural process for allocating m balls into n bins that are organized as the vertices of an undirected graph G. Balls arrive one at a time. When a ball arrives, it first chooses a vertex u in G uniformly at random. Then the ball…

Probability · Mathematics 2014-02-18 Karl Bringmann , Thomas Sauerwald , Alexandre Stauffer , He Sun

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

Randomized algorithms and data structures are often analyzed under the assumption of access to a perfect source of randomness. The most fundamental metric used to measure how "random" a hash function or a random number generator is, is its…

Data Structures and Algorithms · Computer Science 2015-02-23 Mathias Bæk Tejs Knudsen , Morten Stöckel

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