Optimality, Fairness and Robustness in Speed Scaling Designs

Post on 11-Feb-2016

39 views 0 download

Tags:

description

Optimality, Fairness and Robustness in Speed Scaling Designs. Lachlan Andrew Joint work with Minghong Lin, Caltech Adam Wierman , Caltech Supported by ARC, NSF. Systems must balance delay and energy use .  Speed scaling. greener. faster. power. speed. A simple model. - PowerPoint PPT Presentation

Transcript of Optimality, Fairness and Robustness in Speed Scaling Designs

Optimality, Fairness and Robustness in Speed Scaling Designs

Lachlan Andrew

Joint work with

Minghong Lin, Caltech

Adam Wierman, Caltech

Supported by ARC, NSF

speedpo

wergreener

faster

Systems must balance delay and energy use

Speed scaling

state-dependent controllable service rates

Goal: min [ ] [ ] E Delay E Energy

( )P s power to run at speed s

A simple model

( )P s s (often α ≈ 2)CPUs, disks:

A simple model

The speed of the server

What order to serve jobs

??

Fundamental questions about speed scaling

Can on-line speed scaling be optimal?What structure do optimal algorithms have?

How does speed scaling interact with scheduling?

Are sophisticated speed scalers better?

Are there drawbacks of speed scaling?

A simple model

The speed of the server

What order to serve jobs

?

What can we say about the optimal design?

?

A simple model

The speed of the server

What order to serve jobs

?SRPTShortest Remaining

Processing Time

A simple model

The speed of the server

What order to serve jobs

?SRPT…but in practice often…

PSProcessor Sharing

An example – batch arrivals under SRPTn jobs of size xi arrive at time 0 (no other arrivals)

Cost

1 11 1

1 1 1( ) ( )n n n nn n n n

n nx P s x P ss s s s

SRPT

1( )1n n

nP s s s P

“Energy-proportional”

1 11

1 1

( ) ( )n n n n nn n

n n n n n

x x x x xP s P ss s s s s

Observation: Speeds only depend on number of jobs in system (not on sizes)

2 design choices

The speed of the server

What order to serve jobs

SRPTorPS

sn =?

SRPT

PS

Stochastic analysis(M/GI/1)

Worst-case analysis(no assumptions)

Two styles of analysis

Worst case analysis

Undertest

optimum cost

cost

At most factor k worse= “k-competitive”

How can we find kwithout knowing OPT?

Amortized Local competitiveness

• (0)=0• () 0• has no upward jumps

𝑑𝑐𝑜𝑠𝑡 (𝐴)𝑑𝑡 ≤𝑘 𝑑𝑐𝑜𝑠𝑡 (𝑂𝑃𝑇 )

𝑑𝑡 − 𝑑𝜑𝑑𝑡

Potential function

SRPT

PS

Stochastic analysis(M/GI/1)

Worst-case analysis(no assumptions)

(SRPT, P-1(n))Exactly 2-competitive

(PS, P-1(n))(4-2)-competitive?

PS

M/GI/1

PS

M/M/1

FCFS

M/M/1

0 1 2 3λ λ λ λ

s1 s2 s3 s4

“Textbook” stochastic control problem:

Can “solve” numerically with dynamic programming[Bertsekas] [Ross] [George & Harrison 01] …

The analysis

1/32 min ,2nn s n

n

~ns n

Theorem:In an M/GI/1 queue with α=2, the optimal speeds satisfy

For large n,

arriving load

Our Results

Wierman, A., Tang: Allerton 2008, INFOCOM’09

SRPT

PS

Stochastic analysis(M/GI/1)

Worst-case analysis(no assumptions)

(SRPT, P-1(n))Exactly 2-competitive

(PS, P-1(n))(4-2)-competitive

ns n

ns n ( 2)

( 2)

SRPTlower bound

100

10

11 1000.01

Cos

t per

job

low load and/orlow energy cost

high load and/orhigh energy cost

PS

Switching to SRPT can’t improve

performance much!

How well does it work?

Fundamental questions about speed scaling

Can on-line speed scaling be optimal?What structure do optimal algorithms have?

^and answers

2-competitive by using SRPT and 1( )ns P n

Fundamental questions about speed scaling

Can on-line speed scaling be optimal?What structure do optimal algorithms have?

How does speed scaling interact with scheduling?

Are sophisticated speed scalers better?

Are there drawbacks to speed scaling?

^and answers

They can be decoupled with littleperformance loss

Energy proportionalityworks well under SRPT & PS

Can on-line speed scaling be optimal?What structure do optimal algorithms have?

2 design choices

The speed of the server

What order to serve jobs

SRPTorPS Time

Gated static

Time

Dynamic

spee

d

SRPT

PS

Stochastic analysis(M/GI/1)

Worst-case analysis(no assumptions)

[ ] ( )(1 / ) log(1/ (1 / ))

E N P ss s

1s

(heavy traffic)

Gated static speed scaling

( 2)

Gated Static vs. Dynamic (under SRPT)

dynamicgated static

100

10

11 1000.01

Cos

t per

job

low load and/orlow energy cost

high load and/orhigh energy cost

Why is dynamicspeed scaling used?

…same holds under PS

Robustness

Why is dynamicspeed scaling used?

real ρ

design ρ

Cos

t per

job

gated static

Dynamic(stochastic control)

Dynamic (worst-case control)

Robustness/Optimality Tradeoff

Theorem:For P(s)=s2, speeds optimal for PS with ρ are

2(2ρ2 +2ρ + 1)-competitive under SRPT 6(2ρ2 +2ρ + 1)-competitive under PS

Tradeoff betweenoptimality and robustnessthrough tuning estimated load

worst-case result for optimal stochastic control

Can we improverobustness further?

real ρ

design ρ

Cos

t per

job

gated static

dynamic

linear: ns n

For α=22 2( ) 2 ( )linear dynamiccost cost

Robust against arrival rateif arrivals are Poisson

Fundamental questions about speed scaling

Can on-line speed scaling be optimal?What structure do optimal algorithms have?

How does speed scaling interact with scheduling?

Are sophisticated speed scalers better?

^and answers

Benefit of dynamic is robustness,not mean performance

Fundamental questions about speed scaling^

and answers

Can on-line speed scaling be optimal?What structure do optimal algorithms have?

How does speed scaling interact with scheduling?

Are sophisticated speed scalers better?

Are there drawbacks to speed scaling?Speed scaling can “magnify/create” unfairness

Job types that are often served when the queue is large get faster service

Which jobs are run fast?

Magnifies the bias towards small jobs

Creates a bias towards big jobs

Remains fair

SRPT

FCFS

PS

…the ones run when the queue is big

Theorem:With dynamic speed scaling:

[ ( )] [ ( )]lim limSRPT PS

x x

E T x E T xx x

[ ( )] [ ( )]lim limSRPT PS

x x

E T x E T xx x

Bias against large jobs is magnified

SRPT is “fair” to large job sizes

With constant speeds:

[Sigman, Harchol-Balter, Wierman 02]

Fundamental questions about speed scaling

Can on-line speed scaling be optimal?What structure do optimal algorithms have?

How does speed scaling interact with scheduling?

Are sophisticated speed scalers better?

Are there drawbacks of speed scaling?

^and answers

Speed scaling can “magnify/create” unfairness

Optimality, Fairness and Robustnessin Speed Scaling design

Optimality, Fairness and Robustness

(SRPT, P-1(n))

Optimality, Fairness and Robustness

(SRPT, P-1(n)) (PS, P-1(n))

Optimality, Fairness and Robustness

(SRPT, P-1(n)) (PS, P-1(n))

(SRPT, gated-static)