Table of Contents
Fetching ...

The Power of Filling in Balanced Allocations

Dimitrios Los, Thomas Sauerwald, John Sylvester

TL;DR

This work introduces Filling processes, a broad class of balanced-allocation rules that fill underloaded bins using weak (majorized-by-uniform) sampling. It proves a universal $O(\log n)$ gap bound for any Filling process and demonstrates Packing as a prototypical, throughput-efficient example that beats One-Choice in samples-per-ball while maintaining the same logarithmic gap. Memory is analyzed through an unfolding technique that embeds it into the Filling framework, enabling the gap bound to extend to polynomially many allocations. The paper also establishes lower bounds, explores biased sampling vectors, and provides experimental validation, underscoring the practical impact of achieving strong balance with minimal sampling.

Abstract

We introduce a new class of balanced allocation processes which are primarily characterized by ``filling'' underloaded bins. A prototypical example is the Packing process: At each round we only take one bin sample, if the load is below the average load, then we place as many balls until the average load is reached; otherwise, we place only one ball. We prove that for any process in this class the gap between the maximum and average load is $\mathcal{O}(\log n)$ w.h.p. for any number of balls $m\geq 1$. For the Packing process, we also provide a matching lower bound. Additionally, we prove that the Packing process is sample-efficient in the sense that the expected number of balls allocated per sample is strictly greater than one. Finally, we also demonstrate that the upper bound of $\mathcal{O}(\log n)$ on the gap can be extended to the Memory process studied by Mitzenmacher, Prabhakar and Shah (2002).

The Power of Filling in Balanced Allocations

TL;DR

This work introduces Filling processes, a broad class of balanced-allocation rules that fill underloaded bins using weak (majorized-by-uniform) sampling. It proves a universal gap bound for any Filling process and demonstrates Packing as a prototypical, throughput-efficient example that beats One-Choice in samples-per-ball while maintaining the same logarithmic gap. Memory is analyzed through an unfolding technique that embeds it into the Filling framework, enabling the gap bound to extend to polynomially many allocations. The paper also establishes lower bounds, explores biased sampling vectors, and provides experimental validation, underscoring the practical impact of achieving strong balance with minimal sampling.

Abstract

We introduce a new class of balanced allocation processes which are primarily characterized by ``filling'' underloaded bins. A prototypical example is the Packing process: At each round we only take one bin sample, if the load is below the average load, then we place as many balls until the average load is reached; otherwise, we place only one ball. We prove that for any process in this class the gap between the maximum and average load is w.h.p. for any number of balls . For the Packing process, we also provide a matching lower bound. Additionally, we prove that the Packing process is sample-efficient in the sense that the expected number of balls allocated per sample is strictly greater than one. Finally, we also demonstrate that the upper bound of on the gap can be extended to the Memory process studied by Mitzenmacher, Prabhakar and Shah (2002).
Paper Structure (23 sections, 29 theorems, 133 equations, 6 figures, 2 tables)

This paper contains 23 sections, 29 theorems, 133 equations, 6 figures, 2 tables.

Key Result

Theorem 3.1

There exists a constant $C>0$, such that for any allocation process satisfying conditions p1 and w1, and any round $m \geqslant 1$, we have

Figures (6)

  • Figure 3.1: Illustration of one round for a Filling process. After the underloaded bin $i$ is picked, $\lceil -y_i^{t} \rceil + 1 = 6$ balls are allocated. Only one bin $k_1$ receives $\lceil -y_{k_1}^t \rceil + 1$ balls and only one bin $k_2$ receives $\lceil -y_{k_2}^t \rceil$ balls, i.e., at most one allocated bin attains a load in the orange region and at most one in the blue region. All other bins $j$ receive at most $\lceil -y_{j}^t \rceil - 1$ balls.
  • Figure 3.2: Illustration of the two different possibilities in a single round of the Packing process: (left) allocating a single ball to an overloaded bin and (right) filling an underloaded bin.
  • Figure 3.3: Illustration of the two different possibilities in a single round of the Tight-Packing process: (left) allocating a single ball to an overloaded bin and (right) allocating as many balls as the underload of the selected bin, to the most underloaded bins. Note that only one of the three bins where balls were allocated, attains a load of $\geqslant \lceil W^t/n\rceil$.
  • Figure 3.4: Illustration of the two different possibilities in a single round of the Memory process: (left) allocating to the sampled bin and (right) updating the cache or allocating to the cache (shown in green).
  • Figure 8.1: Average Gap vs. $n \in \{ 10^3, 10^4, 5 \cdot 10^4, 10^5\}$ for the experimental setup of \ref{['tab:gap_distribution']}.
  • ...and 1 more figures

Theorems & Definitions (53)

  • Theorem 3.1
  • Theorem 3.2
  • Corollary 3.2
  • Lemma 3.4
  • proof
  • Theorem 3.5
  • Lemma 3.6
  • proof
  • Lemma 3.6
  • Lemma 3.6
  • ...and 43 more