English

Balanced allocation: Memory performance tradeoffs

Data Structures and Algorithms 2012-09-13 v2 Discrete Mathematics Probability

Abstract

Suppose we sequentially put nn balls into nn bins. If we put each ball into a random bin then the heaviest bin will contain logn/loglogn{\sim}\log n/\log\log n balls with high probability. However, Azar, Broder, Karlin and Upfal [SIAM J. Comput. 29 (1999) 180--200] showed that if each time we choose two bins at random and put the ball in the least loaded bin among the two, then the heaviest bin will contain only loglogn{\sim}\log\log n balls with high probability. How much memory do we need to implement this scheme? We need roughly logloglogn\log\log\log n bits per bin, and nlogloglognn\log\log\log n bits in total. Let us assume now that we have limited amount of memory. For each ball, we are given two random bins and we have to put the ball into one of them. Our goal is to minimize the load of the heaviest bin. We prove that if we have n1δn^{1-\delta} bits then the heaviest bin will contain at least Ω(δlogn/loglogn)\Omega(\delta\log n/\log\log n) balls with high probability. The bound is tight in the communication complexity model.

Keywords

Cite

@article{arxiv.0901.1155,
  title  = {Balanced allocation: Memory performance tradeoffs},
  author = {Itai Benjamini and Yury Makarychev},
  journal= {arXiv preprint arXiv:0901.1155},
  year   = {2012}
}

Comments

Published in at http://dx.doi.org/10.1214/11-AAP804 the Annals of Applied Probability (http://www.imstat.org/aap/) by the Institute of Mathematical Statistics (http://www.imstat.org)

R2 v1 2026-06-21T11:58:56.403Z