TY - GEN
T1 - Choice-memory tradeoff in allocations
AU - Alon, Noga
AU - Lubetzky, Eyal
AU - Gurel-Gurevich, Ori
PY - 2009
Y1 - 2009
N2 - 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 Θ(n) and the maximum number of balls in a bin is Θ(log n/log log n). It is well known that when each round offers k independent uniform options for bins, it is possible to typically achieve a constant maximal load if and only if k = Ω(log n). Moreover, it is possible whp to avoid any collisions between n/2 balls if k > log2 n. In this work, we extend this into the setting where only m bits of memory are available. We establish a tradeoff between the number of choices k and the memory m, dictated by the quantity krn/n. Roughly put, we show that for km >> n one can achieve a constant maximal load, while for km << nno substantial improvement can be gained over the case k = 1 (i.e., a random allocation). For any k = Ω(log n) and m = Ω(log2 n), one can typically achieve a constant load if km = Ω(n), yet the load is unbounded if km = o(n). Similarly, if km > Cn then n/2 balls can be allocated without any collisions whp, whereas for km < en there are typically Ω(n) collisions. Furthermore, we show that the load is whp at least log(n/m)/log k+log log(n/m) In particular, whenever k ≤ polylog(n), if m = n1-δ the optimal maximal load is Θ(log n/log log n) (the same as in the case k = 1), while m = 2n suffices to ensure a constant load. Finally, we analyze non-adaptive allocation algorithms and give tight upper and lower bounds for their performance.
AB - 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 Θ(n) and the maximum number of balls in a bin is Θ(log n/log log n). It is well known that when each round offers k independent uniform options for bins, it is possible to typically achieve a constant maximal load if and only if k = Ω(log n). Moreover, it is possible whp to avoid any collisions between n/2 balls if k > log2 n. In this work, we extend this into the setting where only m bits of memory are available. We establish a tradeoff between the number of choices k and the memory m, dictated by the quantity krn/n. Roughly put, we show that for km >> n one can achieve a constant maximal load, while for km << nno substantial improvement can be gained over the case k = 1 (i.e., a random allocation). For any k = Ω(log n) and m = Ω(log2 n), one can typically achieve a constant load if km = Ω(n), yet the load is unbounded if km = o(n). Similarly, if km > Cn then n/2 balls can be allocated without any collisions whp, whereas for km < en there are typically Ω(n) collisions. Furthermore, we show that the load is whp at least log(n/m)/log k+log log(n/m) In particular, whenever k ≤ polylog(n), if m = n1-δ the optimal maximal load is Θ(log n/log log n) (the same as in the case k = 1), while m = 2n suffices to ensure a constant load. Finally, we analyze non-adaptive allocation algorithms and give tight upper and lower bounds for their performance.
UR - http://www.scopus.com/inward/record.url?scp=77952374716&partnerID=8YFLogxK
U2 - 10.1109/FOCS.2009.49
DO - 10.1109/FOCS.2009.49
M3 - ???researchoutput.researchoutputtypes.contributiontobookanthology.conference???
AN - SCOPUS:77952374716
SN - 9780769538501
T3 - Proceedings - Annual IEEE Symposium on Foundations of Computer Science, FOCS
SP - 230
EP - 238
BT - Proceedings - 50th Annual Symposium on Foundations of Computer Science, FOCS 2009
T2 - 50th Annual Symposium on Foundations of Computer Science, FOCS 2009
Y2 - 25 October 2009 through 27 October 2009
ER -