Optimal State-Free, Size-aware Dispatching for Heterogeneous M / G / - - PowerPoint PPT Presentation

optimal state free size aware dispatching for
SMART_READER_LITE
LIVE PREVIEW

Optimal State-Free, Size-aware Dispatching for Heterogeneous M / G / - - PowerPoint PPT Presentation

Model Optimal static strategies Mappings of queues Conclusion Optimal State-Free, Size-aware Dispatching for Heterogeneous M / G / -type systems Hanhua Feng 1 , Vishal Misra 1 , 2 and Dan Rubenstein 2 , 1 Columbia University 1 Department of


slide-1
SLIDE 1

Model Optimal static strategies Mappings of queues Conclusion

Optimal State-Free, Size-aware Dispatching for Heterogeneous M/G/-type systems

Hanhua Feng1, Vishal Misra1,2 and Dan Rubenstein2,1 Columbia University

1Department of Computer Science 2Department of Electrical Engineering

Columbia University in the City of New York

7th October 2005

Feng, Misra, Rubenstein Optimal static dispatching

slide-2
SLIDE 2

Model Optimal static strategies Mappings of queues Conclusion

Outline

The model Dispatching model Static Strategies Analysis model Optimal static strategies Homogeneous servers Heterogeneous Servers Sketch of the proofs Mappings of queues Conclusion

Feng, Misra, Rubenstein Optimal static dispatching

slide-3
SLIDE 3

Model Optimal static strategies Mappings of queues Conclusion Dispatching model Static Strategies Analysis model

Dispatching model

◮ One dispatcher, followed by multiple queues ◮ Heterogeneous: different server speeds ◮ FCFS policy for each queue ◮ Static dispatching strategy

C C C 2 3 4 5 C C 1 M/G/1 M/G/1 M/G/1 M/G/1 M/G/1 Dispatcher

Feng, Misra, Rubenstein Optimal static dispatching

slide-4
SLIDE 4

Model Optimal static strategies Mappings of queues Conclusion Dispatching model Static Strategies Analysis model

Static strategies

◮ (Scheduling) Policies: algorithms used by each queue ◮ (Dispatching) Strategies: algorithms used by dispatcher

A class of static dispatching strategies

◮ Static: dispatcher is state-free ◮ Size-aware: dispatcher knows the job size on arrival ◮ Stochastic: dispatcher may randomly assign jobs

Why static?

◮ Easy to be implemented ◮ When collecting dynamic data is hard ◮ For the baseline of dynamic strategies

Feng, Misra, Rubenstein Optimal static dispatching

slide-5
SLIDE 5

Model Optimal static strategies Mappings of queues Conclusion Dispatching model Static Strategies Analysis model

Static strategies

Examples of static strategies

◮ Random ◮ Size Interval (SI) [Harchol-Balter 1999]

To queue 1 To queue 3 To queue 2 5K 2M (job size)

◮ Nested Size Interval (NSI) (more generalized than SI)

To queue 2 To queue 1 1K To queue 3 To queue 1 1M 5M (Queue 3 is nested in Queue 1) (job size)

Feng, Misra, Rubenstein Optimal static dispatching

slide-6
SLIDE 6

Model Optimal static strategies Mappings of queues Conclusion Dispatching model Static Strategies Analysis model

Analysis with M/G/− model

Analysis Assumptions

◮ Poisson arrival with rate λ ◮ General known job-size distribution with PDF f(x)

Implications

◮ λf(x) is the arrival rate density function (ARDF) ◮ Each queue is an M/G/1 whose ARDF is λifi(x) ◮ We have λf(x) = n i=1 λifi(x). ◮ The optimal static strategy means the optimal partitioning

  • f function λf(x) to λifi(x) such that the overall mean

waiting time is minimized.

Feng, Misra, Rubenstein Optimal static dispatching

slide-7
SLIDE 7

Model Optimal static strategies Mappings of queues Conclusion Dispatching model Static Strategies Analysis model

Analysis with M/G/− model: example of three queues

1 1

λ f (x)

2 2

λ f (x)

3 3

f (x) λ

2 2

λ f (x)

1 1

λ f (x)

3 3

f (x) λ x (job size) λ f(x) Arrival rate density f λ = + +

◮ To find λ1f1(x), λ2f2(x), and λ3f3(x) such that

λf(x) = 3

i=1 λifi(x) and the mean waiting time is

minimized.

Feng, Misra, Rubenstein Optimal static dispatching

slide-8
SLIDE 8

Model Optimal static strategies Mappings of queues Conclusion Homogeneous servers Heterogeneous Servers Sketch of the proofs

Optimal static strategy in homogeneous case

Assume:

◮ Static strategy: state free, size-aware ◮ Homogeneous: all servers have the same speed ◮ M/G/1-FCFS queues ◮ Objective measure: overall per-job mean waiting/response

time

Result:

The optimal static strategy is a Size-Interval (SI) strategy.

Feng, Misra, Rubenstein Optimal static dispatching

slide-9
SLIDE 9

Model Optimal static strategies Mappings of queues Conclusion Homogeneous servers Heterogeneous Servers Sketch of the proofs

Optimal static strategy in heterogeneous case

Assume:

◮ Static strategy: state free, size-aware ◮ Heterogeneous: servers have different speeds ◮ M/G/1-FCFS queues ◮ Objective measure: overall per-job mean waiting time

Results:

◮ The optimal strategy may be a non-SI strategy. (counter-example) ◮ It is a Nested Size-Interval (NSI) strategy. ◮ Slower queue can be nested in a faster queue.

Feng, Misra, Rubenstein Optimal static dispatching

slide-10
SLIDE 10

Model Optimal static strategies Mappings of queues Conclusion Homogeneous servers Heterogeneous Servers Sketch of the proofs

Mean waiting time under static strategies

The per-job mean waiting time:

E[W] = 1 2λ

n

  • i=1
  • λiωi

ci(ci − ρi)

  • ,

where

◮ λi is arrival rate of queue i, ◮ ρi is the (first-order) load of queue i, ◮ ωi = λ

0 t2fi(t)dt is called “second-order load” of queue i, ◮ ci is the capacity (processing speed) of queue i.

Feng, Misra, Rubenstein Optimal static dispatching

slide-11
SLIDE 11

Model Optimal static strategies Mappings of queues Conclusion Homogeneous servers Heterogeneous Servers Sketch of the proofs

Mean waiting time under static strategies (cont’d)

Mean waiting time

E[W] = 1 2λ

n

  • i=1
  • λiωi

ci(ci − ρi)

  • Objective: minimizing E[W]

◮ Recall that: partitioning λf(·) to a sum of λifi(·)’s ◮ Objective E[W] depends on λi, ρi and ωi. ◮ λi, ρi and ωi are respectively zeroth-, first-, and

second-order moments of λifi(·).

Feng, Misra, Rubenstein Optimal static dispatching

slide-12
SLIDE 12

Model Optimal static strategies Mappings of queues Conclusion Homogeneous servers Heterogeneous Servers Sketch of the proofs

Proof for homogeneous case (c1 = c2 = · · · )

First prove for two queues, then extend to multiple queues.

For two queues: two cases

◮ Case 1: their loads are severely unbalanced: either of

λ1 c1(c1−ρ1) > λ2 c2(c2−ρ2) and ω1 c1(c1−ρ1) > ω2 c2(c2−ρ2)

λ1 c1(c1−ρ1) < λ2 c2(c2−ρ2) and ω1 c1(c1−ρ1) < ω2 c2(c2−ρ2)

◮ Case 2: otherwise.

Case 1: Severely unbalanced

◮ Transfer some jobs (of any size) from the high-loaded

queue to the other.

◮ E[W] is lower. ◮ Repeat doing so until Case 2.

Feng, Misra, Rubenstein Optimal static dispatching

slide-13
SLIDE 13

Model Optimal static strategies Mappings of queues Conclusion Homogeneous servers Heterogeneous Servers Sketch of the proofs

Proof for homogeneous case (cont’d)

Case 2: not severely unbalanced

◮ Find a threshold such that shaded areas have same ρ. ◮ Swapping shaded areas yields an SI strategy. ◮ We show that E[W] is lower.

✁✁✁✁✁✁✁ ✁✁✁✁✁✁✁ ✁✁✁✁✁✁✁ ✁✁✁✁✁✁✁ ✁✁✁✁✁✁✁ ✁✁✁✁✁✁✁ ✁✁✁✁✁✁✁ ✁✁✁✁✁✁✁ ✁✁✁✁✁✁✁ ✂✁✂✁✂✁✂✁✂✁✂✁✂✁✂ ✂✁✂✁✂✁✂✁✂✁✂✁✂✁✂ ✂✁✂✁✂✁✂✁✂✁✂✁✂✁✂ ✂✁✂✁✂✁✂✁✂✁✂✁✂✁✂ ✂✁✂✁✂✁✂✁✂✁✂✁✂✁✂ ✂✁✂✁✂✁✂✁✂✁✂✁✂✁✂ ✂✁✂✁✂✁✂✁✂✁✂✁✂✁✂ ✂✁✂✁✂✁✂✁✂✁✂✁✂✁✂ ✂✁✂✁✂✁✂✁✂✁✂✁✂✁✂ ✄✁✄✁✄✁✄✁✄✁✄ ✄✁✄✁✄✁✄✁✄✁✄ ✄✁✄✁✄✁✄✁✄✁✄ ✄✁✄✁✄✁✄✁✄✁✄ ✄✁✄✁✄✁✄✁✄✁✄ ✄✁✄✁✄✁✄✁✄✁✄ ☎✁☎✁☎✁☎✁☎✁☎ ☎✁☎✁☎✁☎✁☎✁☎ ☎✁☎✁☎✁☎✁☎✁☎ ☎✁☎✁☎✁☎✁☎✁☎ ☎✁☎✁☎✁☎✁☎✁☎ ☎✁☎✁☎✁☎✁☎✁☎

ξ x λ f (x)

1 1

f(x)

2

λ λ ρ2

s

ρ

s 1

f (x)

2

(job size) Density of arrival rate

Feng, Misra, Rubenstein Optimal static dispatching

slide-14
SLIDE 14

Model Optimal static strategies Mappings of queues Conclusion Homogeneous servers Heterogeneous Servers Sketch of the proofs

Proof for heterogeneous case (c1 < c2 < · · · )

For two queues: c1 < c2

◮ Case 1: their loads are severely unbalanced: either of

◮ Case 1a:

λ1 c1(c1−ρ1) > λ2 c2(c2−ρ2) and ω1 c1(c1−ρ1) > ω2 c2(c2−ρ2)

◮ Case 1b:

λ1 c1(c1−ρ1) < λ2 c2(c2−ρ2) and ω1 c1(c1−ρ1) < ω2 c2(c2−ρ2)

◮ Case 2: otherwise.

Cases 1b and Case 2

◮ Use the same arguments as in a homogeneous system.

Case 1a

◮ Previous argument fails.

Feng, Misra, Rubenstein Optimal static dispatching

slide-15
SLIDE 15

Model Optimal static strategies Mappings of queues Conclusion Homogeneous servers Heterogeneous Servers Sketch of the proofs

Proof for heterogeneous case (cont’d)

Case 1a (Slower queue has severely higher load)

◮ find two thresholds: shaded areas have same λ’s and ρ’s. ◮ Swapping shaded areas yields an NSI strategy ◮ We show that E[W] gets lower.

✆✝✆✝✆✝✆ ✆✝✆✝✆✝✆ ✆✝✆✝✆✝✆ ✆✝✆✝✆✝✆ ✆✝✆✝✆✝✆ ✆✝✆✝✆✝✆ ✆✝✆✝✆✝✆ ✆✝✆✝✆✝✆ ✆✝✆✝✆✝✆ ✞✝✞✝✞✝✞ ✞✝✞✝✞✝✞ ✞✝✞✝✞✝✞ ✞✝✞✝✞✝✞ ✞✝✞✝✞✝✞ ✞✝✞✝✞✝✞ ✞✝✞✝✞✝✞ ✞✝✞✝✞✝✞ ✞✝✞✝✞✝✞ ✟✝✟✝✟ ✟✝✟✝✟ ✟✝✟✝✟ ✟✝✟✝✟ ✟✝✟✝✟ ✠✝✠✝✠ ✠✝✠✝✠ ✠✝✠✝✠ ✠✝✠✝✠ ✠✝✠✝✠ ✡✝✡✝✡✝✡✝✡ ✡✝✡✝✡✝✡✝✡ ✡✝✡✝✡✝✡✝✡ ✡✝✡✝✡✝✡✝✡ ✡✝✡✝✡✝✡✝✡ ✡✝✡✝✡✝✡✝✡ ✡✝✡✝✡✝✡✝✡ ✡✝✡✝✡✝✡✝✡ ✡✝✡✝✡✝✡✝✡ ✡✝✡✝✡✝✡✝✡ ☛✝☛✝☛✝☛✝☛ ☛✝☛✝☛✝☛✝☛ ☛✝☛✝☛✝☛✝☛ ☛✝☛✝☛✝☛✝☛ ☛✝☛✝☛✝☛✝☛ ☛✝☛✝☛✝☛✝☛ ☛✝☛✝☛✝☛✝☛ ☛✝☛✝☛✝☛✝☛ ☛✝☛✝☛✝☛✝☛ ☛✝☛✝☛✝☛✝☛

ξb ξa x λ f (x)

1 1

f(x) λ ρ1

s

ρ2

s 2

λ f (x)

2

(job size) Density of arrival rate

Feng, Misra, Rubenstein Optimal static dispatching

slide-16
SLIDE 16

Model Optimal static strategies Mappings of queues Conclusion

Remaining issues for finding an optimal static strategy

Homogeneous case

◮ To find the optimal thresholds of size intervals. ◮ Mapping (which queue gets which interval) is irrelevant.

Heterogeneous case

◮ Nested size intervals are more complicated. ◮ Mappings between queues and intervals matter.

What is the best mapping in heterogeneous case?

◮ No fixed rules(e.g. slower queue gets the interval of shorter jobs) ◮ Depending on job size distributions

Feng, Misra, Rubenstein Optimal static dispatching

slide-17
SLIDE 17

Model Optimal static strategies Mappings of queues Conclusion

Mapping of intervals to queues: examples

◮ Only SI strategy (more simpler than NSI) and two queues ◮ Compare two mappings (ascending and descending) with

corresponding optimal thresholds

0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5 E[WSI-D]*/E[WSI-A]* c1 (c) Bounded Pareto, ρ=0.8, µ=1, η/κ=104 α=1.1 α=1.2 α=1.4 α=1.5 α=1.7 α=2 α=2.5 α=10 α=1.1 α=1.2 α=1.4 α=1.5 α=1.7 α=2 α=2.5 1 1.2 1.4 1.6 1.8 2 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5 E[WSI-D]*/E[WSI-A]* c1 (c) Weibull, ρ=0.8, µ=1 α=0.2 α=0.3 α=0.4 α=0.5 α=0.6 α=0.8 α=1 α=10

Bounded Pareto Weibull Best: faster server gets short jobs Best: faster server gets long jobs

(Y-axis: ratio between optimal mean response times of ascending and descending

  • mapping. X-axis: speed fraction of the slower queue)

Feng, Misra, Rubenstein Optimal static dispatching

slide-18
SLIDE 18

Model Optimal static strategies Mappings of queues Conclusion

Mapping of intervals to queues: examples (cont’d)

◮ Two queues, SI strategy ◮ Only two mappings

◮ Ascending mapping: faster server gets interval of long jobs ◮ Descending mapping: faster server gets interval of short

jobs

◮ For each mapping, an optimal threshold (or load

partitioning) can be found.

◮ Log-normal distribution is mapping-invariant here (two

mappings obtains the same optimal) response time.

◮ All distributions such that

m(x) = E[X]−m ψ x

  • , where m(x) =

x tdF(t), ψ:constant is mapping-invariant (for two queues and SI strategy).

Feng, Misra, Rubenstein Optimal static dispatching

slide-19
SLIDE 19

Model Optimal static strategies Mappings of queues Conclusion

Conclusion

◮ For FCFS, optimal static strategy is an NSI. ◮ For FCFS homogeneous queues, optimal static strategy is

an SI.

◮ Other scheduling policies can be used on each queue. ◮ For PS, size information is useless (w.r.t. mean response

time).

◮ Dynamic case is more complicated. [Whitt 1984] ◮ It is difficult to find the best mapping.

Feng, Misra, Rubenstein Optimal static dispatching