Abstract

In the classical balls-and-bins paradigm, where nn balls are placed independently and uniformly in nn bins, typically the number of bins with at least two balls in them is Θ(n)Θ(n) and the maximum number of balls in a bin is Θ(log⁡nlog⁡log⁡n)Θ(\frac{\log n}{\log \log n}). It is well known that when each round offers kk independent uniform options for bins, it is possible to typically achieve a constant maximal load if and only if k=Ω(log⁡n)k=Ω(\log n). Moreover, it is possible w.h.p. to avoid any collisions between n/2n/2 balls if k>log⁡2nk>\log_2n. In this work, we extend this into the setting where only mm bits of memory are available. We establish a tradeoff between the number of choices kk and the memory mm, dictated by the quantity km/nkm/n. Roughly put, we show that for km≫nkm\gg n one can achieve a constant maximal load, while for km≪nkm\ll n no substantial improvement can be gained over the case k=1k=1 (i.e., a random allocation). For any k=Ω(log⁡n)k=Ω(\log n) and m=Ω(log⁡2n)m=Ω(\log^2n), one can achieve a constant load w.h.p. if km=Ω(n)km=Ω(n), yet the load is unbounded if km=o(n)km=o(n). Similarly, if km>Cnkm>Cn then n/2n/2 balls can be allocated without any collisions w.h.p., whereas for km<εnkm<εn there are typically Ω(n)Ω(n) collisions. Furthermore, we show that the load is w.h.p. at least log⁡(n/m)log⁡k+log⁡log⁡(n/m)\frac{\log(n/m)}{\log k+\log\log(n/m)}. In particular, for k≤polylog⁡(n)k\leq\operatorname {polylog}(n), if m=n1−δm=n^{1-δ} the optimal maximal load is Θ(log⁡nlog⁡log⁡n)Θ(\frac{\log n}{\log\log n}) (the same as in the case k=1k=1), while m=2nm=2n suffices to ensure a constant load. Finally, we analyze nonadaptive allocation algorithms and give tight upper and lower bounds for their performance.

Explore this paper’s authors, topics and related work.

Building this map preview

BZPEER is loading the nearby papers, people, topics and institutions for this page.

Reviews 0

Write a reviewWrite

No reviews yet.

Discussion 0

Add a commentWrite

No comments yet.