Servers. Rong Wu. Department of Computing and Software, McMaster University, Canada. Douglas G. Down

Similar documents
Multi-layered Round Robin Routing for Parallel Servers

Multi-layered Round Robin Routing for Parallel Servers

Load Balancing in Distributed Service System: A Survey

Analysis of Round-Robin Implementations of Processor Sharing, Including Overhead

Designing load balancing and admission control policies: lessons from NDS regime

The Impact of Quanta on the Performance of Multi-level Time Sharing Policy under Heavy-tailed Workloads

Operations Research Letters. Instability of FIFO in a simple queueing system with arbitrarily low loads

State-dependent and Energy-aware Control of Server Farm

Performance Analysis of Priority Queueing Schemes in Internet Routers

M/G/1 and Priority Queueing

Competitive Analysis of M/GI/1 Queueing Policies

Queueing Theory I Summary! Little s Law! Queueing System Notation! Stationary Analysis of Elementary Queueing Systems " M/M/1 " M/M/m " M/M/1/K "

NATCOR: Stochastic Modelling

Exercises Stochastic Performance Modelling. Hamilton Institute, Summer 2010

A Joining Shortest Queue with MAP Inputs


Asymptotics for Polling Models with Limited Service Policies

Task Assignment in a Heterogeneous Server Farm with Switching Delays and General Energy-Aware Cost Structure

Electronic Companion Fluid Models for Overloaded Multi-Class Many-Server Queueing Systems with FCFS Routing

Advanced Computer Networks Lecture 3. Models of Queuing

Minimizing response times and queue lengths in systems of parallel queues

On the static assignment to parallel servers

Dynamic Control of Parallel-Server Systems

Preventing large sojourn times using SMART scheduling

Control of Fork-Join Networks in Heavy-Traffic

Routing and Staffing in Large-Scale Service Systems: The Case of Homogeneous Impatient Customers and Heterogeneous Servers 1

THE HEAVY-TRAFFIC BOTTLENECK PHENOMENON IN OPEN QUEUEING NETWORKS. S. Suresh and W. Whitt AT&T Bell Laboratories Murray Hill, New Jersey 07974

Module 5: CPU Scheduling

Season Finale: Which one is better?

Fair Operation of Multi-Server and Multi-Queue Systems

Chapter 6: CPU Scheduling

CS418 Operating Systems

Other properties of M M 1

On the Pathwise Optimal Bernoulli Routing Policy for Homogeneous Parallel Servers

Scheduling I. Today. Next Time. ! Introduction to scheduling! Classical algorithms. ! Advanced topics on scheduling

Queueing systems. Renato Lo Cigno. Simulation and Performance Evaluation Queueing systems - Renato Lo Cigno 1

CSCE 313 Introduction to Computer Systems. Instructor: Dezhen Song

On the Resource/Performance Tradeoff in Large Scale Queueing Systems

MASSACHUSETTS INSTITUTE OF TECHNOLOGY 6.265/15.070J Fall 2013 Lecture 22 12/09/2013. Skorokhod Mapping Theorem. Reflected Brownian Motion

Online Supplement to Delay-Based Service Differentiation with Many Servers and Time-Varying Arrival Rates

Combining Opportunistic and Size-Based Scheduling in Wireless Systems

Blind Fair Routing in Large-Scale Service Systems with Heterogeneous Customers and Servers

Optimal state-free, size-aware dispatching for heterogeneous M/G/-type systems

Completion Time Scheduling and the WSRPT Algorithm

11 The M/G/1 system with priorities

Analytic Modeling of Load Balancing Policies for Tasks with Heavy-tailed Distributions

Tutorial: Optimal Control of Queueing Networks

Dynamic Control of Running Servers

Blind Fair Routing in Large-Scale Service Systems with Heterogeneous Customers and Servers

Periodic Load Balancing

Queueing Systems: Lecture 3. Amedeo R. Odoni October 18, Announcements

Contents Preface The Exponential Distribution and the Poisson Process Introduction to Renewal Theory

Non Markovian Queues (contd.)

queue KTH, Royal Institute of Technology, Department of Microelectronics and Information Technology

Queueing with redundant requests: exact analysis

arxiv: v1 [math.pr] 11 May 2018

Elementary queueing system

A Robust Queueing Network Analyzer Based on Indices of Dispersion

Introduction to Queueing Theory

This lecture is expanded from:

Scheduling. Uwe R. Zimmer & Alistair Rendell The Australian National University

Impact of size-based scheduling on flow level performance in wireless downlink data channels

Scheduling for the tail: Robustness versus Optimality

CPU Scheduling. CPU Scheduler

OPTIMAL CONTROL OF A FLEXIBLE SERVER

Dynamic Call Center Routing Policies Using Call Waiting and Agent Idle Times Online Supplement

Nearly Insensitive Bounds on SMART Scheduling

TOWARDS BETTER MULTI-CLASS PARAMETRIC-DECOMPOSITION APPROXIMATIONS FOR OPEN QUEUEING NETWORKS

CPU Scheduling. Heechul Yun

An M/M/1 Queue in Random Environment with Disasters

Fluid and Diffusion Limits for Transient Sojourn Times of Processor Sharing Queues with Time Varying Rates

Comp 204: Computer Systems and Their Implementation. Lecture 11: Scheduling cont d

Introduction to Queueing Theory

Mean-Field Analysis of Coding Versus Replication in Large Data Storage Systems

Performance Evaluation of Queuing Systems

CPU scheduling. CPU Scheduling

Massachusetts Institute of Technology

Queueing Theory and Simulation. Introduction

Class 11 Non-Parametric Models of a Service System; GI/GI/1, GI/GI/n: Exact & Approximate Analysis.

Stability of the two queue system

Simulation of Process Scheduling Algorithms

Scheduling I. Today Introduction to scheduling Classical algorithms. Next Time Advanced topics on scheduling

Introduction to Queueing Theory with Applications to Air Transportation Systems

HITTING TIME IN AN ERLANG LOSS SYSTEM

COMP9334 Capacity Planning for Computer Systems and Networks

How to deal with uncertainties and dynamicity?

Computer Science, Informatik 4 Communication and Distributed Systems. Simulation. Discrete-Event System Simulation. Dr.

M/G/1/MLPS compared to M/G/1/PS

Process Scheduling. Process Scheduling. CPU and I/O Bursts. CPU - I/O Burst Cycle. Variations in Bursts. Histogram of CPU Burst Times

One important issue in the study of queueing systems is to characterize departure processes. Study on departure processes was rst initiated by Burke (

VARUN GUPTA. Takayuki Osogami (IBM Research-Tokyo) Carnegie Mellon Google Research University of Chicago Booth School of Business.

Chapter 2 Queueing Theory and Simulation

BIRTH DEATH PROCESSES AND QUEUEING SYSTEMS

On the Partitioning of Servers in Queueing Systems during Rush Hour

SQF: A slowdown queueing fairness measure

Chapter 6 Queueing Models. Banks, Carson, Nelson & Nicol Discrete-Event System Simulation

LSN 15 Processor Scheduling

Dynamic Matching Models

Queues and Queueing Networks

Chapter 11. Output Analysis for a Single Model Prof. Dr. Mesut Güneş Ch. 11 Output Analysis for a Single Model

Transcription:

MRRK-SRPT: a Scheduling Policy for Parallel Servers Rong Wu Department of Computing and Software, McMaster University, Canada Douglas G. Down Department of Computing and Software, McMaster University, Canada Abstract For a system with a dispatcher and several identical servers in parallel, we propose a policy consisting of modified multi-layered round robin routing followed by shortest remaining processing time scheduling. We show that this policy has a heavy traffic limit that is identical to one in which there is a single queue (no routing) and optimal scheduling. Under light traffic, this policy is asymptotically optimal in the sense that it minimizes the first two terms of the Taylor series expansion for the waiting time. Additional simulation results show that this policy performs well under various conditions and that using policies other than shortest remaining processing time may yield reasonable performance. Key words: heavy and light traffic approximations, parallel servers, round robin routing, shortest remaining processing time scheduling Email addresses: wur2@mcmaster.ca (Rong Wu), downd@mcmaster.ca (Douglas G. Down). Preprint submitted to Elsevier Science

1 Introduction With the explosive growth of the Internet and advances in computer networks, distributed systems with cluster-based architectures such as web server farms and distributed databases have become popular. Such systems typically include a front-end dispatcher and several back-end parallel servers, a configuration that we will call a loosely coupled server system. Effective and scalable scheduling of tasks for such loosely coupled server systems is crucial. The scheduling policy for a loosely coupled server system can be divided into two components, the routing policy, which assigns tasks to servers, and the particular local scheduling policy, which is employed at each of the servers to which the tasks are assigned. Examples of routing policies are random routing (if c is the number of servers, a task is assigned to a particular server with probability 1/c), round robin (RR) routing (the ith arriving task is assigned to the (i mod c)th server), join-the-shortest-queue (JSQ), where each task is assigned to the server with the least number of waiting tasks, join-the-shortest-expected-workload (JSEW) routing (each task is assigned to the server with the least expected workload), and join-the shortest-actual-workload (JSAW), where each task is assigned to the server with the least work load. Varying degrees of information about the system state are required by each routing rule: random and round robin require none, while JSQ requires the queue length information, JSEW requires the expected workload information at each server, and JSAW requires precise workload information at each server. Examples of local scheduling policies are first-come-first-served (FCFS), in which tasks are served in the order that they arrive, shortest-remaining-processing-time (SRPT), where priority is given to the task with the least processing time remaining, and shortest-processing-time (SPT), where priority is given to the task with the 2

smallest processing time. We will use the format A-B to represent a scheduling policy, where A denotes the routing policy and B denotes the local scheduling policy. The performance measure in which we are interested is the mean waiting time in the system. If the processing times are known on arrival, Schrage [14] showed that for a single server with an arbitrary arrival process and arbitrary processing time distribution, SRPT scheduling minimizes the completion time of the nth departing job. Therefore, for our model, no matter what the routing policy, it is optimal to use SRPT at each server. SRPT is rarely used in practice due to several reasons, such as the concern for pre-emption overhead. In [1], Bansal and Harchol-Balter give a proof that the pre-emption overhead under SRPT is actually lower than under practical implementations of scheduling policies such as Processor Sharing (PS). In [6], the authors implement SRPT scheduling in web servers and make a convincing case for SRPT being a viable policy in practice. The focus of this paper is to propose a routing policy followed by SRPT local scheduling to provide good system performance for various system loads and task size variabilities. We assume that the task size is known upon arrival. In [4], we identified the optimal policy (c-srpt) for a tightly coupled server system, i.e. one in which there is a single queue for all of the servers. The c-srpt policy gives preemptive (resume) priority to the first c tasks with the least remaining processing times (if there are less than c tasks present, every task receives service). We showed that this policy minimizes the completion time of the nth departing task from the system. The reason to explore c-srpt is that it provides a lower bound for the performance of other policies, such as those policies for a loosely coupled server system. It also gives us insight into how to construct a policy for loosely coupled server systems. In [4], we also proposed multi-layered round robin routing followed by SRPT local scheduling and proved that the diffusion limit of the proposed policy converges to that of the lower bound (c-srpt) 3

for a discrete task processing time distribution. Under light traffic, RR-SRPT was shown to be asymptotically optimal in the sense that it minimizes the first two terms of the Taylor series expansion for the waiting time. In this paper, we exploit those insights to design a policy which provides good performance under general system loads. Our work in this paper is thus a natural extension of that contained in [4]. The organization of this paper is as follows. Section 2 describes some related work. In Section 3, we describe the proposed policy. We show that the policy has a heavy traffic limit that is identical to c-srpt for a discrete task size distribution. For general processing time distributions under light traffic conditions, the proposed policy is asymptotically optimal in the sense that it minimizes the first two terms of the Taylor series expansion for the waiting time. Section 4 gives some simulation results for discrete processing time distributions and Bounded Pareto processing time distributions. We compare our policy with JSAW-FCFS, SITA-E, and other SRPT related policies. In Section 5, we present possible alternatives to the proposed policy. Section 6 provides some concluding remarks. 2 Related Work A number of policies have been proposed and studied for loosely coupled server systems. In this section, we give a brief review of this work. Until indicated otherwise, the references discussed assume that processing times are not known until a task is completed. If the server information (e.g. queue length) is not considered, Jean-Marie and Liu [8] showed that round robin routing yields smaller waiting times than the Bernoulli policy (Random) routing in the sense of increasing convex ordering. The local scheduling policy used here is FCFS. Ephremides, Varaiya, 4

and Walrand in [5] have shown that round robin routing followed by FCFS local scheduling minimizes the sum of the expected completion times for the first n tasks (for all n) if the task sizes follow an exponential distribution. Liu and Towsley in [9] showed that round robin routing followed by FCFS local scheduling minimizes (in the sense of increasing convex ordering) response times and queue lengths when processing times have increasing hazard rate. If the dispatcher has global state information, and if all underlying distributions are exponential, Winston in [18] showed that JSQ routing followed by FCFS local scheduling minimizes the mean waiting time in the system. Ephremides, Varaiya, and Walrand in [5] showed that JSQ-FCFS also minimizes the expected total time for the completion of all tasks arriving by some fixed time. Weber in [16] proved that JSEW routing followed by FCFS local scheduling stochastically maximizes the number of completed tasks for task size distributions with non-decreasing hazard rate. As the variability of the task size distribution grows, Whitt in [17] argued that the JSEW-FCFS discipline does not minimize the mean waiting time by providing some counter examples. We now turn to the situation when processing times are known on arrival. In recent years, Harchol-Balter, Crovella, and Murta [7] have proposed a routing policy called SITA-E (Size Interval Task Assignment with Equal Load) in which tasks within a particular size range are assigned to the same server, with the size ranges chosen to equalize the loads across servers. The task size variance at each server is significantly smaller than the variance for the processing times of tasks arriving to the system. They showed that SITA-E routing significantly outperforms JSAW routing (with FCFS local scheduling) under high task size variance. Similar policies such as EquiLoad and AdaptLoad are suggested in the work of Ciardo, Riska, and Smirni [2] and Riska, Sun, Smirni and Ciardo [13]. An important issue for SITA-E, EquiLoad, and AdaptLoad is that one must know the processing time distribution 5

to choose appropriate policy parameters. In [15], Ungureanu and her co-authors suggested the Class Dependent Assignment(CDA) routing policy, which divides arrivals into long and short tasks. Short tasks are assigned in a round robin manner and long tasks are kept at the dispatcher until a server becomes idle. Their simulation results showed that CDA-FCFS performs similarly to JSAW-FCFS (CDA is worse than JSAW if the communication overhead is ignored). In this paper, we also do simulations to show that the performance of the proposed policy is better than JSAW-FCFS. In [4], we gave a discussion of RRK-SRPT for a discrete distribution and RR-SRPT for general distributions. RRK-SRPT uses multi-layered round robin as the routing policy and SRPT as the local scheduling policy. Suppose there are K types of tasks. To implement a multi-layered round robin routing policy, the dispatcher employs an independent round robin policy for each type of task. If we approximate the system using a formal diffusion approximation (i.e. under heavy traffic conditions), we showed that the diffusion limits of the queue lengths of RRK-SRPT converge to those of c-srpt for a discrete task processing time distribution (which is what we mean by asymptotically optimal in heavy traffic). Under light traffic, the performance of RRK-SRPT is worse than RR-SRPT. In this paper, we design a policy which takes advantage of the asymptotic performance results for RRK-SRPT and RR-SRPT to provide good system performance under general system loads. 3 Proposed Policy In [4], we have shown that RRK-SRPT is asymptotically optimal under heavy traffic conditions for a discrete task processing distribution and RR-SRPT is asymptotically optimal under light traffic conditions. If we relax the assumption of the 6

system operating in either heavy or light traffic, this means that each server spends some non-zero proportion of time idle and non-zero proportion of time busy, so at moderate loads, it is not clear what a reasonable policy would be. This is because in [4], we have shown that RRK-SRPT is not optimal in light traffic. The probability of sending two consecutive arrivals to the same server is not zero, which has the potential of creating longer task waiting times than RR-SRPT. In this section, we design a policy which is based on RRK-SRPT but addresses its drawbacks under light traffic. The policy allows the dispatcher to send new arrivals to an idle server (if such an idle server exists). In light traffic, there are always idle servers, therefore the policy does not send two consecutive tasks to the same server. Hence it has the same light traffic behaviour as RR-SRPT. The following is a formal description for the proposed policy, which uses modified multi-layered round robin routing followed by SRPT local scheduling. We will call this policy MRRK-SRPT. Let l i,j (t) represent the most recent time before t that server j has received a type i task, c represent the number of servers in the system, a n represent the arrival time of task n, and I(t) represent the set of idle servers in the system at time t. MRRK-SRPT sends task n of type i to server k, where arg min j I(an) {l i,j (t)}, if I(a n ) k = arg min 1 j c {l i,j (t)}, otherwise. At each server, SRPT is used as the local scheduling policy. Notice that compared to either RRK-SRPT or RR-SRPT, MRRK-SRPT has some communication overhead. However, such communication overhead is very low since each server only needs to notify the dispatcher when it becomes idle. Now we consider the performance of MRRK-SRPT. In Section 3.1, we show that the diffusion limit of the queue lengths of MRRK-SRPT converges to that of c- 7

SRPT. In Section 3.2, we show that MRRK-SRPT is asymptotically optimal in light traffic, in the sense that it minimizes the first two terms of the Taylor series expansion for the waiting time. 3.1 Heavy Traffic We use the same procedure as for RRK-SRPT in [4] to inspect the performance of MRRK-SRPT in heavy traffic. We will compare the performance of c-srpt and MRRK-SRPT. We assume that arrivals occur according to a Poisson process of rate λ. A task has processing times that are chosen from a discrete distribution with finite support. Tasks with processing times x k are labelled as type k tasks. The processing time X for a generic task is given by P [X = x k ] = α k, k = 1,..., K, (1) where α k > 0, K k=1 α k = 1, and the possible processing times are ordered x 1 < x 2 < < x K. If K = 1, the problem is trivial, so from this point we assume K > 1. For the entire network, the interarrival and processing time sequences for each type k are denoted by {u k i, i 1} and {v k i, i 1}, respectively. The mean and variance of a generic element of each sequence are λ k = (E[u k 1]) 1 = α k λ, a k = V ar(u k 1) = 1/αkλ 2 2, µ k = (E[v1]) k 1 = 1/x k, s k = V ar(v1) k = 0. We assume that we have a sequence of systems indexed by (n) where, as n, 8

λ k (n) λ k, a k (n) a k, µ k (n) µ k, s k (n) = 0. If Q k (t) is the number of type k tasks in the system at time t, we form the scaled sequence where we assume that ˆQ (n) k (t) = n 1/2 Q (n) k (nt), Q (n) k (0) = 0, 1 k K 1. The heavy traffic conditions are as follows. Let ρ i (n) be the load due to tasks of type i, i.e. ρ i (n) = λ i (n)/cµ i (n), 1 i K. We assume ρ i (n) < 1, 1 i K, and d i (n), as n, 1 i K 1, d K (n) d K, as n, < d k < 0, ρ i (n) ρ i, as n, 1 i K 1. Let RBM(a, b) denote a reflected Brownian motion with drift a and variance b. Weak convergence in the metric space consisting of all right continuous functions with left limits will be denoted by =. The following theorem gives the diffusion limit for a loosely coupled server system operating under MRRK-SRPT. Theorem 1 For MRRK-SRPT, ˆQ (n) k = 0, 1 k K 1, ˆQ (n) K = c ( K α k λx 2 ) k RBM d K,. x K k=1 c 2 Proof. If we focus attention on a single server, denoting by λ o k(n), a o k(n), µ o k(n), and s o k(n) the associated arrival rate, interarrival time variance, processing rate, and 9

processing time variance for type k tasks, we have µ o k(n) = µ k (n) and s o k(n) = s k (n). Now, if I o (t) is the cumulative idle time of a particular server at time t, and as Îo (t) = n 1/2 I o,(n) (t) 0, we have λ o k(n) λ k /c a o k(n) ca k. Now, these parameters are the same as for RRK-SRPT, so by Theorem 3.1 of [4] and the fact that there are c identical servers, the result follows. We say that a policy is asymptotically optimal in heavy traffic if it has the same diffusion limit as c-srpt. (Note that this means that if we were to use the diffusion approximation to approximate the mean waiting time, the approximations for c- SRPT and MRRK-SRPT would be identical.) Theorem 2 MRRK-SRPT is asymptotically optimal in heavy traffic. Proof. That RRK-SRPT has the same diffusion approximation as c-srpt follows from Theorem 3.2 of [4] and Theorem 1. 3.2 Light Traffic In [4], we showed that in light traffic, RR-SRPT is asymptotically optimal in the sense that it minimizes the first two terms of the Taylor series expansion for the waiting time. Also, RRK-SRPT is not optimal due to the non-zero probability that two consecutive tasks could be sent to the same server. As we did for RR-SRPT, we can use Reiman-Simon theory ([11,12]) to show that MRRK-SRPT is asymptotically optimal in light traffic. 10

First, we introduce Reiman-Simon light traffic theory. Once again, we assume an arrival process that is Poisson with rate λ. Let {v n, n = 0, ±1, ±2 } and {w n, n = 0, ±1, ±2} represent processing time and waiting time sequences, respectively. We are interested in P λ [w > x] (x 0), the complementary cumulative distribution function of the stationary waiting time. To force the system to reach steady state, we let the system operate from time t =. Hence, w 0 = st w, where = st means equality in distribution. Define two events, and {t}, where denotes the event that no task arrives in the interval (, ) except for a tagged task which arrives at time t = 0 (with associated processing time v 0 ), and {t} denotes the event where in addition to the tagged task, there is exactly one more arrival at time t (with processing time v). An expression for P λ [w > x] is developed by conditioning on these two events. Define ψ = 1[w 0 > x], φ(λ) = ψdp λ, ˆψ( ) = E λ [ψ ], ˆψ({t}) = E λ [ψ {t}], t IR. Proposition 3 provides a means to estimate P λ [w > x] as λ 0. It can be found as Theorem 2 in [11]. Proposition 3 If there exists θ > 0 such that E[e θv ] < for θ < θ, then lim P λ [w > x] = ˆφ( ) λ 0 + and d dλ φ(0 d +) = lim λ 0 + dλ IR φ(λ) = ( ) ˆψ({t}) ˆψ( ) dt. Proposition 3 gives us a means to estimate the derivative of the waiting time distribution in light traffic. The waiting time distribution itself is then estimated by 11

using the Taylor series expansion around λ = 0. If F (x) is a distribution, let F (x) = 1 F (x) (x 0) represent its complement. Theorem 4 provides results for the performance of MRRK-SRPT in light traffic. Theorem 4 For a loosely coupled server system with Poisson arrivals of rate λ and finite exponential moment for the processing time distribution F, let w MRRK represent the waiting time in steady-state under MRRK-SRPT. MRRK-SRPT is asymptotically optimal in light traffic in the sense that the first two terms of the Taylor expansion of P λ [w > x] (x 0) are minimized. Proof. On the event, ˆψ( ) = P [v > x] = F (x), as w 0 = v 0. Under MRRK routing, on the event {t}, the tasks arriving at times 0 and t cannot be assigned to the same queue. It immediately follows that w 0 = v 0, ˆψ({t}) = P [v 0 > x] = F (x), d dλ φ(0 ( ) +) = ˆψ({t}) ˆψ( ) dt = 0. Proposition 3 then implies that if we take a Taylor series expansion of P λ [w > x], P λ [w > x] = F (x) + o(λ), x 0. (2) A task s waiting time cannot be less than its processing time. Therefore, the value of P λ [w > x] is minimized under MRRK routing, if we ignore the terms of order λ 2 and higher in (2). We have shown that MRRK-SRPT is asymptotically optimal in both heavy and light traffic. In the next section, we use simulation to show that MRRK-SRPT 12

provides good performance under general system loads. 4 Simulation Results We perform our simulations for both two-point and Bounded Pareto task processing time distributions. To get a better idea for the performance of MRRK-SRPT, we also do simulations for RRK-SRPT, RR-SRPT, and c-srpt. For the Bounded Pareto distribution, we do simulations for SITA-E and JSAW-FCFS in addition to the aforementioned SRPT related policies. The number of servers in the system is chosen to be 8. Tasks arrive according to a Poisson process with rate λ, and this rate is adjusted to achieve the desired loads (ρ). Table 3 gives the 90% Confidence Interval for expected queue length with two-point processing time distributions under different system loads and task size variances. We ran 30 replications for each policy. Each replication includes 1.0 10 6 arrivals. Table 1 gives the parameters for the different two-point processing time distributions used. The processing times of type 1 and type 2 tasks are given by x 1 and x 2, respectively. The proportion of type 1 tasks is α 1. The proportion of type 2 tasks is 1 α 1. Table 2 gives the remaining parameters. There is a case number following each policy in Table 1. Each case number indicates the two-point processing time distribution used. For instance, RR2-SRPT (1) means we run RR2-SRPT on a two-point task processing time distribution with x 1 = 1 and x 2 = 4, and where the proportion of type 1 tasks is 0.333333. Tables 5 and 6 give the 90% Confidence Interval for expected queue length with Bounded Pareto distributions under different system loads and task size variances. We ran 91 replications for JSAW-FCFS, and 30 replications for other policies. Each replication includes 1.0 10 6 arrivals. The reason we also use the Bounded Pareto 13

Table 1 Type of Tasks in Simulation Case x 1 x 2 α 1 (1) 1 4 0.333333 (2) 1 100 0.979798 (3) 1 10000 0.99979998 Table 2 Parameters for Two-Point Processing Time Distribution ρ E[X] 1/λ 0.5 3 0.750 0.7 3 0.536 0.85 3 0.441 0.95 3 0.395 distribution is that distributions of this form appear to be a feature in many aspects of computing systems [3,7]. As such, this distribution appears frequently in the literature in this area. We examined two particular instances of the Bounded Pareto distribution. The Bounded Pareto distribution with density f is as follows: αk α x α 1 0 < k x p 1 (k/p) α f(x) = 0 otherwise where 0 < α < 2 is the exponent of the power law, k is the smallest possible observation, and p is the largest possible observation. We let k = 512 and p = 10 10. Table 4 gives the parameters used in simulation. In Tables 5 and 6, MRR2-SRPT(1) 14

Table 3 90% CI of Mean Expected Queue Length Policy ρ = 0.5 ρ = 0.7 ρ = 0.85 ρ = 0.95 MRR2-SRPT (1) (4.059, 4.062) (5.998, 6.004) (8.549, 8.565) (15.312, 15.481) RR-SRPT (1) (4.135, 4.138) (6.579, 6.587) (10.858, 10.897) (25.063, 25.440) RR2-SRPT (1) (4.222, 4.224) (6.259, 6.265) (8.839, 8.859) (15.584, 15.756) 8-SRPT (1) (4.046, 4.048) (5.924, 5.929) (8.361, 8.376) (14.916, 15.097) MRR2-SRPT (2) (4.123, 4.134) (6.097, 6.117) (8.637, 8.724) (13.750, 14.247) RR-SRPT (2) (5.579, 5.606) (10.303, 10.406) (19.772, 20.227) (53.246, 57.191) RR2-SRPT (2) (4.585, 4.600) (6.859, 6.884) (9.449, 9.501) (14.934, 15.644) 8-SRPT (2) (4.098, 4.111) (5.925, 5.946) (8.142, 8.205) (13.438, 13.846) MRR2-SRPT (3) (4.057, 4.178) (6.041, 6.236) (8.089, 8.854) (11.058, 12.623) RR-SRPT (3) (5.449, 5.698) (9.972, 10.653) (14.776, 16.690) (21.467, 23.636) RR2-SRPT (3) (4.574, 4.700) (6.591, 6.824) (8.853, 9.334) (12.133, 13.959) 8-SRPT (3) (3.957, 4.087) (5.740, 5.931) (7.6333, 8.119) (9.635, 10.762) and RR2-SRPT (1) mean that the policies divide the arrivals into two types of tasks, where the probability a task is of type 1 is 0.85. In other words, type 1 tasks have processing times in [512, 2488] and type 2 tasks have processing times in [2488, 10 10 ]. MRR2-SRPT(2) and RR2-SRPT (2) also divide the arrivals into two types of tasks, but such that the probability a task is of type 1 is 0.95. In other words, type 1 tasks have processing times in [512, 6220] and type 2 tasks have processing 15

times in [6220, 10 10 ]. MRR8-SRPT and RR8-SRPT divide arrivals into eight types of tasks, where the eight intervals are chosen according to the SITA-E algorithm. Table 4 Parameters for Bounded Pareto Distributions α ρ E[X] 1/λ 1.2 0.5 2965 741.25 1.2 0.7 2965 390.13 1.2 0.85 2965 436.03 1.2 0.95 2965 529.46 1.5 0.5 1535.65 383.91 1.5 0.7 1535.65 274.29 1.5 0.85 1535.65 225.88 1.5 0.95 1535.65 202.11 Our simulation results show that MRRK-SRPT performs well under various conditions, in particular when the processing time has high variance (i.e. α = 1.2 for the Bounded Pareto distribution). Its performance is very close to c-srpt for discrete distributions. SITA-E and JSAW-FCFS perform worse than the SRPT based policies. If the task variance and system load are high, JSAW-FCFS performs worst, which is not surprising. However, this does suggest that under heavy load, the role of the local scheduling policy is more important than that of the routing policy. Therefore, if the system load and task size variance are high, if we employ optimal local scheduling policies, we can use relatively naive, (near) state independent routing. Even in the face of arguments that SRPT is implementable [1,6], it may 16

Table 5 90% CI of Expected Queue Length with Bounded Pareto Distribution (α = 1.2) Policy ρ = 0.5 ρ = 0.7 ρ = 0.85 ρ = 0.95 MRR2-SRPT (1) (3.978, 4.129) (5.905, 6.104) (8.419, 8.835) (11.439, 12.135) RR2-SRPT (1) (4.956, 5.181) (8.016, 8.349) (11.566, 12.117) (15.463, 15.999) MRR2-SRPT (2) (3.996, 4.175) (5.822, 6.008) (8.261, 8.602) (10.773, 11.572) RR2-SRPT (2) (4.879, 5.107) (7.964, 8.368) (11.487, 11.952) (15.171, 15.921) MRR8-SRPT (4.029, 4.195) (5.991, 6.293) (8.195, 8.590) (10.954, 11.995) RR8-SRPT (4.912, 5.083) (7.981, 6.289) (11.144, 11.702) (14.593, 15.302) RR-SRPT (4.968, 5.180) (8.154, 8.396) (11.891, 12.364) (16.122, 16.833) SITA-E (6.124, 6.493) (12.451, 13.200) (26.086, 28.111) (74.640, 79.292) JSAW-FCFS (4.249, 4.690) (26.759, 44.188) (418.054, 1196.224) (2430.441, 4327.356) 8-SRPT (3.893, 4.029) (5.541, 5.736) (7.051, 7.315) (8.696, 9.193) be useful to examine other local scheduling policies. In the next section we examine whether other options may be employed that rely on more common policies, in particular options that are based on FCFS. 5 FCFS-related Local Scheduling SRPT can be approximated by a priority queue, where high priority tasks have preemptive priority over low priority tasks. For discrete distributions, tasks with small task processing times have higher priority. This means that type i tasks have higher 17

Table 6 90% CI of Expected Queue Length with Bounded Pareto Distribution (α = 1.5) Policy ρ = 0.5 ρ = 0.7 ρ = 0.85 ρ = 0.95 MRR2-SRPT (1) (4.096, 4.164) (6.319, 6.391) (9.154, 9.297) (14.065, 14.590) RR2-SRPT (1) (4.877, 4.919) (8.123, 8.300) (12.454, 12.700) (19.556, 19.909) MRR2-SRPT (2) (4.097, 4.145) (6.260, 6.387) (9.143, 9.272) (13.638, 13.914) RR2-SRPT (2) (4.831, 4.882) (8.024, 8.114) (12.233, 12.435) (19.032, 19.566) MRR8-SRPT (4.099, 4.133) (6.294, 6.378) (9.299, 9.453) (14.239, 14.646) RR8-SRPT (5.205, 5.278) (8.616, 8.734) (12.815, 13.009) (18.777, 19.203) RR-SRPT (4.869, 4.900) (8.253, 8.391) (12.989, 13.197) (20.767, 21.283) SITA-E (7.358, 9.962) (15.726, 18.892) (31.637, 84.369) (104.434, 147.852) JSAW-FCFS (4.070, 4.092) (7.225, 7.459) (33.025, 44.772) (708.748, 2498.472) 8-SRPT (4.012, 4.036) (5.833, 5.904) (7.700, 7.871) (10.152, 10.419) priority than type j tasks if x i < x j, which is very close to SRPT (if one looks at the priorities of all tasks in the system, these policies differ by at most one task). For a continuous task processing time distribution with density function f(x), we could partition the support of f into K intervals such that a type k task is one whose processing time lies in the kth interval. As in the discrete case, type i tasks get higher priority than type j tasks if i < j. A server then uses FCFS within tasks of the same type. We use MRRK-MultiPriorityFCFS to represent such a policy. Comparing to MRRK-SRPT, the main difference is that each server does not need to keep the remaining processing time of each task, rather only needs the total number of each 18

type of task that is waiting. Notice that MRRK-MultiPriorityFCFS has the same light and heavy traffic properties as MRRK-SRPT. (In other words, for a discrete distribution, Theorems 2 and 4 hold if we replace MRRK-SRPT by MRRK-MultiPriorityFCFS.) This is additional justification that it is a reasonable policy to consider. One would expect that at intermediate values of load, the performance of MRRK-MultiPriorityFCFS would be somewhat worse than MRRK-SRPT. We suggest through simulation that this gap may not be significant. Tables 7 and 8 give the 90% Confidence Interval for the expected queue length for Bounded Pareto distributions with different system loads and task size variabilities. The parameters used in the simulation are the same as Table 4. We ran 30 replications for each policy. Each replication includes 1.0 10 6 arrivals. MRR2-MultiPriorityFCFS (1) and (2) mean we divide the tasks into two types, the intervals being the same as for MRR2-SRPT (1) and (2). MRR8-MultiPriorityFCFS means there are 8 types of tasks. The intervals are chosen according to the SITA-E algorithm. Table 7 90% CI of Expected Queue Length with Bounded Pareto Distribution (α = 1.2) Policy ρ = 0.5 ρ = 0.7 ρ = 0.85 ρ = 0.95 MRR2-MultiPriorityFCFS (1) (3.963, 4.086) (5.930, 6.122) (8.496, 8.994) (11.078, 11.854) MRR2-MultiPriorityFCFS (2) (3.935, 4.057) (5.914, 6.230) (8.304, 8.728) (11.325, 12.048) MRR8-MultiPriorityFCFS (3.963, 4.086) (6.113, 6.432) (8.367, 8.754) (10.866, 11.494) The results show that the performance of MRRK-MultiPriorityFCFS is nearly the same as MRRK-SRPT (compare the values in Table 7 with the corresponding values in Table 5, for example). Our results suggest that partitioning tasks according 19

Table 8 90% CI of Expected Queue Length with Bounded Pareto Distribution (α = 1.5) Policy ρ = 0.5 ρ = 0.7 ρ = 0.85 ρ = 0.95 MRR2-MultiPriorityFCFS (1) (4.104, 4.153) (6.293, 6.343) (9.199, 9.374) (14.302, 14.954) MRR2-MultiPriorityFCFS (2) (4.087, 4.121) (6.281, 6.396) (9.149, 9.309) (13.899, 14.474) MRR8-MultiPriorityFCFS (4.118, 4.159) (6.314, 6.415) (9.272, 9.466) (14.110, 14.453) to size and using preemption in the local scheduling policy are the key factors. As long as something reasonable is done that satisfies these constraints, near optimal performance can be achieved. 6 Conclusion We proposed the policy MRRK-SRPT for loosely coupled server systems and showed that MRRK-SRPT is asymptotically optimal for a discrete task size distribution in heavy traffic and for general task size distributions in light traffic. Our simulation results also show that MRRK-SRPT performs well under various conditions, especially for high processing time variances and system loads. Although there is communication overhead for MRRK-SRPT, such communication overhead is not significant. The MRRK-SRPT policy appears to outperform all other policies proposed in the literature. We feel that the key is preemption in the local scheduling policy, which if allowed, allows the routing decision to be made simpler. Of course, if preemption is not allowed, our observations are not valid. This conclusion is amplified by the observation that MRRK-MultiPriorityFCFS has very similar performance to MRRK-SRPT. 20

References [1] N. Bansal and M. Harchol-Balter. Analysis of SRPT Scheduling: Investigating Unfairness. In Proceedings of ACM Sigmetrics 2001 Conference on Measurement and Modeling of Computer Systems, 279-290, 2001. [2] G. Ciardo, A. Riska, and E. Smirni. Equiload: A Load Balancing Policy for Clustered Web Servers. Performance Evaluation, 46:101 124, 2001. [3] M. E. Crovella and A. Bestavros. Self-Similarity in World Wide Web Traffic: Evidence and Possible Causes. IEEE/ACM Transactions on Networking, 5(6):835 846, December 1997. [4] D. G. Down and R. Wu. Multi-layered Round Robin Routing for Parallel Servers. Submitted for publication, 2004. (Available from www.cas.mcmaster.ca/~downd/pub.html) [5] A. Ephremides, P. Varaiya, and J. Walrand. A Simple Dynamic Routing Problem. IEEE Transactions on Automatic Control, AC-25:690 693, 1980. [6] Mor Harchol-Balter, Nikhil Bansal, Bianca Schroeder, and Mukesh Agrawal. Implementation of SRPT Scheduling in Web Servers. Proc. 7th Annual Workshop on Job Scheduling Strategies for Parallel Processing, 11-35, 2001 [7] M. Harchol-Balter, M. E. Crovella, and C. D. Murta. On Choosing a Task Assignment Policy for a Distributed Server System. Journal of Parallel and Distributed Computing, 59(2):204 228, November 1999. [8] A. Jean-Marie and Z. Liu. Stochastic Comparisons for Queueing Models via Random Sums and Intervals. Advances in Applied Probability, 24:960 985, 1992. [9] Z. Liu and D. Towsley. Optimality of the Round Robin Routing Policy. Journal of Applied Probability, 31:466 478, 1994. 21

[10] M.I. Reiman. Some Diffusion Approximations with State Space Collapse. In Lecture Notes in Controls and Information Sciences, volume 60, pages 209-240, Springer, Berlin-New York, 1984. [11] M. I. Reiman and B. Simon. Open Queueing Systems in Light Traffic. Mathematics of Operations Research, 14:26 59, 1989. [12] M. I. Reiman and B. Simon. Light Traffic Limits of Sojourn Time Distributions in Markovian Queueing Networks. Stochastic Models, 4:191 233, 1998. [13] A. Riska, W. Sun, E. Smirni and G. Ciardo. AdaptLoad: Effective Balancing in Clustered Web Servers under Transient Load Conditions. Proceedings of 22nd International Conference on Distributed Computing Systems (ICDCS 02), 104-112, July, 2002. [14] L. Schrage. A Proof of the Optimality of the Shortest Remaining Processing Time Discipline. Operations Research, pages 687 690, 1968. [15] V. Ungureanu, B. Melamed, P.G. Bradford and M. Katehakis. Class-dependent Assignment in Cluster-based Servers. Proceedings of the 19th ACM Symposium on Applied Computing, Nicosia, Cyprus, 1420-1425, 2004. [16] R. W. Weber. On the Optimal Assignment of Customers to Parallel Servers. Journal of Applied Probability, 15:406 413, 1978. [17] W. Whitt. Deciding Which Queue to Join: Some Counterexamples. Operations Research, 34(1):226 244, January 1986. [18] W. Winston. Optimality of the Shortest Line Discipline. Journal of Applied Probability, 14:181 189, 1977. 22