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 Computer Science 2 Department of Electrical Engineering Columbia University in the City of New York 7th October 2005 Feng, Misra, Rubenstein Optimal static dispatching
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
Model Dispatching model Optimal static strategies Static Strategies Mappings of queues Analysis model Conclusion Dispatching model ◮ One dispatcher, followed by multiple queues ◮ Heterogeneous: different server speeds ◮ FCFS policy for each queue ◮ Static dispatching strategy C 1 M/G/1 C 2 M/G/1 C 3 Dispatcher M/G/1 C 4 M/G/1 C 5 M/G/1 Feng, Misra, Rubenstein Optimal static dispatching
Model Dispatching model Optimal static strategies Static Strategies Mappings of queues Analysis model Conclusion 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
Model Dispatching model Optimal static strategies Static Strategies Mappings of queues Analysis model Conclusion Static strategies Examples of static strategies ◮ Random ◮ Size Interval (SI) [Harchol-Balter 1999] 0 5K 2M (job size) To queue 1 To queue 3 To queue 2 ◮ Nested Size Interval (NSI) (more generalized than SI) 0 1K 1M 5M (job size) To queue 1 To queue 3 To queue 1 To queue 2 (Queue 3 is nested in Queue 1) Feng, Misra, Rubenstein Optimal static dispatching
Model Dispatching model Optimal static strategies Static Strategies Mappings of queues Analysis model Conclusion 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 λ i f i ( x ) ◮ We have λ f ( x ) = � n i = 1 λ i f i ( x ) . ◮ The optimal static strategy means the optimal partitioning of function λ f ( x ) to λ i f i ( x ) such that the overall mean waiting time is minimized. Feng, Misra, Rubenstein Optimal static dispatching
Model Dispatching model Optimal static strategies Static Strategies Mappings of queues Analysis model Conclusion Analysis with M / G / − model: example of three queues λ f λ f(x) = λ f (x) + λ f (x) λ f (x) + 1 1 3 3 2 2 Arrival rate density λ f (x) λ f (x) 2 2 1 1 λ f (x) 3 3 x (job size) ◮ To find λ 1 f 1 ( x ) , λ 2 f 2 ( x ) , and λ 3 f 3 ( x ) such that λ f ( x ) = � 3 i = 1 λ i f i ( x ) and the mean waiting time is minimized. Feng, Misra, Rubenstein Optimal static dispatching
Model Homogeneous servers Optimal static strategies Heterogeneous Servers Mappings of queues Sketch of the proofs Conclusion 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
Model Homogeneous servers Optimal static strategies Heterogeneous Servers Mappings of queues Sketch of the proofs Conclusion 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
Model Homogeneous servers Optimal static strategies Heterogeneous Servers Mappings of queues Sketch of the proofs Conclusion Mean waiting time under static strategies The per-job mean waiting time: n � � E [ W ] = 1 λ i ω i � , 2 λ c i ( c i − ρ i ) i = 1 where ◮ λ i is arrival rate of queue i , ◮ ρ i is the (first-order) load of queue i , � ∞ ◮ ω i = λ 0 t 2 f i ( t ) dt is called “second-order load” of queue i , ◮ c i is the capacity (processing speed) of queue i . Feng, Misra, Rubenstein Optimal static dispatching
Model Homogeneous servers Optimal static strategies Heterogeneous Servers Mappings of queues Sketch of the proofs Conclusion Mean waiting time under static strategies (cont’d) Mean waiting time n E [ W ] = 1 � λ i ω i � � 2 λ c i ( c i − ρ i ) i = 1 Objective: minimizing E [ W ] ◮ Recall that: partitioning λ f ( · ) to a sum of λ i f i ( · ) ’s ◮ Objective E [ W ] depends on λ i , ρ i and ω i . ◮ λ i , ρ i and ω i are respectively zeroth-, first-, and second-order moments of λ i f i ( · ) . Feng, Misra, Rubenstein Optimal static dispatching
Model Homogeneous servers Optimal static strategies Heterogeneous Servers Mappings of queues Sketch of the proofs Conclusion Proof for homogeneous case ( c 1 = c 2 = · · · ) 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 λ 2 ω 1 ω 2 c 2 ( c 2 − ρ 2 ) and c 1 ( c 1 − ρ 1 ) > c 1 ( c 1 − ρ 1 ) > ◮ c 2 ( c 2 − ρ 2 ) λ 1 λ 2 ω 1 ω 2 c 2 ( c 2 − ρ 2 ) and c 1 ( c 1 − ρ 1 ) < c 1 ( c 1 − ρ 1 ) < ◮ c 2 ( c 2 − ρ 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
Model Homogeneous servers Optimal static strategies Heterogeneous Servers Mappings of queues Sketch of the proofs Conclusion 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. λ f(x) Density of arrival rate λ f (x) 1 1 λ f (x) �✁�✁�✁�✁�✁�✁�✁� ✂✁✂✁✂✁✂✁✂✁✂✁✂✁✂ 2 2 �✁�✁�✁�✁�✁�✁�✁� ✂✁✂✁✂✁✂✁✂✁✂✁✂✁✂ s ρ �✁�✁�✁�✁�✁�✁�✁� ✂✁✂✁✂✁✂✁✂✁✂✁✂✁✂ s ☎✁☎✁☎✁☎✁☎✁☎ ✄✁✄✁✄✁✄✁✄✁✄ ρ 2 1 �✁�✁�✁�✁�✁�✁�✁� ✂✁✂✁✂✁✂✁✂✁✂✁✂✁✂ ✄✁✄✁✄✁✄✁✄✁✄ ☎✁☎✁☎✁☎✁☎✁☎ �✁�✁�✁�✁�✁�✁�✁� ✂✁✂✁✂✁✂✁✂✁✂✁✂✁✂ ☎✁☎✁☎✁☎✁☎✁☎ ✄✁✄✁✄✁✄✁✄✁✄ �✁�✁�✁�✁�✁�✁�✁� ✂✁✂✁✂✁✂✁✂✁✂✁✂✁✂ ✄✁✄✁✄✁✄✁✄✁✄ ☎✁☎✁☎✁☎✁☎✁☎ ✂✁✂✁✂✁✂✁✂✁✂✁✂✁✂ �✁�✁�✁�✁�✁�✁�✁� ☎✁☎✁☎✁☎✁☎✁☎ ✄✁✄✁✄✁✄✁✄✁✄ ✂✁✂✁✂✁✂✁✂✁✂✁✂✁✂ �✁�✁�✁�✁�✁�✁�✁� ✄✁✄✁✄✁✄✁✄✁✄ ☎✁☎✁☎✁☎✁☎✁☎ ✂✁✂✁✂✁✂✁✂✁✂✁✂✁✂ �✁�✁�✁�✁�✁�✁�✁� ξ x (job size) Feng, Misra, Rubenstein Optimal static dispatching
Model Homogeneous servers Optimal static strategies Heterogeneous Servers Mappings of queues Sketch of the proofs Conclusion Proof for heterogeneous case ( c 1 < c 2 < · · · ) For two queues: c 1 < c 2 ◮ Case 1: their loads are severely unbalanced: either of ◮ Case 1a: λ 1 λ 2 ω 1 ω 2 c 2 ( c 2 − ρ 2 ) and c 1 ( c 1 − ρ 1 ) > c 1 ( c 1 − ρ 1 ) > c 2 ( c 2 − ρ 2 ) ◮ Case 1b: λ 1 λ 2 ω 1 ω 2 c 2 ( c 2 − ρ 2 ) and c 1 ( c 1 − ρ 1 ) < c 1 ( c 1 − ρ 1 ) < c 2 ( c 2 − ρ 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
Recommend
More recommend