Title: Server Scheduling in the Lp norm
1Server Scheduling in the Lp norm
- Nikhil Bansal (CMU)
- Kirk Pruhs (Univ. of Pittsburgh)
2Scheduling
Provide service such that users are satisfied
3Motivation
- Single Machine
- Arbitrary arrival or release time ( rj)
- Arbitrary processing requirement or size ( pj)
t0 (r1)
r2
r3
4Motivation
Single Machine Arbitrary arrival or release time
( rj) Arbitrary processing requirement or size (
pj)
t0 (r1)
r2
r3
c1
c2
c3
Job 1 preempted
5Flow Time
- Completion time cj
- Flow time fj cj-rj (time user waits)
t0 (r1)
r2
r3
c1
c2
c3
Flow Time of Job 1
6Flow Time
- Completion time cj
- Flow time fj cj-rj (time user waits)
t0 (r1)
r2
r3
c1
c2
c3
Flow Time of Job 3
7Stretch
Stretch (i) Flow time (i) / Size (i)
Bender Chakrabarti
Muthukrishnan98
Jobs willing to tolerate flow time proportional
to size Also known as normalized flow time Each
job contributes equally
8Known Results
- Minimize total flow time (?i fi) L1 norm
- Optimal Online algorithm
- Work on job with smallest remaining proc. time
(SRPT) - SRPT is 2 competitive for total stretch
Gehrke, Muthukrishnan, Rajaraman, Shaheen99 - Concern Big jobs could be stuck! Starvation!
- Another end Minimize maximum flow time L1 norm
- First Come First Served (FCFS) is optimal
- But bad average performance Smalls stuck behind
big
9Balancing average and maximum
- Lp norms Penalize outliers, good average
performance - Online algorithms for minimizing
- Flow time (i.e. (?j fjp)1/p)
- Stretch (i.e. (?j sjp)1/p)
-
- Lp norms, previously studied
- Load balancing Awerbuch Azar Grove 95,
Alon Azar Woeginger
Yadid 97, Avidor Azar Sgall 01 - Completion time scheduling Epstein,Sgall99
10Lower Bound
SRPT, FCFS optimal algorithms for p1, 1
No no(1) competitive randomized alg for Lp norms
of flow time and stretch, for 1ltplt1
Size L
Suppose p2
L3 jobs of size 1
Online Cost of big (L3)2 L6 Opt L3 Smalls
delayed by L O(L5)
By time L3 , If do not finish size L job, bad!
11Lower Bound
SRPT, FCFS optimal algorithms for p1, 1
No no(1) competitive randomized alg for Lp norms
of flow time and stretch, for 1ltplt1
Optional Stream of jobs
Size L
L3 jobs of size 1
L5 jobs of size 1/L2
By time L3 , If do not finish size L job, bad!
12Results
Resource Augmentation Kalyanasundaram, Pruhs
95 Online has more resources s-speed,
c-competitive maxI Online(I,s) / Opt(I,1) c
- Thm SRPT, SJF (Shortest Job First)
- are 1? speed O(1/?) competitive
No starvation unless close to peak capacity
13Interpreting Resource Augmentation
Performance
Optimal
Load
14Interpreting Resource Augmentation
Online
Performance
Optimal
Load
15Proof Sketch
- Lp norm of flow time as weighted Flow Time
problem -
- Age(j,t) 0 if tltrj or
tgtcj - t-rj if rj lt t
lt cj - Observation fj2/2 ?t age(j,t)
- ?j fj2 /2 ?t ?j alive at
time t age(j,t)
Proof idea Show, at all times total age of
alive jobs lt O(1/? ) total age under Opt
16Proof Idea
- If job J of size x delayed for t units under SJF
- Then either,
- Had lot of work of size lt x before arrival of J
- Lot of work arriving continuously since J
arrived. - In either case, Opt can be shown to have
sufficiently many old unfinished jobs,
17Non-Clairvoyant Scheduling
- Non-Clairvoyant Model Motwani Phillips Torng
94 - Scheduler does not know size of a job
- Learns size only when job finishes.
- Cannot do things like Shortest Job First, SRPT
- What can we do?
- FCFS, Round Robin (time-sharing),
18Measuring Performance
- Resource Augmentation s-speed, c-competitive
- Online non-clairvoyant (s,I)
- Opt offline clairvoyant (1,I)
c
Max I
19The Algorithm (MLF)
- Multi-Level Feedback (MLF)
- Used in Windows NT, Unix
- Levels L0,L1,L2, job enters L0 first
- In Li, receive 2i amount of work,
- then promoted to Li1
- Work on level i, iff no job in level 0 .. i-1
L2
L1
L0
20Previous Results (Non-Clairvoyant)
- L1 norm of Flow Time
- MLF 1? speed, O(1/?) competitive
Kalyanasundaram, Pruhs 95 - L1 norm of Stretch
- MLF 1? speed, O(1/?4 log2 B) competitive B.,
Dhamdhere, Konemann, Sinha 03 - Any algorithm is 1? speed ?(log B/?) competitive
- B ratio of maximum to minimum job size
21Our Results
- MLF is 1? speed , O(1/?4) competitive
- for all norms of flow time
- MLF is 1? speed, O(1/?4 log2 B) competitive
- for all norms of stretch
22Analysis
Generic technique reduce MLF to SJF (Shortest
Job First) Reduces a non-clairvoyant problem
into a clairvoyant one.
23Final Result
- Round Robin At any time, share processor equally
- Considered to be fair (each job treated equally)
- But not good according to the Lp norm criteria
- Round Robin is not 1? speed no(1) competitive
- (for sufficiently small ?)
24Open Problems
- 1) Offline case totally open
- NP-Hard?
- Non-trivial approximation algorithms?
- 2) Multiple machines
- 3) Other notions to deal with tradeoff between
average vs. max performance
25 26An example
Size L
Goal Minimize ? fi2 (i.e. p2)
a job of size 1 arrives for n time units
If n small ( lt L2), work on the small jobs If n
big ( gt L2), at time L2, shift to finish the
big job
Good algorithm A combination of SRPT FCFS
27MLF
15
7
3
1
28MLF
15
7
3
1
29MLF
15
7
3
1
30MLF
15
7
7
3
3
1
1
31MLF
15
7
7
3
3
1
1
32MLF
15
7
7
3
3
1
1
33MLF
15
7
7
3
3
1
1
34MLF
15
7
7
3
3
1
1
35Connection between MLF and SJF
Instance J 2i-1 Instance J 1,2,4,,2i-1
15
7
J
J
3
1
2
4
8
1
36MLF and SJF
Instance J 2i-1 Instance J 1,2,4,,2i-1
15
7
3
1
2
4
8
1
37MLF and SJF
Instance J 2i-1 Instance J 1,2,4,,2i-1
15
7
3
1
2
4
8
1
38MLF and SJF
Instance J 2i-1 Instance J 1,2,4,,2i-1
15
7
7
3
3
1
1
2
4
8
2
4
1
1
39MLF and SJF
MLF works on smallest level SJF works on smallest
job
15
MLF works on a job in level i ? SJF works
on 2i size copy of same job
7
7
3
3
1
1
2
4
8
2
4
1
1
40MLF and SJF
MLF works on smallest level SJF works on smallest
job
15
MLF works on a job in level i ? SJF works
on 2i size copy of same job
7
7
3
3
1
1
2
4
8
2
4
1
1
41Analysis Idea
- 2 Main ideas
- 1) MLF(J) can be viewed as SJF (J)
- 2) We know that SJF(J) ¼ Opt(J), so MLF(J) ¼
Opt(J)
previous clairvoyant result
Opt(J)
Fairly general technique, usually allows us to
reduce a non-clairvoyant problem into a
clairvoyant one.