Storing a Sparse Table with 0(1) Worst Case Access Time
Journal of the ACM (JACM)
Simple, efficient shared memory simulations
SPAA '93 Proceedings of the fifth annual ACM symposium on Parallel algorithms and architectures
Dynamic Perfect Hashing: Upper and Lower Bounds
SIAM Journal on Computing
Parallel randomized load balancing
STOC '95 Proceedings of the twenty-seventh annual ACM symposium on Theory of computing
Sudden emergence of a giant k-core in a random graph
Journal of Combinatorial Theory Series B
Exploiting storage redundancy to speed up randomized shared memory simulations
Theoretical Computer Science
The art of computer programming, volume 1 (3rd ed.): fundamental algorithms
The art of computer programming, volume 1 (3rd ed.): fundamental algorithms
Randomized protocols for low-congestion circuit routing in multistage interconnection networks
STOC '98 Proceedings of the thirtieth annual ACM symposium on Theory of computing
Expected Length of the Longest Probe Sequence in Hash Code Searching
Journal of the ACM (JACM)
SIAM Journal on Computing
Balanced allocations: the heavily loaded case
STOC '00 Proceedings of the thirty-second annual ACM symposium on Theory of computing
Fast concurrent access to parallel disks
SODA '00 Proceedings of the eleventh annual ACM-SIAM symposium on Discrete algorithms
A New Universal Class of Hash Functions and Dynamic Hashing in Real Time
ICALP '90 Proceedings of the 17th International Colloquium on Automata, Languages and Programming
Space Efficient Hash Tables with Worst Case Constant Access Time
STACS '03 Proceedings of the 20th Annual Symposium on Theoretical Aspects of Computer Science
Shared Memory Simulations with Triple-Logarithmic Delay
ESA '95 Proceedings of the Third Annual European Symposium on Algorithms
Uniform hashing in constant time and linear space
Proceedings of the thirty-fifth annual ACM symposium on Theory of computing
Almost random graphs with simple hash functions
Proceedings of the thirty-fifth annual ACM symposium on Theory of computing
Cuckoo hashing: further analysis
Information Processing Letters
Randomized Allocation Processes
FOCS '97 Proceedings of the 38th Annual Symposium on Foundations of Computer Science
How Asymmetry Helps Load Balancing
FOCS '99 Proceedings of the 40th Annual Symposium on Foundations of Computer Science
Efficient hashing with lookups in two memory accesses
SODA '05 Proceedings of the sixteenth annual ACM-SIAM symposium on Discrete algorithms
An improved construction for counting bloom filters
ESA'06 Proceedings of the 14th conference on Annual European Symposium - Volume 14
Balls and bins with structure: balanced allocations on hypergraphs
Proceedings of the nineteenth annual ACM-SIAM symposium on Discrete algorithms
IWOCA'10 Proceedings of the 21st international conference on Combinatorial algorithms
Tight bounds for parallel randomized load balancing: extended abstract
Proceedings of the forty-third annual ACM symposium on Theory of computing
Journal of Discrete Algorithms
Journal of Parallel and Distributed Computing
Hi-index | 0.00 |
It is well known that if n balls are inserted into n bins, with high probability, the bin with maximum load contains (1 + o(1)) log n/log log n balls. Azar, Broder, Karlin, and Upfal [1] showed that instead of choosing one bin, if d ≥ 2 bins are chosen at random and the ball in serted into the least loaded of the d bins, the maximum load reduces drastically to log log n/log d + O(1). In this paper, we study the two choice balls and bins process when balls are not allowed to choose any two random bins, but only bins that are connected by an edge in an underlying graph. We show that for n balls and n bins, if the graph is almost regular with degree nε, where ε is not too small, the previous bounds on the maximum load continue to hold. Precisely, the maximum load is log log n + O(1/ε) + O(1). So even if the graph has degree nΩ(1/log log n), the maximum load is O(log log n). For general Δ-regular graphs, we show that the maximum load is log log n + O(log n/log (Δ/log4 n)) + O(1) and also provide an almost matching lower bound of log log n + log n/log (Δ log n). Further this does not hold for non-regular graphs even if the minimum degree is high.Vöcking [29] showed that the maximum bin size with d choice load balancing can be further improved to O(log log n/d) by breaking ties to the left. This requires d random bin choices. We show that such bounds can be achieved by making only two random accesses and querying d/2 contiguous bins in each access. By grouping a sequence of n bins into 2n/d groups, each of d/2 consecutive bins, if each ball chooses two groups at random and inserts the new ball into the least-loaded bin in the lesser loaded group, then the maximum load is O(log log n/d) with high probability. Furthermore, it also turns out that this partitioning into aligned groups of size d/2 is also essential in achieving this bound, that is, instead of choosing two aligned groups, if we simply choose random but possibly unaligned random sets of d/2 consecutive bins, then the maximum load jumps to Ω(log log n/log d) even if the two sets are always chosen to be disjoint.