Table of Contents
Fetching ...

An Improved Drift Theorem for Balanced Allocations

Dimitrios Los, Thomas Sauerwald

TL;DR

This work advances the theory of balanced allocations by presenting an improved drift theorem for the hyperbolic cosine potential, with weaker preconditions and applicability to processes that allocate to multiple bins or use varying batch sizes. The authors decouple overload and underload analyses, enabling tight $O(\log n / \beta)$ gap bounds for the $1+\beta$-process and extending these results to weighted graphical allocations, Quantile variants, Reset-Memory, and the $b$-batched setting. The framework encompasses diverse processes and weight distributions (finite-MGF) and yields both upper bounds and near-matching lower bounds, significantly broadening the class of processes for which precise gap behavior is understood. This deepens our understanding of load balancing under limited sampling or outdated information and provides a versatile toolkit for analyzing new allocation schemes.

Abstract

In the balanced allocations framework, there are $m$ jobs (balls) to be allocated to $n$ servers (bins). The goal is to minimize the gap, the difference between the maximum and the average load. Peres, Talwar and Wieder (RSA 2015) used the hyperbolic cosine potential function to analyze a large family of allocation processes including the $(1+β)$-process and graphical balanced allocations. The key ingredient was to prove that the potential drops in every step, i.e., a drift inequality. In this work we improve the drift inequality so that (i) it is asymptotically tighter, (ii) it assumes weaker preconditions, (iii) it applies not only to processes allocating to more than one bin in a single step and (iv) to processes allocating a varying number of balls depending on the sampled bin. Our applications include the processes of (RSA 2015), but also several new processes, and we believe that our techniques may lead to further results in future work.

An Improved Drift Theorem for Balanced Allocations

TL;DR

This work advances the theory of balanced allocations by presenting an improved drift theorem for the hyperbolic cosine potential, with weaker preconditions and applicability to processes that allocate to multiple bins or use varying batch sizes. The authors decouple overload and underload analyses, enabling tight gap bounds for the -process and extending these results to weighted graphical allocations, Quantile variants, Reset-Memory, and the -batched setting. The framework encompasses diverse processes and weight distributions (finite-MGF) and yields both upper bounds and near-matching lower bounds, significantly broadening the class of processes for which precise gap behavior is understood. This deepens our understanding of load balancing under limited sampling or outdated information and provides a versatile toolkit for analyzing new allocation schemes.

Abstract

In the balanced allocations framework, there are jobs (balls) to be allocated to servers (bins). The goal is to minimize the gap, the difference between the maximum and the average load. Peres, Talwar and Wieder (RSA 2015) used the hyperbolic cosine potential function to analyze a large family of allocation processes including the -process and graphical balanced allocations. The key ingredient was to prove that the potential drops in every step, i.e., a drift inequality. In this work we improve the drift inequality so that (i) it is asymptotically tighter, (ii) it assumes weaker preconditions, (iii) it applies not only to processes allocating to more than one bin in a single step and (iv) to processes allocating a varying number of balls depending on the sampled bin. Our applications include the processes of (RSA 2015), but also several new processes, and we believe that our techniques may lead to further results in future work.
Paper Structure (29 sections, 35 theorems, 160 equations, 7 figures)

This paper contains 29 sections, 35 theorems, 160 equations, 7 figures.

Key Result

Theorem 2.1

Consider any two processes $\mathcal{P}$ and $\mathcal{Q}$ with probability allocation vectors $p^t$ and $q^t$ respectively, such that $p^t \succeq q^t$ for every step $t \geqslant 0$. Then, $y_{\mathcal{P}}^t \succeq y_{\mathcal{Q}}^t$ and in particular $(y_{\mathcal{P}}^t)_1 \geqslant (y_{\mathcal

Figures (7)

  • Figure 2.1: The two cases for the $\textsc{Quantile}\xspace(\delta)$ process: (left) Allocate to the first sample if its rank is above $n \cdot \delta$, (center) allocate to the second sample (in this case a light bin) if the rank of the first bin was at most $n \cdot \delta$ and (right) allocate to the second sample which could also be a heavy bin.
  • Figure 2.2: The two cases for the $\textsc{Quantile-Twinning}\xspace(\delta)$ process: (left) Allocate one ball if the rank of the sampled bin is at most $n \cdot \delta$, otherwise (right) two balls to the sampled bin.
  • Figure 2.3: Three cases for the $\textsc{Quantile-With-Penalty}\xspace(\delta)$ process: Allocating one ball to the first sample or two balls to the second sample (cf. \ref{['fig:quantile_process']}).
  • Figure 4.1: The two cases of bad bins ($\mathcal{B}_+ \neq \emptyset$ and $\mathcal{B}_- \neq \emptyset$ respectively) in a load vector and their dominant terms in $\Delta\overline{\Gamma}$ for each of the set of bins. The dominant terms that are decreasing are shown in green and the dominant terms that are increasing are shown in red.
  • Figure 4.2: The dominant contributions for the bins in $\mathcal{G_+}$, $\mathcal{B}_+$ and $\mathcal{G}_-$ in Case A. In the analysis of Case A.1, the positive contribution of the bins in $\mathcal{B}_+$ (shown in red) is counteracted by a fraction of the negative contribution of the good bins $\mathcal{G}_+$ shown in green, (pessimistically) assuming they all have load $z_1$. In gray are the remaining negative contributions of the good bins.
  • ...and 2 more figures

Theorems & Definitions (69)

  • Theorem 2.1: Majorization, cf. ABKU99
  • Lemma 2.2
  • proof
  • Proposition 2.3
  • proof
  • Proposition 2.4
  • proof
  • Proposition 2.5
  • Proposition 2.6
  • proof
  • ...and 59 more