English
Related papers

Related papers: The Power of Two Choices with Simple Tabulation

200 papers

In the classical balls-and-bins paradigm, where $n$ balls are placed independently and uniformly in $n$ bins, typically the number of bins with at least two balls in them is $\Theta(n)$ and the maximum number of balls in a bin is…

Combinatorics · Mathematics 2010-10-22 Noga Alon , Ori Gurel-Gurevich , Eyal Lubetzky

Suppose we sequentially put $n$ balls into $n$ bins. If we put each ball into a random bin then the heaviest bin will contain ${\sim}\log n/\log\log n$ balls with high probability. However, Azar, Broder, Karlin and Upfal [SIAM J. Comput. 29…

Data Structures and Algorithms · Computer Science 2012-09-13 Itai Benjamini , Yury Makarychev

In dynamic load balancing, we wish to distribute balls into bins in an environment where both balls and bins can be added and removed. We want to minimize the maximum load of any bin but we also want to minimize the number of balls and bins…

Data Structures and Algorithms · Computer Science 2021-04-13 Anders Aamand , Jakob Bæk Tejs Knudsen , 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

Designing algorithms for balanced allocation of clients to servers in dynamic settings is a challenging problem for a variety of reasons. Both servers and clients may be added and/or removed from the system periodically, and the main…

Data Structures and Algorithms · Computer Science 2017-07-28 Vahab Mirrokni , Mikkel Thorup , Morteza Zadimoghaddam

We consider load balancing in a network of caching servers delivering contents to end users. Randomized load balancing via the so-called power of two choices is a well-known approach in parallel and distributed systems. In this framework,…

Information Theory · Computer Science 2017-07-03 Mahdi Jafari Siavoshani , Ali Pourmiri , Seyed Pooya Shariatpanahi

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

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

We study parallel algorithms for the classical balls-into-bins problem, in which $m$ balls acting in parallel as separate agents are placed into $n$ bins. Algorithms operate in synchronous rounds, in each of which balls and bins exchange…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-04-17 Christoph Lenzen , Merav Parter , Eylon Yogev

We give a (strongly) history-independent two-choice balls-and-bins algorithm on $n$ bins that supports both insertions and deletions on a set of up to $m$ balls, while guaranteeing a maximum load of $m / n + O(1)$ with high probability, and…

Data Structures and Algorithms · Computer Science 2026-02-13 Michael A. Bender , William Kuszmaul , Elaine Shi , Rose Silver

Balanced allocation of online balls-into-bins has long been an active area of research for efficient load balancing and hashing applications.There exists a large number of results in this domain for different settings, such as parallel…

Data Structures and Algorithms · Computer Science 2011-12-30 Sourav Dutta , Souvik Bhattacherjee , Ankur Narang

The paradigm of many choices has influenced significantly the design of efficient data structures and, most notably, hash tables. Cuckoo hashing is a technique that extends this concept. There,we are given a table with $n$ locations, and we…

Data Structures and Algorithms · Computer Science 2009-10-28 Nikolaos Fountoulakis , Konstantinos Panagiotou

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

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

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

With double hashing, for a key $x$, one generates two hash values $f(x)$ and $g(x)$, and then uses combinations $(f(x) +i g(x)) \bmod n$ for $i=0,1,2,...$ to generate multiple hash values in the range $[0,n-1]$ from the initial two. For…

Data Structures and Algorithms · Computer Science 2015-03-03 Michael Mitzenmacher

Food waste and food insecurity are two closely related pressing global issues. Food rescue organizations worldwide run programs aimed at addressing the two problems. In this paper, we partner with a non-profit organization in the state of…

Computer Science and Game Theory · Computer Science 2024-06-11 Marios Mertzanidis , Alexandros Psomas , Paritosh Verma

We consider load balancing in a network of caching servers delivering contents to end users. Randomized load balancing via the so-called power of two choices is a well-known approach in parallel and distributed systems that reduces network…

Data Structures and Algorithms · Computer Science 2016-10-25 Ali Pourmiri , Mahdi Jafari Siavoshani , Seyed Pooya Shariatpanahi

We consider the sequential allocation of $m$ balls (jobs) into $n$ bins (servers) by allowing each ball to choose from some bins sampled uniformly at random. The goal is to maintain a small gap between the maximum load and the average load.…

Discrete Mathematics · Computer Science 2023-08-11 Dimitrios Los , Thomas Sauerwald , John Sylvester

Dietzfelbinger and Weidling [DW07] proposed a natural variation of cuckoo hashing where each of $cn$ objects is assigned $k = 2$ intervals of size $\ell$ in a linear (or cyclic) hash table of size $n$ and both start points are chosen…

Data Structures and Algorithms · Computer Science 2019-12-18 Stefan Walzer