Non-Preemptive Flow with Rejections x Carnegie Mellon University x - - PowerPoint PPT Presentation

non preemptive flow with rejections
SMART_READER_LITE
LIVE PREVIEW

Non-Preemptive Flow with Rejections x Carnegie Mellon University x - - PowerPoint PPT Presentation

Non-Preemptive Flow with Rejections x Carnegie Mellon University x ICALP 2018 x Non-Preemptive Flow with Rejections Job Scheduling Problem Jobs arrive online Release time r j , processing time p j , weight w j Single machine (this talk)


slide-1
SLIDE 1

Non-Preemptive Flow with Rejections

x Carnegie Mellon University x ICALP 2018

x Non-Preemptive Flow with Rejections

slide-2
SLIDE 2

Job Scheduling Problem

Jobs arrive online

Release time rj, processing time pj, weight wj

Single machine (this talk)

Finish time tj: time job j finished by machine (tj ≥ rj + pj)

Goal: minimize total flow time:

  • job j

wj · (tj − rj) =

  • job j

wj · (time j stays in system) Online: do not know future jobs in advance Goal: be competitive with best offline Different policies: preemption, rejection

x Non-Preemptive Flow with Rejections

slide-3
SLIDE 3

Online Is Hard

Typical setting:

Preemption: (can switch jobs before finishing current job) No rejection: must finish all jobs

[BBCD 03] nΩ(1) competitive lower bound (randomized) Simple lower bound (no preemption, deterministic)

t = 0: job A, wA = 1, pA = 1 As soon as algo processes A, release B with wB = M, pB = 1/M (M is large) ALG cannot preempt A = ⇒ ALG ≥ M OPT = O(1)

To be competitive (with offline), online needs different model

x Non-Preemptive Flow with Rejections

slide-4
SLIDE 4

Online Models

[KP 00] Speed augmentation model:

ALG’s machine is faster by (1 + ǫ) ⇐ ⇒ for ALG, pj ← pj/(1 + ǫ) Only need to be competitive with offline without speed augmentation [CGKM 09] poly(1/ǫ)-competitive

Greedy algo Proof: potential function Also works for multiple, unrelated machines

[AGK 12] Proof via dual fitting

[CDGK 18] Rejection model

No preemption: cannot switch jobs until current job done Rejection: can reject ǫ fraction total weight of jobs Competitive with offline preemption, no rejection Intuition: rejecting “random” ǫ-fraction is like (1 + ǫ)-speed

Main result: poly(1/ǫ)-competitive in this model Follow dual fitting framework of [AGK 12]

x Non-Preemptive Flow with Rejections

slide-5
SLIDE 5

Dual Fitting Framework [AGK 12]

Dual fitting: systematic way to study online algos For job j:

X := flow time of HDF policy for jobs 1 to (j − 1) Y := flow time of HDF policy for jobs 1 to j αj := Y − X αj is marginal increase in flow time from job j (for HDF) Motivation: αj represents a dual variable in LP relaxation

  • j αj is total flow time of HDF algo

Thm (dual fitting): OPT ≥

j αj − ALG

Goal: ALG ≤ (1 − ǫ3) ·

j αj

= ⇒ 1/ǫ3-competitive Intuition:

1

Make ALG “almost-HDF”: ALG ≤ (1 + ǫ3) ·

  • accepted j

αj

2

Reject jobs with large αj (can compute αj online!) = ⇒

  • accepted j

αj ≤ (1 − 2ǫ3) ·

  • all j

αj

x Non-Preemptive Flow with Rejections

slide-6
SLIDE 6

(1) Make ALG “almost-HDF”

Problem: online model is no preemption Fix: whenever preempt, reject instead Goal: maintain almost-HDF, but preempt only ǫ-fraction Algorithm outline:

For current job j, time t: consider lighter jobs that arrive later than j

rj ≤ rj′ ≤ t and w′

j < wj

HDF should have preempted j for some j′

If total weight of such jobs exceeds wj/ǫ, then preempt j Charge preemption of j to the arrivals of these jobs = ⇒ preempt ≤ ǫ-fraction of total weight

Thm: if always process a current job j such that

  • unfinished

lighter jobs j′

wj′ ≤ wj/ǫ, i.e., “almost-HDF”, then ALG ≤

acc j αj + j wjpj/ǫ

x Non-Preemptive Flow with Rejections

slide-7
SLIDE 7

(2) Reject Jobs with Large αj

Goal: reject jobs such that

rej j αj ≥ poly(ǫ) · j αj and

  • rej j wj ≤ ǫ ·

j wj

Recall: can compute αj values online Randomized achieves it in expectation Deterministic is header: most technically involved part

Bucket into geometric increasing classes based on αj, wj, pj Charge to class with largest geometric power

x Non-Preemptive Flow with Rejections

slide-8
SLIDE 8

Open Questions

Total flow time

job j wj · (tj − rj) is “ℓ1-norm”

Can we prove results for ℓp norm (constant p)? [AGK 12] Speed augmentation setting: same dual fitting technique solves ℓp norm What about ℓ∞ norm? name for it?

x Non-Preemptive Flow with Rejections