Table of Contents
Fetching ...

Online Flexible Busy Time Scheduling on Heterogeneous Machines

Gruia Calinescu, Sami Davies, Samir Khuller, Shirley Zhang

TL;DR

This work designs an 8-competitive algorithm for the problem on unit-length jobs, and provides a lower bound on the competitive ratio of 2.5, proving that the lower bound is tight in the natural setting when jobs have agreeable deadlines.

Abstract

We study the online busy time scheduling model on heterogeneous machines. In our setting, unit-length jobs arrive online with a deadline that is known to the algorithm at the job's arrival time. An algorithm has access to machines, each with different associated capacities and costs. The goal is to schedule jobs on machines before their deadline, so that the total cost incurred by the scheduling algorithm is minimized. Relatively little is known about online busy time scheduling when machines are heterogeneous (i.e., have different costs and capacities), despite this being the most practical model for clients using cloud computing services. We make significant progress in understanding this model by designing an 8-competitive algorithm for the problem on unit-length jobs, and providing a lower bound on the competitive ratio of 2. We further prove that our lower bound is tight in the natural setting when jobs have agreeable deadlines.

Online Flexible Busy Time Scheduling on Heterogeneous Machines

TL;DR

This work designs an 8-competitive algorithm for the problem on unit-length jobs, and provides a lower bound on the competitive ratio of 2.5, proving that the lower bound is tight in the natural setting when jobs have agreeable deadlines.

Abstract

We study the online busy time scheduling model on heterogeneous machines. In our setting, unit-length jobs arrive online with a deadline that is known to the algorithm at the job's arrival time. An algorithm has access to machines, each with different associated capacities and costs. The goal is to schedule jobs on machines before their deadline, so that the total cost incurred by the scheduling algorithm is minimized. Relatively little is known about online busy time scheduling when machines are heterogeneous (i.e., have different costs and capacities), despite this being the most practical model for clients using cloud computing services. We make significant progress in understanding this model by designing an 8-competitive algorithm for the problem on unit-length jobs, and providing a lower bound on the competitive ratio of 2. We further prove that our lower bound is tight in the natural setting when jobs have agreeable deadlines.
Paper Structure (22 sections, 12 theorems, 12 equations, 6 figures, 3 algorithms)

This paper contains 22 sections, 12 theorems, 12 equations, 6 figures, 3 algorithms.

Key Result

Theorem 1

There is an 8-competitive algorithm for online unit-length busy time scheduling on heterogeneous machines with run-time $O(n \log n)$, for $n$ the total number of jobs.

Figures (6)

  • Figure 1: An illustration of an argument from the proof of Lemma \ref{['two_disjoint']}, precisely why $d_{j_2} = \tau_2$: If $\tau_2 < d_{j_2}$, then one of the dashed jobs/intervals must end at $\tau_2$. However, the upper dashed job cannot exist since $j_2$ is chosen as having the earliest deadline among the jobs scheduled in $\mathcal{X}_{\tau_2}$, while the lower dashed job cannot exist since it is not agreeable with $j_2$.
  • Figure 2: There are 11 jobs shown in black. The three different frames depict possible valid interval assignments for the jobs. There are four types of machines, with costs $2^k$ for $k \in \{0, 1, 2,3\}$ and with capacities $\{2, 5, 11, 22\}$. Each interval assignment implies a different lower bound for cost(OPT), as in Lemma \ref{['lem: valid-assgn-lb']}. We obtain better lower bounds moving from left-to-right in the frames, with bounds $2, 9/4$, and $5/2$, respectively. Note that an optimal assignment here has cost 5, with 3 batches with type 0 and 1 batch of type 1.
  • Figure 3: Distribution of credits from batch $X$ with $k = 2$. For interval types 0, 1, and 2, $X$ distributes $2^{t_{I_j}}/|J_{I(j)}|$ credits per job, and there are at most $|J_{I(j)}|$ jobs in each interval type. For each job in interval types 3 and 4, $X$ distributes $2^{k+1}/B_k$ credits, and there are at most $B_k$ such jobs in interval types 3 and 4 combined.
  • Figure 4: Constructing intervals. At time $\tau = d_{j^*}$, job $j^*$ (highest bold interval) must be executed. Algorithm \ref{['alg: type']} decides which machine type to use for the next batch at $\tau$ by constructing intervals $I_0,I_1,I_2,I_3$, which are indicated on the time horizon, where $I_0$ is the blue interval, $I_1$ is the union of the blue and orange intervals, $I_2$ is the union of the blue, orange, and pink intervals, and $I_3$ is the union of all colored intervals. These intervals are defined by taking the previous interval and extending it to the earliest arrival time of a job in the corresponding batch. Here Algorithm \ref{['alg: type']} decides to use a batch of type 3. Capacities of batches in this instance are $B_0=1$, $B_1=3$, $B_2 = 8$, $B_3 = 20$. Jobs with bold (arrival time, deadline) intervals are executed in the new batch, which can have less than $B_3$ jobs if these are all the jobs in the waiting list $W$.
  • Figure 5: An illustration for the proof of Theorem \ref{['thm: lb']}. Each red thick arrow represents the arrival of $M^3/2$ jobs. The short thin arrows represent the scheduling of a batch on a small machine, and the long thin arrows represent the scheduling of a batch on a large machine.
  • ...and 1 more figures

Theorems & Definitions (16)

  • Theorem 1
  • Theorem 2
  • Theorem 3
  • Lemma 4
  • Proposition 5
  • Proposition 7
  • Proposition 8
  • Definition 9
  • Lemma 10
  • Claim 11
  • ...and 6 more