Balanced Allocations: Caching and Packing, Twinning and Thinning

10/20/2021
by   Dimitrios Los, et al.
0

We consider the sequential allocation of m balls (jobs) into n bins (servers) by allowing each ball to choose from some bins sampled uniformly at random. The goal is to maintain a small gap between the maximum load and the average load. In this paper, we present a general framework that allows us to analyze various allocation processes that slightly prefer allocating into underloaded, as opposed to overloaded bins. Our analysis covers several natural instances of processes, including: The Caching process (a.k.a. memory protocol) as studied by Mitzenmacher, Prabhakar and Shah (2002): At each round we only take one bin sample, but we also have access to a cache in which the most recently used bin is stored. We place the ball into the least loaded of the two. The Packing process: At each round we only take one bin sample. If the load is below some threshold (e.g., the average load), then we place as many balls until the threshold is reached; otherwise, we place only one ball. The Twinning process: At each round, we only take one bin sample. If the load is below some threshold, then we place two balls; otherwise, we place only one ball. The Thinning process as recently studied by Feldheim and Gurel-Gurevich (2021): At each round, we first take one bin sample. If its load is below some threshold, we place one ball; otherwise, we place one ball into a second bin sample. As we demonstrate, our general framework implies for all these processes a gap of 𝒪(log n) between the maximum load and average load, even when an arbitrary number of balls m ≥ n are allocated (heavily loaded case). Our analysis is inspired by a previous work of Peres, Talwar and Wieder (2010) for the (1+β)-process, however here we rely on the interplay between different potential functions to prove stabilization.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
04/08/2022

The Power of Filling in Balanced Allocations

It is well known that if m balls (jobs) are placed sequentially into n b...
research
08/09/2023

Mean-Biased Processes for Balanced Allocations

We introduce a new class of balanced allocation processes which bias tow...
research
08/21/2023

An Improved Drift Theorem for Balanced Allocations

In the balanced allocations framework, there are m jobs (balls) to be al...
research
01/24/2023

Balanced Allocations with Heterogeneous Bins: The Power of Memory

We consider the allocation of m balls (jobs) into n bins (servers). In t...
research
07/03/2018

The power of thinning in balanced allocation

Balls are sequentially allocated into n bins as follows: for each ball, ...
research
04/11/2021

Load Balancing with Dynamic Set of Balls and Bins

In dynamic load balancing, we wish to distribute balls into bins in an e...
research
03/25/2022

Balanced Allocations in Batches: Simplified and Generalized

We consider the allocation of m balls (jobs) into n bins (servers). In t...

Please sign up or login with your details

Forgot password? Click here to reset