20
Analysis of SRPT Scheduling: Investigating Unfairness Nikhil Bansal (Joint work with Mor Harchol-Balter)

Analysis of SRPT Scheduling: Investigating Unfairness Nikhil Bansal (Joint work with Mor Harchol-Balter)

Embed Size (px)

Citation preview

Page 1: Analysis of SRPT Scheduling: Investigating Unfairness Nikhil Bansal (Joint work with Mor Harchol-Balter)

Analysis of SRPT Scheduling:Investigating Unfairness

Nikhil Bansal

(Joint work with Mor Harchol-Balter)

Page 2: Analysis of SRPT Scheduling: Investigating Unfairness Nikhil Bansal (Joint work with Mor Harchol-Balter)

Aim:“Good” Scheduling Policy

• Low Response times• Fair

Motivation Problem

Server

Client1

Client2

Client3

Page 3: Analysis of SRPT Scheduling: Investigating Unfairness Nikhil Bansal (Joint work with Mor Harchol-Balter)

Time Sharing (PS)

Server shared equally between all the jobs:

Low response times Fair Does not require knowledge of sizes

Can we do better ?

Page 4: Analysis of SRPT Scheduling: Investigating Unfairness Nikhil Bansal (Joint work with Mor Harchol-Balter)

Shortest Remaining Proc. Time

Optimal for minimizing mean response times.

Knowledge of sizesImprovements significant ? Starvation of large jobs

Biggest fear

Objections:

Page 5: Analysis of SRPT Scheduling: Investigating Unfairness Nikhil Bansal (Joint work with Mor Harchol-Balter)

Questions

Smalls better Bigs worse

How do means compare

Elephant-mice property and implications

Page 6: Analysis of SRPT Scheduling: Investigating Unfairness Nikhil Bansal (Joint work with Mor Harchol-Balter)

M/G/1 Queue Framework

Arrivals queue Server

Load( ) = (arrival rate).E[S]

• Poisson Arrival Process with rate • Job sizes (S) iid general distribution F

Page 7: Analysis of SRPT Scheduling: Investigating Unfairness Nikhil Bansal (Joint work with Mor Harchol-Balter)

Queueing Formulas for PS

E[T(x)]: Expected Response time for job of size x

1

1)]([ PSxSE

1)]([

xxTE PS [Kleinrock 71]

Identical for all!

Page 8: Analysis of SRPT Scheduling: Investigating Unfairness Nikhil Bansal (Joint work with Mor Harchol-Balter)

M/G/1 SRPT

x

x

SRPT tdt

x

xFxdttftxTE

02

2

0

2

))(1())(1(2

)))(1()(()]([

Waiting Time (E[W(x)]) Residence Time (E[R(x)])

x

dtttfx0

)()(

Load up to x Variance up to x Gains priority after it begins execution

x

PSSRPT

dtxTExRE

0 1)]([)]([

Page 9: Analysis of SRPT Scheduling: Investigating Unfairness Nikhil Bansal (Joint work with Mor Harchol-Balter)

All-Can-Win under srpt put c

Thm: Every job prefers SRPT, when load <= ½, for all job size distributions.

Proof: Know that

SRPTPSSRPT xRExTExWE )]([)]([)]([

))]([)]([())(1(2

1)]([

2 SRPTPSSRPT xRExTEx

xWE

PSSRPT xTExTE )]([)]([

PSSRPT xTExRE )]([)]([

2))(1(2)1( x IfKey Observation

Holds for all x, if load <= 0.5

Page 10: Analysis of SRPT Scheduling: Investigating Unfairness Nikhil Bansal (Joint work with Mor Harchol-Balter)

What if load > 0.5 ? problem

PSSRPT xTExRE )]([)]([ Still holds if 5.0)( xIrrespective of

The Heavy-Tailed Property: (Elephant -Mice) 1% of the big jobs make up at least 50% of the load.

For a distribution with the HT property, >99% of jobs better under SRPT

In fact, significantly better,Under SRPT, 22)]([ SRPTxSE

)1/(1)]([ PSxSE

Bounded by 4

Arbitrarily high

Page 11: Analysis of SRPT Scheduling: Investigating Unfairness Nikhil Bansal (Joint work with Mor Harchol-Balter)

The very largest jobs

If load <= 0.5, all jobs favor SRPT. At any load, > 99% jobs favor SRPT, if HT property. Moreover significant improvements.

What about the remaining 1% largest jobs?

Page 12: Analysis of SRPT Scheduling: Investigating Unfairness Nikhil Bansal (Joint work with Mor Harchol-Balter)

1. Bounding the damage theorem

2.PSSRPT SEkSE ][)(][

))2

22log(01.0)

21(log(

)1(2

2

)01.1()(

k

,1As 01.0)( k

Implication: Mean slowdown of largest 1% under SRPT: Same as PS

Fill in…

Page 13: Analysis of SRPT Scheduling: Investigating Unfairness Nikhil Bansal (Joint work with Mor Harchol-Balter)

Insert plots here:1 for BP 1.1 with load 0.9 showing how all Do better

2 for exp with load 0.9 showing how some do bad.

Page 14: Analysis of SRPT Scheduling: Investigating Unfairness Nikhil Bansal (Joint work with Mor Harchol-Balter)

Other Scheduling Policies

Non-preemptive: i. First Come First Serve (FCFS)ii. Randomiii. Last Come First Serve (LCFS)iv. Shortest Job First (SJF)

Preemptive:i. Foreground Background (FB)ii. Preemptive LCFS

Same as PSTrivially worse

Very bad mean Performance, for HT workloads

Page 15: Analysis of SRPT Scheduling: Investigating Unfairness Nikhil Bansal (Joint work with Mor Harchol-Balter)

Overload

Add some lines for why good+ we do work on this in paper

Page 16: Analysis of SRPT Scheduling: Investigating Unfairness Nikhil Bansal (Joint work with Mor Harchol-Balter)

Actual Implementation

Add a plot or couple of lines

Page 17: Analysis of SRPT Scheduling: Investigating Unfairness Nikhil Bansal (Joint work with Mor Harchol-Balter)

Conclusions

• Significant mean performance improvements.

• Big jobs prefer SRPT under low-moderate loads.

• Big jobs prefer SRPT even under high loads for heavy-tailed distributions.

Page 18: Analysis of SRPT Scheduling: Investigating Unfairness Nikhil Bansal (Joint work with Mor Harchol-Balter)

Scratch

1 } { Pr xxX

Page 19: Analysis of SRPT Scheduling: Investigating Unfairness Nikhil Bansal (Joint work with Mor Harchol-Balter)

Under h-t distributions

Load = 0.9

Heavy-tailed distribution with alpha=1.1

Job Percentile SRPT PS

90% 1.28 10

99% 1.62 10

99.9% 2.08 10

99.99% 2.69 10

100% 9.54 10

Very largest job

Page 20: Analysis of SRPT Scheduling: Investigating Unfairness Nikhil Bansal (Joint work with Mor Harchol-Balter)

Under light-tailed distributions

Job Percentile SRPT PS

90% 3.17 10

95% 4.93 10

99% 11.14 10

99.9% 16.01 10

Load=0.9Exponential distribution