power-aware speed scaling in processor sharing systems

29
Power-Aware Speed Scaling in Processor Sharing Systems Adam Wierman, Lachlan L.H. Andrew, Ao Tang Optimality, fairness, and robustness in speed scaling designs Lachlan L.H. Andrew, Minghong Lin, Adam Wierman Presented by Daniel Cole

Upload: carsyn

Post on 24-Feb-2016

46 views

Category:

Documents


0 download

DESCRIPTION

Power-Aware Speed Scaling in Processor Sharing Systems. Adam Wierman , Lachlan L.H. Andrew, Ao Tang. Optimality, fairness, and robustness in speed scaling designs. Lachlan L.H. Andrew, Minghong Lin, Adam Wierman Presented by Daniel Cole. The Stochastic Model ( Queueing Theory). - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Power-Aware Speed Scaling in Processor Sharing Systems

Power-Aware Speed Scaling in Processor Sharing SystemsAdam Wierman, Lachlan L.H. Andrew, Ao Tang

Optimality, fairness, and robustness in speed scaling designsLachlan L.H. Andrew, Minghong Lin, Adam Wierman

Presented by Daniel Cole

Page 2: Power-Aware Speed Scaling in Processor Sharing Systems

•A/S/n:• (A) Arrival Process, probability density distribution of job arrivals• (S) Service Process, probability density distribution of job size• (n) number of servers

•We’ll mostly use M/M/1 or M/GI/1•First half we’re always using processor sharing (PS)•Objective is response time of job plus energy:

•Always use cost per unit time instead:

The Stochastic Model (Queueing Theory)

Jobs enter the queue

Jobs are serviced

Jobs leave the queue

'/]E[]E[ ET

)(][E sPN

Page 3: Power-Aware Speed Scaling in Processor Sharing Systems

Power ModelMostly, the normalHowever, is assumed very often:

ssP )(

2

Page 4: Power-Aware Speed Scaling in Processor Sharing Systems

Objective: Flow plus EnergyObjective is response time of job plus

energy:Always use cost per unit time instead:

Arrival rate is , mean job size is

Define load as

'/]E[]E[ ET

)(][E sPNz

1

Page 5: Power-Aware Speed Scaling in Processor Sharing Systems

Are these models reasonable?Poisson Arrivals: This assumption is a

very good approximation in real systems that meet the following rules:◦The number of customers in the system is

very large◦ Impact of a single customer on the

performance of the system is very small◦All customers are independent

Page 6: Power-Aware Speed Scaling in Processor Sharing Systems

Three SchemesStatic:

Gated Static:

Dynamic:

0 2 4 6 8 10 120

0.51

1.52

2.53

3.54

4.5

1 2 3 4 5 6 7 8 9 100

0.5

1

1.5

2

2.5

Page 7: Power-Aware Speed Scaling in Processor Sharing Systems

Optimal SpeedsIf we can only run at one speed, at what

speed should we run?

Set derivative equal to 0:

1 2 3 4 5 6 7 8 9 100

0.5

1

1.5

2

2.5

ss

z

21 ss

Page 8: Power-Aware Speed Scaling in Processor Sharing Systems

Optimal SpeedsWhat if we can shut down?

Use same method as before:

For :

1

s

sz

221 ss

2 s

Page 9: Power-Aware Speed Scaling in Processor Sharing Systems

Optimal SpeedsWhat if we can do whatever we want?

Use a dynamic programming approach to solve numerically for a known .

0 2 4 6 8 10 120

0.51

1.52

2.53

3.54

4.5

Page 10: Power-Aware Speed Scaling in Processor Sharing Systems

What is the difference between the three approaches?Create bounds and compare:◦Most notable: for , gated static has a cost

within a factor of 2 of the optimal.◦Also if , we can bound the optimal speed:

◦For large n,

◦Recall: Gated Static is

2

31

,2

min2 n

nsn n

2

nsn

s

Page 11: Power-Aware Speed Scaling in Processor Sharing Systems

Comparing Speed Numerically

Page 12: Power-Aware Speed Scaling in Processor Sharing Systems

Comparing Cost Numerically

Page 13: Power-Aware Speed Scaling in Processor Sharing Systems

Breakdown of CostShould probably be 3

Page 14: Power-Aware Speed Scaling in Processor Sharing Systems

Why use dynamic speed scaling?It’s more complicated than gated static

and it offers little improvementAnswer: RobustnessAll previous schemes have used the

expected load to set speedAdd a scheme not dependent on :

◦Linear:

1

nsn

Page 15: Power-Aware Speed Scaling in Processor Sharing Systems

Load Misestimation

Page 16: Power-Aware Speed Scaling in Processor Sharing Systems

How good is linear?For , it has a cost identical to gated

staticThis implies it is 2-competitiveDoes this graph suggest linear is “much

better” than OA?

2

Page 17: Power-Aware Speed Scaling in Processor Sharing Systems

SummaryDynamic speed scaling is only good for

robustnessWe only need linear scaling to achieve good

results (2OPT) and good robustness (same results regardless of actual arriving load)

Optimal dynamic scaling offers a tiny amount of improvement if the load is known, otherwise it is less robust than linear

Page 18: Power-Aware Speed Scaling in Processor Sharing Systems

Intermission

Page 19: Power-Aware Speed Scaling in Processor Sharing Systems

Some Worst Case ResultsClairvoyant: SRPT + is exactly 2

competitive (lower and upper bounds)Non-Clairvoyant: PS + is

We will skip, but essentially uses modified techniques from previous results, specifically Bansal, et al. 09, and Chan, et al. 09

1

ns

1

ns

ecompetitiv122,24max

Page 20: Power-Aware Speed Scaling in Processor Sharing Systems

More Worst CaseGive a 2-OPT lower bound for all natural

algorithms, defined as:◦Works on a single job between

arrival/completion events (think SRPT)◦Always run at speed proportional to, or faster

or slower than )(1 nP

Page 21: Power-Aware Speed Scaling in Processor Sharing Systems

What about SRPT in the stochastic setting?Will not analytically determine optimal for

SRPT as with PSSpeeds suggested by worst case results for

both SRPT and PS are the same, we’ll use them

Use previous numerical algorithm for optimal under PS to find “optimal” speeds for SRPT

Recall the speed for large n from the first paper

Page 22: Power-Aware Speed Scaling in Processor Sharing Systems

Speeds

Page 23: Power-Aware Speed Scaling in Processor Sharing Systems

Stocastic SRPT and PS

Page 24: Power-Aware Speed Scaling in Processor Sharing Systems

Gated-Static RevisitedCalculating the optimal speed for gated-

static for SRPT is too hard to do analytically

We will approximate it (but not go into any details here)

Page 25: Power-Aware Speed Scaling in Processor Sharing Systems

Gated-Static vs. DP

Page 26: Power-Aware Speed Scaling in Processor Sharing Systems

Robustness

Page 27: Power-Aware Speed Scaling in Processor Sharing Systems

Linear Scaling (Again)

However, linear scaling is not constant competitive…

Page 28: Power-Aware Speed Scaling in Processor Sharing Systems

FairnessSummary: Speed scaling magnifies

unfairnessReason: If SRPT runs no faster than PS

and there is an infinitely large job, the large job is only serviced during idle periods which are shorter for SRPT than PS

Note that SRPT with static speeds is considered fair

Page 29: Power-Aware Speed Scaling in Processor Sharing Systems

SummaryScheduling isn’t that important, but

speed is very importantSpeed scaling isn’t really about

performance, it is about robustnessCan’t have optimal, robust, and fair:◦Dynamic: optimal, robust, not fair◦Static: near-optimal, not robust, fair

I omitted: O(1) competitiveness of stochastic policies