English

The Variable-Processor Cup Game

Data Structures and Algorithms 2021-02-11 v2

Abstract

The problem of scheduling tasks on pp processors so that no task ever gets too far behind is often described as a game with cups and water. In the pp-processor cup game on nn cups, there are two players, a filler and an emptier, that take turns adding and removing water from a set of nn cups. In each turn, the filler adds pp units of water to the cups, placing at most 11 unit of water in each cup, and then the emptier selects pp cups to remove up to 11 unit of water from. The emptier's goal is to minimize the backlog, which is the height of the fullest cup. The pp-processor cup game has been studied in many different settings, dating back to the late 1960's. All of the past work shares one common assumption: that pp is fixed. This paper initiates the study of what happens when the number of available processors pp varies over time, resulting in what we call the \emph{variable-processor cup game}. Remarkably, the optimal bounds for the variable-processor cup game differ dramatically from its classical counterpart. Whereas the pp-processor cup has optimal backlog Θ(logn)\Theta(\log n), the variable-processor game has optimal backlog Θ(n)\Theta(n). Moreover, there is an efficient filling strategy that yields backlog Ω(n1ϵ)\Omega(n^{1 - \epsilon}) in quasi-polynomial time against any deterministic emptying strategy. We additionally show that straightforward uses of randomization cannot be used to help the emptier. In particular, for any positive constant Δ\Delta, and any Δ\Delta-greedy-like randomized emptying algorithm A\mathcal{A}, there is a filling strategy that achieves backlog Ω(n1ϵ)\Omega(n^{1 - \epsilon}) against A\mathcal{A} in quasi-polynomial time.

Keywords

Cite

@article{arxiv.2012.00127,
  title  = {The Variable-Processor Cup Game},
  author = {William Kuszmaul and Alek Westover},
  journal= {arXiv preprint arXiv:2012.00127},
  year   = {2021}
}