Optimal Multiserver Scheduling with Unknown Job Sizes in Heavy Traffic
aa r X i v : . [ c s . PF ] O c t Optimal Multiserver Scheduling with Unknown Job Sizesin Heavy Traï¬ic
ZIV SCULLY,
Carnegie Mellon University, USA
ISAAC GROSOF,
Carnegie Mellon University, USA
MOR HARCHOL-BALTER,
Carnegie Mellon University, USAWe consider scheduling to minimize mean response time of the M/G/ k queue with unknown job sizes. In thesingle-server ð = Gittins policy, but it is not known whether Gittins or anyother policy is optimal in the multiserver case. Exactly analyzing the M/G/ k under any scheduling policy isintractable, and Gittins is a particularly complicated policy that is hard to analyze even in the single-servercase.In this work we introduce monotonic Gittins (M-Gittins), a new variation of the Gittins policy, and showthat it minimizes mean response time in the heavy-traï¬c M/G/ k for a wide class of ï¬nite-variance job sizedistributions. We also show that the monotonic shortest expected remaining processing time (M-SERPT) policy,which is simpler than M-Gittins, is a 2-approximation for mean response time in the heavy traï¬c M/G/ k under similar conditions. These results constitute the most general optimality results to date for the M/G/ k with unknown job sizes. Our techniques build upon work by Grosof et al. [15], who study simple policies,such as SRPT, in the M/G/ k ; Bansal et al. [6], Kamphorst and Zwart [19], and Lin et al. [23], who analyzemean response time scaling of simple policies in the heavy-traï¬c M/G/1; and Aalto et al. [3, 4] and Scullyet al. [32, 33], who characterize and analyze the Gittins policy in the M/G/1. Scheduling to minimize mean response time of the M/G/ k queue is an important problem inqueueing theory. The single-server ð = shortest remaining processing time (SRPT) policy is easily shown to beoptimal [29]. If the scheduler does not know job sizes, which is very often the case in practicalsystems, then a more complex policy called the Gittins policy is known to be optimal [3, 4, 12].The Gittins policy tailors its priority scheme to the job size distribution, and it takes a simple formin certain special cases. For example, for distributions with decreasing hazard rate (DHR), Gittinsbecomes the foreground-background (FB) policy, so FB is optimal in the M/G/1 for DHR job sizedistributions [3, 4, 11].In contrast to the M/G/1, the M/G/ k with ð ⥠k , with the only nontrivial results holding under heavy traï¬c. For known job sizes, recentwork by Grosof et al. [15] shows that a multiserver analogue of SRPT is optimal in the heavy-traï¬cM/G/ k . For unknown job sizes, Grosof et al. [15] address only the case of DHR job size distributions,showing that a multiserver analogue of FB is optimal in the heavy-traï¬c M/G/ k . But in general,optimal scheduling is an open problem for unknown job sizes, even in heavy traï¬c. We thereforeask:
What scheduling policy minimizes mean response time in the heavy-traï¬c M/G/k withunknown job sizes and general job size distribution? A jobâs response time , also called sojourn time or latency , is the amount of time between its arrival and its completion. FB is the policy that prioritizes the job of least age, meaning the job that has been served the least so far. It is also knownas least attained service (LAS). Here âheavy traï¬câ refers to the limit as the system load approaches capacity for a ï¬xed number of servers. Both the SRPT and FB optimality results of Grosof et al. [15] hold under technical conditions similar to ï¬nite variance.
Ziv Scully, Isaac Grosof, and Mor Harchol-Balter
This is a very diï¬cult question. In order to answer it, we draw upon several recent lines of workin scheduling theory. ⢠As part of their heavy-traï¬c optimality proofs, Grosof et al. [15] use a tagged job methodto stochastically bound M/G/ k response time under each of SRPT and FB relative to M/G/1response time (Fig. 2.1) under the same policy. ⢠Lin et al. [23] and Kamphorst and Zwart [19] characterize the heavy-traï¬c scaling of M/G/1mean response time under SRPT and FB, respectively. ⢠Scully et al. [33] show that a policy called monotonic shortest expected remaining processingtime (M-SERPT), which is considerably simpler than Gittins, has M/G/1 mean response timewithin a constant factor of that of Gittins.While these prior results do not answer the question on their own, together they suggest a plan ofattack for proving optimality in the heavy-traï¬c M/G/ k .When searching for a policy to minimize mean response time, a natural candidate is a multi-server analogue of Gittins. As a ï¬rst step, one might hope to use the tagged job method of Grosofet al. [15] to stochastically bound M/G/ k response time under Gittins relative to M/G/1 responsetime. Unfortunately, the tagged job method does not apply to multiserver Gittins, because it relieson both stochastic and worst-case properties of the scheduling policy, whereas Gittins has poorworst-case properties.One of our key ideas is to introduce a new variant of Gittins, called monotonic Gittins (M-Gittins),that has better worst-case properties than Gittins while maintaining similar stochastic properties.This allows us to generalize the tagged job method [15] to M-Gittins, thus bounding its M/G/ k response time relative to its M/G/1 response time.Our M/G/ k analysis of M-Gittins reduces the question of whether M-Gittins is optimal in theheavy-traï¬c M/G/ k to analyzing the heavy-traï¬c scaling of M-Gittinsâs M/G/1 mean responsetime. However, there are no heavy-traï¬c scaling results for the M/G/1 under policies other thanSRPT [23], FB [19], ï¬rst-come, ï¬rst served (FCFS) [21, 22], and a small number of other simplepolicies [6, 9]. To remedy this, we derive heavy-traï¬c scaling results for M-Gittins in the M/G/1.It turns out that analyzing M-Gittins directly is very diï¬cult. Fortunately, M-Gittins has a simplercousin, M-SERPT, which Scully et al. [33] introduce and analyze. We analyze M-SERPT in heavytraï¬c as a key stepping stone in our heavy-traï¬c analysis of M-Gittins.This paper makes the following contributions: ⢠We introduce the M-Gittins policy and prove that it minimizes mean response time in theheavy-traï¬c M/G/ k for a large class of ï¬nite-variance job size distributions (Theorem 3.1). ⢠We also prove that the simple and practical M-SERPT policy is a 2-approximation for meanresponse time in the heavy-traï¬c M/G/ k for a large class of ï¬nite-variance job size distribu-tions (Theorem 3.2). ⢠We characterize the heavy-traï¬c scaling of mean response time in the M/G/1 under Gittins,M-Gittins, and M-SERPT (Theorem 3.3).Section 3 formally states these results and compares them to prior work. Their proofs rely ona large collection of intermediate results, which we outline in detail in Section 4 and prove inSections 5â7.
We consider an M/G/ k queue with arrival rate ð and job size distribution ð . Each of the ð servershas speed 1 / ð , so regardless of the number of servers, the total service rate is 1 and the system loadis ð = ð E [ ð ] . This allows us to easily compare the M/G/ k system to a single-server M/G/1 system,as illustrated in Fig. 2.1. We assume a preempt-resume model with no preemption overhead. This ptimal Multiserver Scheduling with Unknown Job Sizes in Heavy Traï¬ic 3 Single-Server System speed 1 ð ð -Server System speed 1 / ð speed 1 / ð speed 1 / ðð Fig. 2.1. Single-Server and ð -Server Systems means that a single-server M/G/1 system can simulate any M/G/ k policy by time-sharing between ð jobs.Throughout this paper we consider the ð â heavy-traï¬c limit. This is the ð â / E [ ð ] limit with the job size distribution ð and number of servers ð held constant.We write ð¹ for the cumulative distribution function of ð and ð¹ ( ð¥ ) = â ð¹ ( ð¥ ) for its tail. Weassume that ð has a continuous, piecewise-monotonic hazard rate â ( ð¥ ) = dd ð¥ ð¹ ( ð¥ ) ð¹ ( ð¥ ) . We also frequently work with the expected remaining size of a job at age ð , which is E [ ð â ð | ð > ð ] .We assume it, too, is continuous and piecewise-monotonic as a function of ð .The above assumptions on hazard rate and expected remaining size are not restrictive and serveprimarily to simplify presentation. It is very likely that our proofs can be generalized to relax them. All of the scheduling policies considered in this work are in the class of
SOAP policies [32], gen-eralized to a multiserver setting. In a single-server setting, a SOAP policy ð is speciï¬ed by a rankfunction ð ð : R + â R which maps a jobâs age , namely the amount of service it has received so far, to its rank , or prioritylevel. Single-server SOAP policies work by always serving the job of minimal rank , breaking tiesin FCFS fashion. As an example, FB is a SOAP policy with ð FB ( ð ) = ð . Because lower age corresponds to lowerrank, FB prioritizes the job of least age. A multiserver SOAP policy uses the same rank function as its single-server analogue. The onlydiï¬erence is that the system can serve up to ð jobs, so a multiserver SOAP policy works as follows: ⢠If there are at most ð jobs in the system, serve all of them. ⢠If there are more than ð jobs in the system, serve the ð jobs of minimal rank, breaking tiesin FCFS fashion. A function is piecewise-monotonic if, roughly speaking, it switches between increasing and decreasing ï¬nitely manytimes in any compact interval. The full SOAP class allows a jobâs rank to depend on both its age and its âstaticâ characteristics, such as its size or class,but we do not use this generality in this paper. When multiple jobs are tied for least age, FB shares the server among all such jobs because the rank function is increasing.See Scully et al. [32, Appendix B] for details.
Ziv Scully, Isaac Grosof, and Mor Harchol-Balter ð ð M-SERPT ( ð ) ð SERPT ( ð ) ð ð M-Gittins ( ð ) ð Gittins ( ð ) Fig. 2.2. Rank Function Examples
We often compare the ð -server variant of a policy ð to its single-server analogue. When it isnecessary to distinguish between them, we write ð - k for the ð -server version of a policy, so ð -1 isthe single-server version. We write ð ð - ðð¥ for the size-conditional response time distribution of jobsof size ð¥ under ð - k , and we write ð ð - ð for the overall response time distribution.There are four main policies we consider in this work: SERPT, M-SERPT, Gittins, and M-Gittins.None of the policies need job size information, but each uses the job size distribution to tune itsrank function. As an example, Fig. 2.2 shows the four rank functions for a bounded distributionwith nonmonotonic hazard rate. Deï¬nition 2.1.
The shortest expected remaining processing time (SERPT) policy is the SOAP policywith rank function ð SERPT ( ð ) = E [ ð â ð | ð > ð ] = â« â ð ð¹ ( ð¡ ) d ð¡ð¹ ( ð ) . As a reminder, lower rank means better priority, so, as hinted by its name, SERPT prioritizes thejob of least expected remaining size.
Deï¬nition 2.2.
The monotonic SERPT (M-SERPT) policy is the SOAP policy with monotonic rankfunction ð M-SERPT ( ð ) = max ð â[ ,ð ] ð SERPT ( ð ) . Deï¬nition 2.3.
The
Gittins policy is the SOAP policy with rank function ð Gittins ( ð ) = inf ð > ð E [ min { ð, ð } â ð | ð > ð ] P { ð †ð | ð > ð } = inf ð > ð â« ðð ð¹ ( ð¡ ) d ð¡ð¹ ( ð ) â ð¹ ( ð ) . Deï¬nition 2.4.
The monotonic Gittins (M-Gittins) policy is the SOAP policy with monotonic rankfunction ð M-Gittins ( ð ) = max ð â[ ,ð ] ð Gittins ( ð ) . ptimal Multiserver Scheduling with Unknown Job Sizes in Heavy Traï¬ic 5 The M-Gittins and M-SERPT policies, which both have monotonic rank functions, are the pri-mary focus of this paper. Some of our intermediate results apply more broadly to any policy witha monotonic rank function.
Deï¬nition 2.5.
A SOAP policy ð is monotonic if its rank function is nondecreasing, meaning ð ð ( ð ) †ð ð ( ð ) for all ages ð < ð . Figure 2.2 shows the SERPT, M-SERPT, Gittins, and M-Gittins rank functions for a boundeddistribution with nonmonotonic hazard rate. Notice that SERPT and Gittins are not monotonic.This makes it hard to analyze their M/G/ k response time (Appendix A). In contrast, the M-SERPTand M-Gittins are monotonic: their rank functions alternate between constant regions and strictlyincreasing regions.While the rank functions of Gittins and SERPT may not be monotonic, they are still well behavedunder our assumptions on the job size distribution. Lemma 2.6.
Under the assumption that the job size distribution ð has continuous and piecewise-monotonic hazard rate and expected remaining size functions, each of ð SERPT , ð M-SERPT , ð Gittins , and ð M-Gittins is continuous and piecewise-monotonic.
Proof.
It suï¬ces to prove the claims for ð SERPT and ð Gittins . The claim for ð SERPT is exactly ourassumption on expected remaining size, and the claim for ð Gittins is a known result [4, Theorem 1]. (cid:3)
We consider several classes of job size distributions in this paper. We brieï¬y describe each classbefore giving the formal deï¬nitions. ⢠The OR (ââ , â ) class (Deï¬nition 2.7) contains, roughly speaking, distributions with Pareto-like tails. â We focus especially on the OR (ââ , â ) subclass, all members of which have ï¬nite vari-ance. ⢠The
MDA ( Î ) class (Deï¬nition 2.12) contains, roughly speaking, distributions with smoothtails that are lighter than Pareto tails. It includes, among others, exponential, normal, log-normal, Weibull, and Gamma distributions. ⢠The
QDHR and
QIMRL classes (Deï¬nitions 2.8 and 2.9) are relaxations of the well-known decreasing hazard rate ( DHR ) and increasing mean residual lifetime ( IMRL ) classes [1â4, 11, 27,28, 34].
QDHR contains distributions whose hazard rate is roughly decreasing with age, evenif it is not perfectly monotonic, and
QIMRL contains distributions with roughly increasingexpected remaining size. â We focus especially on the subclasses
MDA ( Î ) â© QDHR and
MDA ( Π) ⩠QIMRL . ⢠The
ENBUE class (Deï¬nition 2.10) is a relaxation of the well-known new better than used inexpectation ( NBUE ) class [3, 4, 34]. It contains distributions whose expected remaining sizereaches a global maximum at some age. â We focus especially on the
Bounded subclass, which contains all bounded distributions.These classes play two diï¬erent roles in our analysis. ⢠Some of the classes broadly characterize the asymptotic behavior of the tail ð¹ . These include OR (ââ , â ) , MDA ( Î ) , and ENBUE . Virtually all job size distributions of interest are in one The nonincreasing case is less interesting, because all nonincreasing rank functions encode FCFS. Because the
NBUE terminology originates in reliability analysis, the word âbetterâ here means âlongerâ.
Ziv Scully, Isaac Grosof, and Mor Harchol-Balter of these classes, so requiring membership in one of them, as in Theorem 3.3, should not beviewed as a major restriction. ⢠Some of the classes impose additional conditions on the job size distribution that help usbound the M-Gittins and M-SERPT rank functions (Section 6). These include
QDHR , QDHR ,and
Bounded . While these classes are much broader than those previously studied (Sec-tion 3.1), they do not cover all distributions of interest. Requiring membership in one ofthem, as in Theorems 3.1 and 3.2, represents a genuine restriction.
Deï¬nition 2.7.
A function ð is ð -regularly varying if there exist exponents ðœ ⥠ðŒ > ð¶ , ð¥ > ðŠ ⥠ð¥ ⥠ð¥ ,1 ð¶ (cid:16) ðŠð¥ (cid:17) â 𜠆ð ( ðŠ ) ð ( ð¥ ) †ð¶ (cid:16) ðŠð¥ (cid:17) â ðŒ . We write OR (â ðœ , â ðŒ ) for the set of ð -regularly varying functions where the exponents ðŒ and ðœ above may be chosen such that ðŒ < ðŒ †ðœ < ðœ . We use the same OR (â ðœ , â ðŒ ) notation torepresent the class of distributions whose tails are in OR (â ðœ , â ðŒ ) . Deï¬nition 2.8.
A job size distribution is in the quasi-decreasing hazard rate class, denoted
QDHR ,if there exist a strictly increasing function ð : R + â R + , an exponent ðŸ â¥
1, and constants ð¶ , ð¥ > ð¥ ⥠ð¥ , ð ( ð¥ ) †â ( ð¥ ) †ð ( ð¶ ð¥ ðŸ ) . Deï¬nition 2.9.
A job size distribution is in the quasi-increasing mean residual lifetime class, de-noted
QIMRL , if there exist a strictly increasing function ð : R + â R + , an exponent ðŸ â¥
1, andconstants ð¶ , ð¥ > ð¥ ⥠ð¥ , ð ( ð¥ ) †E [ ð â ð¥ | ð > ð¥ ] †ð ( ð¶ ð¥ ðŸ ) . Deï¬nition 2.10.
A job size distribution is in the eventually new better than used in expectation class, denoted
ENBUE , if there exists an age ð â ⥠ð¥ â ð â , E [ ð â ð â | ð > ð â ] ⥠E [ ð â ð¥ | ð > ð¥ ] . Deï¬nition 2.11.
A job size distribution is in the bounded class, denoted
Bounded , if there exists ð¥ max < â such that ð¹ ( ð¥ max ) = Deï¬nition 2.12.
A job size distribution is said to be in the
Gumbel domain of attraction , denoted
MDA ( Î ) , under certain conditions speciï¬ed in extreme value theory [26].The exact characterization of MDA ( Î ) is outside the scope of this paper. The most importantproperty is that distributions in MDA ( Î ) are lighter-tailed than all Pareto distributions. Lemma 2.13. If ð â MDA ( Î ) , then ð¹ ( ð¥ ) = ð ( ð¥ â ðŒ ) for all ðŒ > . Proof.
The result follows from a known characterization of
MDA ( Î ) [26, Proposition 1.4]. (cid:3) This is not the standard deï¬nition of ð -regular variation, but it is equivalent to it [8, Section 2.2.1]. Speciï¬cally, our OR (â ðœ , â ðŒ ) contains the ð -regularly varying functions whose Matuszewska indices are in the interval (â ðœ , â ðŒ ) . ptimal Multiserver Scheduling with Unknown Job Sizes in Heavy Traï¬ic 7 We now present our main results, explaining how they relate to prior work in Section 3.1. Webegin with our heavy-traï¬c M/G/ k optimality result. Theorem 3.1.
In an M/G/k, if ð â OR (ââ , â ) ⪠( MDA ( Î ) â© QDHR ) âª
Bounded , then lim ð â E [ ð M-Gittins- ð ] E [ ð Gittins-1 ] = . In such cases, M-Gittins-k is optimal for mean response time in heavy traï¬c.
The M-Gittins policy is based on the Gittins policy, which is somewhat complex to describeand compute. Fortunately, the M-SERPT policy, which can be much simpler to compute [33], alsoperforms well in the heavy-traï¬c M/G/ k . Theorem 3.2.
In an M/G/k, if ð â OR (ââ , â ) ⪠( MDA ( Î ) â© ( QDHR ⪠QIMRL )) âª
Bounded , then lim ð â E [ ð M-SERPT- ð ] E [ ð Gittins-1 ] †. In such cases, M-SERPT-k is a -approximation for mean response time in heavy traï¬c. Theorems 3.1 and 3.2 apply to a broad class of ï¬nite-variance job size distributions. Roughlyspeaking, OR (ââ , â ) covers heavy-tailed distributions, and MDA ( Î ) covers non-heavy-taileddistributions that are unbounded (Section 2.2). Assuming membership in these sets is standard forheavy-traï¬c analysis [19]. The main restriction the results impose is on MDA ( Î ) distributions,for which we additionally require membership in QDHR or QIMRL . While slightly relaxing thisrestriction is possible, removing it entirely appears to be very diï¬cult (Section 8).A key step in the proofs of Theorems 3.1 and 3.2 is analyzing M-Gittins and M-SERPT in theheavy-traï¬c M/G/1. This analysis is itself a new result of independent interest. Notably, it extendsto ordinary Gittins in addition to M-Gittins, thus characterizing the optimal heavy-traï¬c scalingattainable by any scheduling policy in the setting of unknown job sizes. Theorem 3.3.
Let ð -1 be one of Gittins-1, M-Gittins-1, or M-SERPT-1. If ð â OR (â , â ) , then inthe ð â limit, E [ ð ð -1 ] = Î (cid:18) log 11 â ð (cid:19) and if ð â OR (ââ , â ) ⪠MDA ( Î ) ⪠ENBUE , then E [ ð ð -1 ] = Î ( â ð ) · ð M-SERPT (cid:0) ð¹ â ð ( â ð ) (cid:1) ! , where ð¹ â ð is the inverse of the tail of the excess of ð , namely ð¹ ð ( ð¥ ) = E [ ð ] â« â ð¥ ð¹ ( ð¡ ) d ð¡ . For example, we only need the
QDHR and
QIMRL assumptions to prove Theorems 6.3 and 6.5, so we could insteadassume the results of those theorems.
Ziv Scully, Isaac Grosof, and Mor Harchol-Balter
Theorem 3.1 is the ï¬rst result proving optimality of a scheduling policy in the heavy-traï¬c M/G/ k with unknown job sizes and general job size distribution. As mentioned in Section 1, the only priorresults of this type were shown by Grosof et al. [15], who prove similar results for SRPT and FB,that latter for decreasing hazard rate ( DHR ) job size distributions. ⢠SRPT was shown to be optimal in the heavy-traï¬c M/G/ k for job size distributions whosetail has upper Matuszewska index less than â ðŒ >
2. This is somewhat broader thanthe precondition of Theorem 3.1, though it is still limited to ï¬nite-variance distributions. â Given that SRPT is designed for known job sizes while M-Gittins is designed for unknownjob sizes, Theorem 3.1 complements the prior SRPT results. ⢠FB was shown to be optimal in the heavy-traï¬c M/G/ k for job size distributions in theclass DHR â© ( OR (ââ , â ) ⪠MDA ( Î )) [15, Theorem 7.13]. The
DHR class is much morerestrictive than
QDHR , so this is much narrower than the precondition of Theorem 3.1. â Given that FB is equivalent to M-Gittins in the
DHR case [3, 4], Theorem 3.1 subsumes theprior FB results.There is another result that follows from two prior works that complements Theorem 3.1, al-though to the best of our knowledge it has never been explicitly stated. Köllerström [21, 22] showsthat under FCFS, the mean response times in the M/G/1 and M/G/ k converge. This means that ifGittins and M-Gittins happen to be equivalent to FCFS for a given job size distribution, then FCFSminimizes mean response time in the heavy-traï¬c M/G/ k . Aalto et al. [3, 4] show this occursexactly for job size distributions in the new better than used in expectation ( NBUE ) class, whichincludes some distributions that Theorem 3.1 does not cover.Finally, versions of the Gittins policy have been shown to be heavy-traï¬c optimal for twodiscrete-state versions of the M/G/ k queue [13, 14]. These models support some features our modeldoes not, such as multiple job classes, but discretizing the state space imposes some limitations.Speciï¬cally, Glazebrook and Niño-Mora [14] require each job to be composed of phases whereeach phase has exponentially distributed size; and Glazebrook [13] allows nonexponential job sizedistributions but discretizes time and additionally requires ENBUE job size distributions (Deï¬ni-tion 2.10). In contrast, Theorem 3.1 applies to heavy-tailed and other non-
ENBUE job size distri-butions that are of practical importance in computer systems [5, 10, 17, 25].Theorem 3.2 shows that a simple scheduling policy, namely M-SERPT, has mean response timewithin a constant factor of optimal in the heavy-traï¬c M/G/ k with unknown job sizes and gen-eral job size distribution. Speciï¬cally, we show M-SERPT is a 2-approximation. This complementsthe result of Scully et al. [33], who show that in the M/G/1, M-SERPT is a 5-approximation forM/G/1 mean response time at all loads. Our result is tighter and applies to multiserver systems,not just single-server systems, but it applies only in heavy traï¬c. The techniques we introducecould be useful for tightening the upper bound on M-SERPTâs M/G/1 approximation ratio, whichis conjectured to be 2 [33].Theorem 3.3 characterizes the heavy-traï¬c scaling of M/G/1 mean response time under Gittins,M-Gittins, and M-SERPT. There are three other policies whose heavy-traï¬c scaling has been char-acterized: FB, SRPT, and a policy called randomized multilevel feedback (RMLF) [7, 18]. We nowcompare Theorem 3.3 to each of these prior results. While Grosof et al. [15, Theorem 7.13] claim that this result applies to all distributions in
DHR with upper Matuszewskaindex less than â
2, their proof incorrectly cites the preconditions of results of Kamphorst and Zwart [19]. Correcting theprecondition narrows the result to what we state here. ptimal Multiserver Scheduling with Unknown Job Sizes in Heavy Traï¬ic 9
Kamphorst and Zwart [19] study FB in heavy traï¬c. They show that if ð â OR (â , â ) , then E [ ð FB-1 ] = Î (cid:18) log 11 â ð (cid:19) , matching the ï¬rst expression in Theorem 3.3. They also show that if ð â OR (ââ , â ) ⪠MDA ( Î ) ,then E [ ð FB-1 ] = Î ( â ð ) · ð SERPT (cid:0) ð¹ â ð ( â ð ) (cid:1) ! . This is similar to the second expression in Theorem 3.3, except it replaces the monotonic ð M-SERPT with the nonmonotonic ð SERPT , which pinpoints the suboptimality of FBâs heavy-traï¬c scaling.Lin et al. [23] study SRPT in heavy traï¬c. They show that if ð â OR (â , â ) , then E [ ð SRPT-1 ] = Î (cid:18) log 11 â ð (cid:19) , and if ð¹ has upper Matuszewska index less than â
2, which covers ð â OR (ââ , â ) ⪠MDA ( Î ) ,then E [ ð SRPT-1 ] = Î ( â ð ) · ðº â ( â ð ) ! , where ðº ( ð¥ ) = â E [ ð ( ð †ð¥ )] E [ ð ] = ð¹ ð ( ð¥ ) + ð¥ð¹ ( ð¥ ) E [ ð ] . Recall that SRPT minimizes mean response time in the presence of job size information, whereasGittins does not use job size information, so the heavy-traï¬c scaling of SRPT is a lower bound onthat of Gittins. By comparing the above result for SRPT with our result for Gittins (Theorem 3.3),we learn when knowledge of job sizes yields an asymptotic improvement in mean response time. ⢠For ð â OR (â , â ) , meaning ð is heavy-tailed with inï¬nite variance, the heavy-traï¬cscaling of Gittins matches that of SRPT. ⢠For ð â OR (ââ , â ) , meaning ð is heavy-tailed with ï¬nite variance, the heavy-traï¬c scal-ing of Gittins still matches that of SRPT. Speciï¬cally, we later show ð M-SERPT ( ð ) = Î ( ð ) (Theorem 6.2), and one can also show ðº â ( â ð ) = Î ( ð¹ â ð ( â ð )) . ⢠For ð â MDA ( Î ) , meaning ð is not heavy-tailed, one can show ð M-SERPT ( ð ) = ð ( ð ) [26],implying Gittins has worse heavy-traï¬c scaling than SRPT in those cases.We see that, roughly speaking, Gittins matches the heavy-traï¬c scaling of SRPT if and only if thejob size distribution is heavy-tailed. We conclude that knowledge of job sizes yields an asymptoticimprovement in mean response time for non-heavy-tailed job size distributions.Bansal et al. [6] study RMLF in heavy traï¬c. They show that if E [ ð ðŒ ] < â for some ðŒ >
2, then E [ ð RMLF-1 ] = ð (cid:18) E [ ð SRPT-1 ] · log 11 â ð (cid:19) . (3.1)Because Gittins minimizes M/G/1 mean response time, this serves as an upper bound on the heavy-traï¬c scaling of Gittins. However, as previously discussed when comparing Theorem 3.3 to priorresults on SRPT, there are cases where Gittins matches the heavy-traï¬c scaling of SRPT, so ourresult is a tighter bound. With that said, requiring E [ ð ðŒ ] < â for some ðŒ > Key Deï¬nitions ⢠(Section 2.2) Job size distribution classes:
QDHR , OR (ââ , â ) , MDA ( Î ) , etc. ⢠(Sections 4 and 5) Single-server quantities: E [ ð ð -1 ] , E [ ð ð -1 ] , and E [ ð ð -1 ] . ⢠(Section 4.1) Age cutoï¬s: ðŠ ðð¥ and ð§ ðð¥ . Proof Steps ⢠(Section 5) Compare M/G/k to M/G/1: E [ ð ð - ð ] †E [ ð ð -1 ] + ð E [ ð ð -1 ] + ( ð â ) E [ ð ð -1 ] ,whereas E [ ð ð -1 ] = E [ ð ð -1 ] + E [ ð ð -1 ] . ⢠Show E [ ð ð -1 ] dominates E [ ð ð -1 ] and E [ ð ð -1 ] in ð â limit. â (Section 6) Job size distribution classes imply bounds on age cutoï¬s: for example, if ð â QDHR , then ð§ ðð¥ = ð ( ð¥ ðŸ ) for some ðŸ ⥠â (Section 7) Job size distribution classes and bounds on age cutoï¬s imply E [ ð ð -1 ] dominates: for example, if ð â MDA ( Î ) and ð§ ðð¥ = ð ( ð¥ ðŸ ) for some ðŸ â¥
1, then E [ ð ð -1 ] = ð ( ð ð -1 ) . ⢠(Section 4.4) Compare M-Gittins-k and M-SERPT-k to Gittins-1. â M-Gittins-k vs. Gittins-1: prior work shows E [ ð M-Gittins-1 ] †E [ ð Gittins-1 ] , implyinglim ð â E [ ð M-Gittins- ð ]/ E [ ð Gittins-1 ] = â M-SERPT-k vs. Gittins-1: prior work shows E [ ð M-SERPT-1 ] †E [ ð Gittins-1 ] , implyinglim ð â E [ ð M-SERPT- ð ]/ E [ ð Gittins-1 ] †Throughout, ð stands for either M-Gittins or M-SERPT. Fig. 4.1. Proof Overview
Our main goal is to show that M-Gittins minimizes M/G/ k mean response time in the ð â E [ ð M-Gittins- ð ] †E [ ð Gittins-1 ] + ð ( E [ ð Gittins-1 ]) . (4.1)The only existing technique for proving a bound like (4.1) is the M/G/ k tagged job method ofGrosof et al. [15]. In general, tagged job methods work as follows [15, 16, 20, 24, 30â32, 35]: onefocuses on a âtaggedâ job ðœ throughout its time in the system, tracking how much each other jobdelays ðœ . The amount of time for which another job can delay ðœ is called the relevant work due tothat other job. The speciï¬c M/G/ k tagged job method [15] relates the amount of relevant work inan M/G/ k under ð - k to the amount of relevant work in an M/G/1 under ð -1.As a ï¬rst approach, we might try to prove a result like (4.1) for Gittins- k using the M/G/ k taggedjob method. Unfortunately, the method turns out not to work for Gittins, because Gittins can havea nonmonotonic rank function. It turns out that under nonmonotonic rank functions, jobs cancontribute more relevant work in an M/G/ k than in an M/G/1 (Appendix A), resulting in a muchlooser response time bound.Our key insight is that we can generalize the M/G/ k tagged job method of Grosof et al. [15] toany SOAP policy, provided it has a monotonic rank function. In Theorem 5.1 we show that for anymonotonic SOAP policy ð , E [ ð ð - ð ] †E [ ð ð -1 ] + ð E [ ð ð -1 ] + ( ð â ) E [ ð ð -1 ] , (4.2) ptimal Multiserver Scheduling with Unknown Job Sizes in Heavy Traï¬ic 11 ðŠ ðð¥ ð ð ( ð¥ ) ð¥ ð§ ðð¥ ðŠ ðð¥ â² = ð¥ â² = ð§ ðð¥ â² ð ð ( ð¥ â² ) Fig. 4.2. New Job and Old Job Age Cutoï¬s where the quantities on the right hand side, deï¬ned formally in Section 5, can be thought of asfollows: ⢠ð ð -1 and ð ð -1 are distributions called waiting time and residence time , respectively [32]. Re-sponse time in the M/G/1 is the sum of waiting time and residence time. ⢠ð ð -1 is a new distribution we call inï¬ated residence time , which is similar to residence timebut longer.Proving (4.2) is the ï¬rst stepping stone to proving Theorem 3.1 because it reduces an M/G/ k anal-ysis to an M/G/1 analysis. Only the E [ ð ð -1 ] and E [ ð ð -1 ] coeï¬cients depend on ð , so to prove The-orem 3.1, we show the E [ ð ð -1 ] term dominates in the ð â ð is M-Gittins. Figure 4.1gives an overview of the main proof steps.In the remainder of this section, our goal is to bound E [ ð ð -1 ] , E [ ð ð -1 ] , and E [ ð ð -1 ] , where ð iseither M-Gittins or M-SERPT. We begin in Section 4.1 by explaining in more detail the concepts ofrelevant work and of waiting, residence, and inï¬ated residence time. In doing so, we introduce agecutoï¬s , quantities which characterize the relevant work due to each job. It turns out that to bound E [ ð ð -1 ] , E [ ð ð -1 ] , and E [ ð ð -1 ] , we ï¬rst need to bound the age cutoï¬s. Section 4.2 presents ourage cutoï¬ bounds, deferring proofs to Section 6, and Section 4.3 presents our bounds on E [ ð ð -1 ] , E [ ð ð -1 ] , and E [ ð ð -1 ] , deferring proofs to Section 7. Finally, in Section 4.4, we formally prove The-orems 3.1â3.3 by combining the intermediate results discussed throughout this section. In this section we give intuition for the tagged job method, deferring some formalities to Section 5.Recall that the tagged job method works by focusing on the journey of a âtaggedâ job ðœ throughthe system. Roughly speaking, the relevant work due to any other job is the amount of time bywhich that job delays ðœ âs departure. A key insight from the M/G/1 SOAP analysis [32] is that toï¬gure out how much another job delays ðœ , we need to look not at ðœ âs current rank but at its worstfuture rank . This is because even if ðœ has priority over another job at ï¬rst, if ðœ âs rank later increases,the other job can get priority.Suppose that ðœ has size ð¥ . Under a monotonic SOAP policy ð , such as M-Gittins or M-SERPT,the worst future rank ðœ will have is always the rank it will have just before completion, namely ð ð ( ð¥ ) . The amount of relevant work due to another job ðœ â² is the amount of time ðœ â² is served while ðœ is in the system until ðœ â² either completes or reaches rank ð ð ( ð¥ ) . Due to the FCFS tiebreaking rule(Section 2.1), exactly what âreachesâ means depends on when ðœ â² arrives. ⢠New jobs , those that arrive after ðœ , contribute relevant work until they ï¬rst have rank greaterthan or equal to ð ð ( ð¥ ) . This occurs at a speciï¬c age called the new job age cutoï¬ , denoted ðŠ ðð¥ . ⢠Old jobs , those that arrive before ðœ , contribute relevant work until they ï¬rst have rank strictly greater than ð ð ( ð¥ ) . This occurs at a speciï¬c age called the old job age cutoï¬ , denoted ð§ ðð¥ . Figure 4.2 illustrates the new job and old job age cutoï¬s ðŠ ðð¥ and ð§ ðð¥ , which are formally deï¬nedbelow. Roughly speaking, ⢠if ð ð is increasing at ð¥ , then ðŠ ðð¥ = ð¥ = ð§ ðð¥ ; and ⢠if ð ð is constant at ð¥ , then ðŠ ðð¥ and ð§ ðð¥ are the endpoints of the constant region containing ð¥ .As Fig. 4.2 illustrates, we always have ðŠ ð𥠆𥠆ð§ ðð¥ . (4.3) Deï¬nition 4.1.
Let ð be a monotonic SOAP policy. The new job age cutoï¬ and old job age cutoï¬ of size ð¥ are, respectively, ðŠ ðð¥ = sup { ð ⥠| ð ð ( ð ) < ð ð ( ð¥ )} ,ð§ ðð¥ = sup { ð ⥠| ð ð ( ð ) †ð ð ( ð¥ )} . When the policy in question is clear, we drop the superscript ð .One can use new job and old job age cutoï¬s to write M/G/1 mean response time under a mono-tonic SOAP policy [33]. As a ï¬rst step, we write M/G/1 response time ð ð -1 as a sum of two parts,called waiting time ð ð -1 and residence time ð ð -1 [32]: E [ ð ð -1 ] = E [ ð ð -1 ] + E [ ð ð -1 ] . We deï¬ne waiting and residence times formally in Section 5. For now, we just need to know thattheir means can be written in terms of ðŠ ðð¥ and ð§ ðð¥ . Speciï¬cally, Scully et al. [33, Propositions 4.7and 4.8] show E [ ð ð -1 ] = â« â ð ( ð§ ðð¥ ) ð ( ðŠ ðð¥ ) ð ( ð§ ðð¥ ) d ð¹ ( ð¥ ) , E [ ð ð -1 ] = â« â ð¥ð ( ðŠ ðð¥ ) d ð¹ ( ð¥ ) , (4.4)where ð and ð are deï¬ned as ð ( ð ) = â ð E [ min { ð, ð }] = â â« ð ðð¹ ( ð¡ ) d ð¡,ð ( ð ) = ð E [ min { ð, ð } ] = â« ð ðð¡ð¹ ( ð¡ ) d ð¡ . (4.5)The proof of Theorem 5.1 explains the intuition behind (4.4).The signiï¬cance of (4.2) is that it expresses M/G/ k response time in terms of waiting and resi-dence times, which are M/G/1 quantities. It also features a third quantity called inï¬ated residencetime ð ð -1 . We deï¬ne inï¬ated residence time formally in Section 5. For now, we just need to knowthat its mean, E [ ð ð -1 ] = â« â ð§ ðð¥ ð ( ðŠ ðð¥ ) d ð¹ ( ð¥ ) , (4.6)can be written in terms of ðŠ ðð¥ and ð§ ðð¥ . Note that E [ ð ð -1 ] †E [ ð ð -1 ] . Recall that proving our main results rests on characterizing the heavy-traï¬c scaling of E [ ð ð ] , E [ ð ð ] , and E [ ð ð ] , where ð is either M-Gittins or M-SERPT. As we see in (4.4) and (4.6), both ðŠ ðð¥ and ð§ ðð¥ feature prominently in the formulas of E [ ð ð ] , E [ ð ð ] , and E [ ð ð ] . This means the ï¬rst stepof characterizing the heavy-traï¬c scaling of E [ ð ð ] , E [ ð ð ] , and E [ ð ð ] is understanding ðŠ ðð¥ and ð§ ðð¥ .This is the subject of Section 6, in which we prove bounds on ðŠ ðð¥ and ð§ ðð¥ for a wide class of job size The new job and old job age cutoï¬s of ð¥ are equivalent to what Scully et al. [33] call the previous and next hill ages of ð¥ . ptimal Multiserver Scheduling with Unknown Job Sizes in Heavy Traï¬ic 13 Table 4.1. New Job and Old Job Age Cutoï¬ Bounds
Size Distribution Quantity Bound Reference OR (ââ , â ) ðŠ M-Gittins-1 ð¥ Î ( ð¥ ) Theorem 6.4 ð§ M-Gittins-1 ð¥ Î ( ð¥ ) ðŠ M-SERPT-1 ð¥ Î ( ð¥ ) Theorem 6.2 ð§ M-SERPT-1 ð¥ Î ( ð¥ ) QDHR ðŠ M-Gittins-1 ð¥ Ω ( ð¥ / ðŸ ) for some ðŸ ⥠ð§ M-Gittins-1 ð¥ ð ( ð¥ ðŸ ) for some ðŸ ⥠QDHR ⪠QIMRL ðŠ M-SERPT-1 ð¥ Ω ( ð¥ / ðŸ ) for some ðŸ ⥠ð§ M-SERPT-1 ð¥ ð ( ð¥ ðŸ ) for some ðŸ ⥠These bounds on ðŠ ðð¥ and ð§ ðð¥ are critical for characterizing heavy-traï¬c scaling of E [ ð ð -1 ] , E [ ð ð -1 ] , and E [ ð ð -1 ] . distributions. Table 4.1 summarizes these results. The main takeaway is that ðŠ ðð¥ and ð§ ðð¥ are alwayspolynomially bounded relative to ð¥ . Armed with bounds on age cutoï¬s, we are ready to characterize heavy-traï¬c scaling of meanwaiting, residence, and inï¬ated residence times. This is the subject of Section 7, in which ⢠Theorems 7.4, 7.5, 7.9 and 7.10 characterize M-SERPTâs heavy-traï¬c scaling; and ⢠Theorems 7.11 and 7.12 characterize M-Gittinsâs heavy-traï¬c scaling in terms of M-SERPTâs.Table 4.2 summarizes these results. The main takeaway of the table is that for all of the ï¬nite-variance job size distribution classes considered, if ð is either M-Gittins or M-SERPT, E [ ð ð -1 ] dominates E [ ð ð -1 ] and E [ ð ð -1 ] , with the latter sometimes requiring an additional condition. Specif-ically, ⢠E [ ð ð -1 ] grows polynomially in 1 /( â ð ) , whereas ⢠E [ ð ð -1 ] and E [ ð ð -1 ] grow subpolynomially in 1 /( â ð ) . We now prove our main results. The proofs of Theorems 3.1 and 3.2 both follow the same threemain steps, where ð is M-Gittins or M-SERPT, respectively: ⢠Theorem 5.1 bounds E [ ð ð - ð ] in terms of M/G/1 quantities. ⢠The results in Table 4.2 show lim ð â E [ ð ð - ð ]/ E [ ð ð -1 ] = ⢠Prior work relates E [ ð ð -1 ] to E [ ð Gittins-1 ] . Proof of Theorem 3.1.
An M/G/1 can simulate any M/G/ k policy by sharing the server, so thefact that Gittins minimizes M/G/1 mean response time means E [ ð M-Gittins- ð ]/ E [ ð Gittins-1 ] â¥
1. Ittherefore suï¬ces to show lim ð â E [ ð M-Gittins- ð ]/ E [ ð Gittins-1 ] †E [ ð M-Gittins- ð ] E [ ð M-Gittins-1 ] †+ ð E [ ð M-Gittins-1 ] + ( ð â ) E [ ð M-Gittins-1 ] E [ ð M-Gittins-1 ] . That is, for all the classes in Table 4.2 except OR (â , â ) . Table 4.2. Heavy-Traï¬ic Scaling of Waiting, Residence, and Inflated Residence Times
Size Distribution Quantity Heavy-Traffic Scaling Reference OR (â , â ) E [ ð ð -1 ] ð (â log ( â ð )) Theorems 7.4 and 7.11 E [ ð ð -1 ] ð (â log ( â ð )) OR (ââ , â ) E [ ð ð -1 ] Ω (( â ð ) â ð¿ ) for some ð¿ > E [ ð ð -1 ] ð (â log ( â ð )) E [ ð ð -1 ] ð (â log ( â ð )) Theorems 7.9 and 7.12
MDA ( Î ) E [ ð ð -1 ] Ω (( â ð ) â( â ð ) ) for all ð > E [ ð ð -1 ] ð (( â ð ) â ð ) for all ð > MDA ( Î ) â© QDHR E [ ð ð -1 ] ð (( â ð ) â ð ) for all ð > MDA ( Î ) â© QIMRL E [ ð M-SERPT-1 ] ð (( â ð ) â ð ) for all ð > ENBUE E [ ð ð -1 ] Î (( â ð ) â ) Theorems 7.5 and 7.11 E [ ð ð -1 ] Î ( ) Bounded E [ ð ð -1 ] Î ( ) Theorems 7.5 and 7.12
These bounds hold when ð is either M-Gittins or M-SERPT, except for the MDA ( Î ) â© QIMRL case, in which thebound holds only for M-SERPT.
Theorems 7.5 and 7.9â7.12 imply that the second term vanishes in the ð â E [ ð M-Gittins-1 ] †E [ ð Gittins-1 ] †E [ ð Gittins-1 ] , (4.7)implying the desired result. (cid:3) Proof of Theorem 3.2.
Theorem 5.1 implies E [ ð M-SERPT- ð ] E [ ð M-SERPT-1 ] †+ ð E [ ð M-SERPT-1 ] + ( ð â ) E [ ð M-SERPT-1 ] E [ ð M-SERPT-1 ] . Theorems 7.5, 7.9 and 7.10 imply that the second term vanishes in the ð â E [ ð M-SERPT-1 ] †E [ ð M-Gittins-1 ] , which combines with (4.7) to imply the desired result. (cid:3) To prove Theorem 3.3, we simply combine the results in Table 4.2.
Proof of Theorem 3.3.
We examine each case in turn. ⢠For ð â OR (â , â ) , we use Theorems 7.4 and 7.11. ⢠For ð â OR (ââ , â ) ⪠MDA ( Î ) , we use Theorems 7.9â7.11. ⢠For ð â ENBUE , we have ð M-SERPT ( ð ) = Î ( ) by Deï¬nition 2.10, so we use Theorems 7.5and 7.11. (cid:3) k RESPONSE TIME BOUND
This section bounds M/G/ k mean response time under any monotonic SOAP policy ð . The notationused in Theorem 5.1 below is summarized in Table 5.1. While Scully et al. [33, Lemma 5.6] mention Gittins instead of M-Gittins, they prove the desired statement for M-Gittinsas an intermediate step of their proof. ptimal Multiserver Scheduling with Unknown Job Sizes in Heavy Traï¬ic 15
Table 5.1. Summary of Notation
Notation Description Reference ð - k ð -server version of SOAP policy ð Section 2.1 ð ( ð ) , ð ( ð ) functions of moments of min { ð, ð } (4.5) ðŠ ðð¥ , ð§ ðð¥ new job and old job age cutoï¬s Deï¬nition 4.1 ð ð - ð response time under ð - k Section 2.1 ð ð -1 waiting time under ð -1 (4.4) ð ð -1 residence time under ð -1 (4.4) ð ð -1 inï¬ated residence time under ð -1 (4.6) Additionally, ð ð - ðð¥ is size-conditional response time for size ð¥ , and similarly for ð ð -1 ð¥ , ð ð -1 ð¥ , and ð ð -1 ð¥ . Theorem 5.1.
For any monotonic SOAP policy ð , E [ ð ð - ðð¥ ] †ð ( ðŠ ðð¥ ) (cid:18) ð ( ð§ ðð¥ ) ð ( ð§ ðð¥ ) + ðð¥ + ( ð â ) ð§ ðð¥ (cid:19) , (5.1) and therefore E [ ð ð - ð ] †E [ ð ð -1 ] + ð E [ ð ð -1 ] + ( ð â ) E [ ð ð -1 ] . Proof.
In order to bound M/G/ k mean response time, we use a tagged job method in the style ofGrosof et al. [15], but we generalize it to allow an arbitrary monotonic SOAP policy ð . We consideran arbitrary âtaggedâ job ðœ of size ð¥ arriving to a steady-state system. Our goal is to analyze thedistribution of ðœ âs response time.The ï¬rst step is a shift in perspective: instead of thinking about time passing , we reason in termsof work completed . Since each of the ð servers works at rate 1 / ð , the system can complete workat rate 1. While ðœ is in the system, servers sometimes complete work and are sometimes left idle.This means ðœ âs response time is the sum of ⢠the amount of work completed while ðœ is in the system and ⢠the amount of work âwastedâ, meaning service capacity left idle, while ðœ is in the system.We bound ðœ âs response time by bounding the total amount of work above. We do so by dividing itinto several pieces: ⢠Tagged work : the work of ðœ itself. ⢠Virtual work : work on jobs prioritized behind ðœ , plus wasted work due to servers left idle. ⢠Relevant work : work on jobs prioritized ahead of ðœ . We divide this into two subcategories: â Old relevant work: relevant work on old jobs , namely those present when ðœ arrives. â New relevant work: relevant work on new jobs , namely those that arrive after ðœ .For the ï¬rst two categories, we have the same simple bound as Grosof et al. [15]: tagged workand virtual work add up to at most ðð¥ . This is because tagged work is ðœ âs size ð¥ , and the schedulingpolicy ensures that a server only completes virtual work while ðœ is in service at another server.However, bounding the two relevant work categories is more complicated than in Grosof et al. [15].We begin by asking: what rank must a job have to contribute to relevant work? Note that thejob ðœ will never have rank greater than its rank upon completion, ð ð ( ð¥ ) , since ð is a monotonicpolicy. As a result, all new relevant work is from jobs with rank strictly less than ð ð ( ð¥ ) , and all oldrelevant work is from jobs with rank less than or equal to ð ð ( ð¥ ) . We can put this in terms of theage cutoï¬s deï¬ned in Deï¬nition 4.1: ⢠jobs contribute new relevant work up to at most age ðŠ ðð¥ , and ⢠jobs contribute old relevant work up to at most age ð§ ðð¥ .In the rest of this proof, ðŠ ð¥ and ð§ ð¥ refer to ðŠ ðð¥ and ð§ ðð¥ , respectively.To help us bound the amount of old relevant work completed while ðœ is in the system, we deï¬nea new concept: the amount of relevant work in the M/G/ k system under ð . Deï¬nition 5.2.
Let RelWork ð - ðð¥ ( ð¡ ) denote the amount of work in the M/G/ k at time ð¡ which isrelevant to a job ðœ of size ð¥ :RelWork ð - ðð¥ ( ð¡ ) = à jobs ðœ â² (cid:0) min { ð§ ð¥ , ð¥ ðœ â² } â ð ðœ â² ( ð¡ ) (cid:1) + , where ð¥ ðœ â² is the size of job ðœ â² and ð ðœ â² ( ð¡ ) is its age at time ð¡ . We write RelWork ð - ðð¥ for the steadystate distribution of the amount of relevant work in the M/G/ k system.Since ðœ is a Poisson arrival, RelWork ð - ðð¥ is the distribution of the amount of relevant work in thesystem when ðœ arrives. That amount is an upper bound on the amount of old relevant work thatwill be completed while ðœ is in the system.To bound new relevant work, note that if a job ðœ â² of size ð¥ â² arrives while ðœ is in the system, then ðœ â² contributes at most min { ð¥ â² , ðŠ ð¥ } new relevant work. As a result, new relevant work can be upperbounded by considering a transformed M/G/1 system in which the job size distribution is ð ðŠ ð¥ = st min { ð, ðŠ ð¥ } . The amount of new relevant work that arrives to our real system is upper bounded by the totalamount of work that arrives to the transformed system. Let ðµ ðŠ ð¥ ( ð€ ) be the length of a busy periodin the transformed M/G/1 system started by an initial amount of work ð€ . If ð€ is the total amount oftagged, virtual, and old relevant work, then the amount of new relevant work is at most ðµ ðŠ ð¥ ( ð€ ) â ð€ .Combining our bounds, we obtain ð ð - ð𥠆st ðµ ðŠ ð¥ (cid:0) ðð¥ + RelWork ð - ðð¥ (cid:1) . Applying Lemma 5.3, stated and proven later in this section, yields ð ð - ð𥠆st ðµ ðŠ ð¥ (cid:0) ðð¥ + RelWork ð -1 ð¥ + ( ð â ) ð§ ð¥ (cid:1) . (5.2)Taking expectations gives us E [ ð ð - ðð¥ ] †E [ RelWork ð -1 ð¥ ] + ðð¥ + ( ð â ) ð§ ð¥ ð ( ðŠ ð¥ ) . Because ð -1 is work conserving with respect to relevant work, the Pollaczek-Khinchine formulatells us E [ RelWork ð -1 ð¥ ] = ð ( ð§ ð¥ ) ð ( ð§ ð¥ ) , which completes the proof of (5.1).To connect (5.1) to the quantities E [ ð ð ] , E [ ð ð ] , and E [ ð ð ] , we rewrite (5.2) as ð ð - ð𥠆st ðµ ðŠ ð¥ ( RelWork ð -1 ð¥ ) + ð à ðµ ðŠ ð¥ ( ð¥ ) + ð â à ðµ ðŠ ð¥ ( ð§ ð¥ ) , (5.3)where all of the relevant busy periods are independent. Prior work on SOAP policies [32, 33] givesnames to some of the distributions on the right-hand side. We deï¬ne waiting, residence, and inï¬ated residence times in terms of relevant busy periods. Waiting and residence timesalso have natural deï¬nitions as components of M/G/1 response time [32, 33], but we do not need them in this paper. ptimal Multiserver Scheduling with Unknown Job Sizes in Heavy Traï¬ic 17 ⢠The size-conditional waiting time for size ð¥ is the random variable ð ð -1 ð¥ = st ðµ ðŠ ð¥ ( RelWork ð -1 ð¥ ) ,and waiting time is ð ð -1 = st ð ð -1 ð . ⢠The size-conditional residence time for size ð¥ is the random variable ð ð -1 ð¥ = st ðµ ðŠ ð¥ ( ð¥ ) , and residence time is ð ð -1 = st ð ð -1 ð . ⢠As there is no concise name for ðµ ðŠ ð¥ ( ð§ ð¥ ) in prior work, we deï¬ne size-conditional inï¬atedresidence time for size ð¥ to be the random variable ð ð -1 ð¥ = st ðµ ðŠ ð¥ ( ð§ ð¥ ) , and we deï¬ne inï¬atedresidence time to be ð ð -1 = st ð ð -1 ð .With these deï¬nitions in place, (5.3) gives us ð ð - ð𥠆st ð ð -1 ð¥ + ð à ð ð -1 ð¥ + ð â à ð ð -1 ð¥ , so the result follows by taking the expectation of ð ð - ð = st ð ð - ðð . (cid:3) Theorem 5.1 applies only to monotonic SOAP policies. It is tempting to try to apply the sametechnique to SOAP policies with nonmonotonic rank functions, but as we discuss in Appendix A,the argument does not readily generalize.The proof of Theorem 5.1 assumes a bound on RelWork ð - ðð¥ . We prove the bound in the followinglemma, which generalizes a similar lemma of Grosof et al. [15, Lemma 7.10]. Lemma 5.3.
Let Î ð¥ ( ð¡ ) = RelWork ð - ðð¥ ( ð¡ ) â RelWork ð -1 ð¥ ( ð¡ ) . Then Î ð¥ ( ð¡ ) †( ð â ) ð§ ðð¥ for all times ð¡ , and therefore RelWork ð - ð𥠆st RelWork ð -1 ð¥ + ( ð â ) ð§ ðð¥ . Proof.
Throughout this proof, ð§ ð¥ refers to ð§ ðð¥ . We consider a pair of coupled systems with thesame arrival sequence: ⢠System 1 , an M/G/1 using ð -1; and ⢠System ð , an M/G/ k using ð - k .Our approach is to bound the diï¬erence in relevant work between Systems 1 and ð at any time ð¡ .Call a job relevant if it has age less than ð§ ð¥ . These are the only jobs that contribute relevantwork. To bound Î ð¥ ( ð¡ ) , we divide times ð¡ into two types of intervals: ⢠few-jobs intervals , during which there are fewer than ð relevant jobs in System ð ; and ⢠many-jobs intervals , during which there are at least ð relevant jobs in System ð .Note that both types of intervals are deï¬ned based on System ð alone, so System 1 may or maynot have relevant jobs during either type of interval.Any time ð¡ is in either a few-jobs interval or a many-jobs interval. If ð¡ is in a few-jobs interval,the argument is simple: there are at most ð â ð at time ð¡ , so Î ð¥ ( ð¡ ) †RelWork ð - ðð¥ ( ð¡ ) †( ð â ) ð§ ð¥ . Suppose instead that ð¡ is in a many-jobs interval. Let ð †ð¡ be the start of the many-jobs intervalcontaining ð¡ . We will show Î ð¥ ( ð¡ ) †Πð¥ ( ð ) †( ð â ) ð§ ð¥ . We begin by showing Î ð¥ ( ð¡ ) †Πð¥ ( ð ) . Note that arrivals do not aï¬ect Î ð¥ , because the twosystems experience the same arrivals and have the same deï¬nition of relevant work. Next, note thatservice to irrelevant jobs does not aï¬ect Î ð¥ , because irrelevant jobs never become relevant under ð ,since ð is a monotonic policy. In fact, the only way that Î ð¥ changes over a many-jobs period is dueto service to relevant jobs. System ð serves relevant jobs on all ð servers throughout a many-jobs ðŠ ð¥ ð M-SERPT ( ð¥ ) ð¥ ð§ ð¥ ðŠ ð¥ â² = ð¥ â² = ð§ ð¥ â² ð M-SERPT ( ð¥ â² ) ð M-SERPT ( ð ) ð SERPT ( ð ) Here ðŠ ð¥ stands for ðŠ M-SERPT ð¥ , and similarly for ð§ ð¥ , ðŠ ð¥ â² , and ð§ ð¥ â² . Fig. 6.1. Relationship Between SERPT and M-SERPT Rank Functions period, completing relevant work at rate 1. System 1 may or may not serve relevant jobs during amany-jobs period, so it completes relevant work at rate at most 1. This means Î ð¥ ( ð¡ ) †Πð¥ ( ð ) , asdesired.All that remains is to show that Î ð¥ ( ð ) †( ð â ) ð§ ð¥ . Recall that ð is the start of a many-jobsinterval. Many-jobs intervals cannot start due to irrelevant jobs becoming relevant, because ð is amonotonic policy. This means each many-jobs interval starts due to a relevant job arriving whileSystem ð has ð â Î ð¥ , as discussed above. Thismeans Î ð¥ ( ð ) = Î ð¥ ( ð â ) , where ð â is the instant before the arrival that starts the many-jobs interval.But ð â is in a few-jobs interval, so Î ð¥ ( ð ) = Î ð¥ ( ð â ) †( ð â ) ð§ ð¥ . (cid:3) We now have a bound on M/G/ k mean response time under monotonic SOAP policies ð , includingM-Gittins and M-SERPT. The bound (Theorem 5.1) is expressed in terms of E [ ð ð -1 ] , E [ ð ð -1 ] , and E [ ð ð -1 ] , quantities which in turn are expressed in terms of the new job and old job age cutoï¬s ðŠ ðð¥ and ð§ ðð¥ . In order to prove optimality of M-Gittins in the heavy-traï¬c M/G/ k , we need to understandthe heavy-traï¬c behavior of E [ ð ð -1 ] , E [ ð ð -1 ] , and E [ ð ð -1 ] , which, as we will see in Section 7, boilsdown to understanding the behavior of ðŠ ðð¥ and ð§ ðð¥ in the ð¥ â â limit. This section is thus devotedto asymptotically bounding the new job and old job age cutoï¬s, and more generally the rankfunctions, of M-Gittins and M-SERPT.Recall from Deï¬nition 2.2 that SERPTâs rank function is used to deï¬ne M-SERPTâs. The follow-ing lemma shows that the two rank functions are equal at the new job and old job age cutoï¬s, andsimilarly for Gittins and M-Gittins. Figure 6.1 gives an intuitive picture of the result. Lemma 6.1.
The SERPT and M-SERPT rank functions are related by ð SERPT ( ðŠ M-SERPT ð¥ ) = ð M-SERPT ( ðŠ M-SERPT ð¥ ) = ð M-SERPT ( ð¥ ) = ð M-SERPT ( ð§ M-SERPT ð¥ ) = ð SERPT ( ð§ M-SERPT ð¥ ) , and analogously for Gittins and M-Gittins. Proof.
We prove the statement for SERPT and M-SERPT, as the proof for Gittins and M-Gittinsis analogous. Throughout this proof, ðŠ ð¥ and ð§ ð¥ refer to ðŠ M-SERPT ð¥ and ð§ M-SERPT ð¥ , respectively. Theillustration in Fig. 6.1 may provide helpful intuition for the following argument.We ï¬rst show the outer equalities. Deï¬nition 4.1 implies that ð M-SERPT is increasing in the inter-vals ( ðŠ ð¥ â ð¿, ðŠ ð¥ ) and ( ð§ ð¥ , ð§ ð¥ + ð¿ ) for some ð¿ >
0. By Deï¬nition 2.2, for ð M-SERPT to be increasingat age ð , we must have ð M-SERPT ( ð ) = ð SERPT ( ð ) , so continuity of ð M-SERPT (Lemma 2.6) implies theouter equalities. ptimal Multiserver Scheduling with Unknown Job Sizes in Heavy Traï¬ic 19
By (4.3) and the monotonicity of ð M-SERPT , it remains only to show ð M-SERPT ( ðŠ ð¥ ) = ð M-SERPT ( ð§ ð¥ ) .This is immediate if ðŠ ð¥ = ð§ ð¥ , and if ðŠ ð¥ < ð§ ð¥ , then ð M-SERPT is constant over the interval [ ðŠ ð¥ , ð§ ð¥ ) , sothe result follows by the continuity of ð M-SERPT (Lemma 2.6). (cid:3)
In this section we show two bounds on ðŠ M-SERPT ð¥ and ð§ M-SERPT ð¥ , each subject to a diï¬erent assump-tion on the job size distribution. Theorem 6.2. If ð â OR (ââ , â ) , then ð SERPT ( ð ) = Î ( ð ) ,ð M-SERPT ( ð ) = Î ( ð ) ,ðŠ M-SERPT ð¥ = Î ( ð¥ ) ,ð§ M-SERPT ð¥ = Î ( ð¥ ) . Proof.
By Deï¬nition 2.7, there exists ðŒ > ð SERPT ( ð ) = â« â ð ð¹ ( ð¡ ) ð¹ ( ð ) d ð¡ †ð ( ) â« â ð (cid:16) ð¡ð (cid:17) â ðŒ d ð¡ = ð ( ð ) , and ð SERPT ( ð ) = Ω ( ð ) follows similarly. This implies ð M-SERPT ( ð ) = max ð â[ ,ð ] ð SERPT ( ð ) = max ð â[ ,ð ] Î ( ð ) = Î ( ð ) , so the result follows from Lemma 6.1. (cid:3) Theorem 6.3. If ð â QDHR ⪠QIMRL with exponent ðŸ , then ðŠ M-SERPT ð¥ = Ω ( ð¥ / ðŸ ) ,ð§ M-SERPT ð¥ = ð ( ð¥ ðŸ ) . Proof.
The
QDHR case follows from Theorem 6.5 (Section 6.2) and a result of Scully et al. [33,Eq. (3.8)] stating ðŠ M-Gittins 𥠆ðŠ M-SERPT 𥠆ð§ M-SERPT 𥠆ð§ M-Gittins ð¥ , so only the QIMRL case remains.In the rest of this proof, ðŠ ð¥ and ð§ ð¥ refer to ðŠ M-SERPT ð¥ and ð§ M-SERPT ð¥ , respectively. By (4.3), it suï¬cesto show ð§ ð¥ = ð ( ðŠ ðŸð¥ ) . Because ð â QIMRL with exponent ðŸ , there exists strictly increasing function ð : R + â R + such that for all ages ð , ð †ð â (cid:0) ð SERPT ( ð ) (cid:1) †ð ( ð ðŸ ) . The result follows by plugging in ð = ðŠ ð¥ and ð = ð§ ð¥ and applying Lemma 6.1. (cid:3) In this section we show two bounds on ðŠ M-Gittins ð¥ and ð§ M-Gittins ð¥ , each subject to a diï¬erent assump-tion on the job size distribution. Theorem 6.4. If ð â OR (ââ , â ) , then ðŠ M-Gittins ð¥ = Î ( ð¥ ) ,ð§ M-Gittins ð¥ = Î ( ð¥ ) . Theorem 6.5. If ð â QDHR with exponent ðŸ , then ðŠ M-Gittins ð¥ = Ω ( ð¥ / ðŸ ) ,ð§ M-Gittins ð¥ = ð ( ð¥ ðŸ ) . These bounds are harder to prove than their M-SERPT counterparts from Section 6.1. The mostimportant component is the following deï¬nition, which helps us better understand the M-Gittinsrank function and relate it to the simpler M-SERPT rank function.
Deï¬nition 6.6.
The time per completion over an age interval ( ð, ð ] is ð ( ð, ð ) = E [ min { ð, ð } â ð | ð > ð ] P { ð < ð | ð > ð } = â« ðð ð¹ ( ð¡ ) d ð¡ð¹ ( ð ) â ð¹ ( ð ) . We extend this deï¬nition to the ð â ð and ð â â limits: ð ( ð, ð ) = â ( ð ) ,ð ( ð, â) = E [ ð â ð | ð > ð ] . We can write the rank functions of SERPT, M-SERPT, Gittins, and M-Gittins in terms of ð as ð SERPT ( ð ) = ð ( ð, â) ,ð M-SERPT ( ð ) = max ð â[ ,ð ] ð ( ð, â) ,ð Gittins ( ð ) = min ð â[ ð, â] ð ( ð, ð ) ,ð M-Gittins ( ð ) = max ð â[ ,ð ] min ð â[ ð, â] ð ( ð, ð ) . (6.1)Armed with Deï¬nition 6.6 and (6.1), we are ready to prove Theorems 6.4 and 6.5. The formerproof relies on some technical lemmas that we defer to Section 6.3. Proof of Theorem 6.4.
Throughout this proof, ðŠ ð¥ and ð§ ð¥ refer to ðŠ M-Gittins ð¥ and ð§ M-Gittins ð¥ , respec-tively. By (4.3), it suï¬ces to show there exist ð¶ , ð¥ > ð¥ ⥠ð¥ , ð§ 𥠆ð¶ ðŠ ð¥ . We will set ð¶ â¥
2, which covers the ð§ 𥠆ðŠ ð¥ case. The rest of the proof is thus devoted to the ð§ ð¥ > ðŠ ð¥ case. Our approach is to show there exist ð¶ , ð¶ such that for all ð¥ ⥠ð¥ , ð¶ ðŠ ð¥ ⥠ð Gittins ( ðŠ ð¥ ) ⥠ð¶ ð§ ð¥ . (6.2)We begin with the upper bound on ð Gittins ( ðŠ ð¥ ) . By Lemma 6.1, we have ð Gittins ( ðŠ ð¥ ) = ð M-Gittins ( ðŠ ð¥ ) for all sizes ð¥ , and by (6.1), we have ð M-Gittins ( ð ) †ð M-SERPT ( ð ) for all ages ð . Combining these ob-servations with Theorem 6.2 implies ð Gittins ( ðŠ ð¥ ) = ð ( ðŠ ð¥ ) and thereby implies the desired upperbound from (6.2). We now turn to the lower bound on ð Gittins ( ðŠ ð¥ ) . This requires Lemmas 6.7 and 6.8, which arefacts about ð that we prove in Section 6.3. Combining Lemma 6.7 with (6.1) and the fact that weare in the ð§ ð¥ > ðŠ ð¥ case gives us ð Gittins ( ðŠ ð¥ ) = ð ( ðŠ ð¥ , ð§ ð¥ ) ⥠ð (cid:16) ð§ ð¥ , ð§ ð¥ (cid:17) . Our time per completion function is the reciprocal of what Aalto et al. [3, 4] call the eï¬ciency function . This would be more subtle if lim ð¥ ââ ðŠ ð¥ were ï¬nite, but Theorem 6.2 and a result of Aalto et al. [4, Proposition 9] implylim ð¥ ââ ðŠ ð¥ = â . ptimal Multiserver Scheduling with Unknown Job Sizes in Heavy Traï¬ic 21 By Lemma 6.8, there exist ð¶ , ð¥ such that for all ð¥ with ð§ ð¥ / > ð¥ , ð (cid:16) ð§ ð¥ , ð§ ð¥ (cid:17) ⥠ð¶ ð§ ð¥ , implying the desired lower bound from (6.2). (cid:3) Proof of Theorem 6.5.
Throughout this proof, ðŠ ð¥ and ð§ ð¥ refer to ðŠ M-Gittins ð¥ and ð§ M-Gittins ð¥ , respec-tively. By (4.3), it suï¬ces to show ð§ ð¥ = ð ( ðŠ ðŸð¥ ) . Because ð â QDHR with exponent ðŸ , there exists astrictly increasing function ð : R + â R + such that for all sizes ð¥ , ð ( ð¥ ) †â ( ð¥ ) †ð ( ð ( ð¥ ðŸ )) . We have ð Gittins ( ðŠ ð¥ ) †/ â ( ðŠ ð¥ ) by (6.1), and Lemma 6.1 implies ð Gittins ( ð§ ð¥ ) = ð Gittins ( ðŠ ð¥ ) , so ð Gittins ( ð§ ð¥ ) †ð ( ð ( ðŠ ðŸð¥ )) . It remains only to lower bound ð Gittins ( ð§ ð¥ ) . We do so using the observation that for any age ð , ð Gittins ( ð ) = min ð â[ ð, â] ð ( ð, ð ) = max ð â[ ð, â] â« ðð ð¹ ( ð¡ ) â ( ð¡ ) d ð¡ â« ðð ð¹ ( ð¡ ) d ð¡ ! â ⥠(cid:0) sup ð > ð â ( ð ) (cid:1) â = inf ð > ð â ( ð )⥠ð ( ð ) , where the ï¬rst inequality follows from viewing the ratio of integrals as a weighted average. Plug-ging in ð = ð§ ð¥ implies ð ( ð§ ð¥ ) †ð ( ð ( ðŠ ðŸð¥ )) , so the result follows because ð is strictly increasing. (cid:3) Lemma 6.7.
For all sizes ð¥ and ages ð , if ðŠ ð¥ < ð < ð§ ð¥ , then ð Gittins ( ðŠ ð¥ ) = ð ( ðŠ ð¥ , ð§ ð¥ ) ⥠ð ( ð, ð§ ð¥ ) . Proof.
A property of the Gittins index [12, Lemma 2.2] implies ð Gittins ( ðŠ ð¥ ) = ð ( ðŠ ð¥ , ð§ ð¥ ) . In particular, for any ð â ð§ ð¥ , ð ( ðŠ ð¥ , ð ) ⥠ð ( ðŠ ð¥ , ð§ ð¥ ) . (6.3)A basic property of the ð function [33, Eq. (D.3)] is that for any ð < ð < ð , ð ( ð, ð ) ⥠ð ( ð, ð ) â ð ( ð, ð ) ⥠ð ( ð, ð ) . Plugging in ð = ðŠ ð¥ , ð = ð , and ð = ð§ ð¥ and applying (6.3) yields ð ( ðŠ ð¥ , ð§ ð¥ ) ⥠ð ( ð, ð§ ð¥ ) , as desired. (cid:3) Lemma 6.8. If ð â OR (ââ , â ) , then there exist constants ð¶ , ð¥ > such that for all ð > ð > ð¥ , ð ( ð, ð ) ⥠ð¶ ð (cid:16) â ðð (cid:17) . The proof given by Gittins et al. [12] is in a discrete setting, but essentially the same proof carries over to our continuoussetting.
Proof.
We can write ð ( ð, ð ) as ð ( ð, ð ) = â« ðð ð¹ ( ð¡ )/ ð¹ ( ð ) d ð¡ â ð¹ ( ð )/ ð¹ ( ð ) ⥠⫠ðð ð¹ ( ð¡ ) ð¹ ( ð ) d ð¡ . Because ð â OR (ââ , â ) , there exist ðœ > ð¶ , ð¥ > ð¡ > ð > ð¥ , ð¹ ( ð¡ ) ð¹ ( ð ) ⥠ð¶ (cid:16) ð¡ð (cid:17) â ðœ . For all ð > ð > ð¥ , we have ð ( ð, ð ) ⥠ð¶ â« ðð (cid:16) ð¡ð (cid:17) â ðœ d ð¡ = ð¶ ððœ â (cid:16) â (cid:16) ðð (cid:17) â( ðœ â ) (cid:17) . We now consider two cases: ðœ ⥠< ðœ <
2. If ðœ â¥
2, then ( ð / ð ) â( ðœ â ) †ð / ð and therefore ð ( ð, ð ) ⥠ð¶ ððœ â (cid:16) â ðð (cid:17) , (6.4)so setting ð¶ = ð¶ /( ðœ â ) and ð¥ = ð¥ suï¬ces. If 1 < ðœ <
2, we use the fact that for all ð¢ > ð¢ ðœ â †+ ( ðœ â ) ( ð¢ â ) . Substituting ð¢ = ð / ð and combining this with (6.4) yields ð ( ð, ð ) ⥠ð¶ ð (cid:16) â ðð (cid:17) , so setting ð¶ = ð¶ and ð¥ = ð¥ suï¬ces. (cid:3) In this section we characterize the heavy-traï¬c scaling of mean waiting, residence, and inï¬atedresidence times, which are the M/G/1 quantities that appear Theorem 5.1. Because M-SERPT isa simpler policy than M-Gittins, our approach is to ï¬rst study M-SERPTâs heavy-traï¬c scaling(Sections 7.2 and 7.3) then show that the results extend to M-Gittins (Section 7.4).
Before starting the heavy-traï¬c analyses of M-Gittins and M-SERPT, we introduce some newnotation. Let ð» ð ( ð¥ ) = ð¹ ( ð¥ ) ð ( ð¥ ) . Deï¬nition 7.1.
The key M/G/1 response time quantities , or simply âkey quantitiesâ, of a monotonicSOAP policy ð are the following:I ðð = â« â (cid:0) ð» ð ( ðŠ ðð¥ ) + ð» ð ( ð§ ðð¥ ) (cid:1) ðð ( ð§ ðð¥ ) ð¹ ( ð¥ ) ð ( ð¥ ) d ð¥, II ðð = â« â ðð¥ð» ð ( ðŠ ðð¥ ) · ð¹ ( ð¥ ) ð¹ ( ðŠ ðð¥ ) d ð¥, II ðð = â« â ðð§ ðð¥ ð» ð ( ðŠ ðð¥ ) ð» ð ( ð§ ðð¥ ) · ð¹ ( ð¥ ) ð¹ ( ðŠ ðð¥ ) d ð¥, III ðð = â« â ð» ð ( ðŠ ðð¥ ) · ð¹ ( ð¥ ) ð¹ ( ðŠ ðð¥ ) d ð¥, ptimal Multiserver Scheduling with Unknown Job Sizes in Heavy Traï¬ic 23 II ðð = II ðð , III ðð = â« â ð» ð ( ðŠ ðð¥ ) d ð¥ . When the policy in question is clear, we drop the superscript ð .In Theorems B.1âB.3 (Appendix B) we show that for any monotonic SOAP policy ð , E [ ð ð ] = I ðð + II ðð , E [ ð ð ] = II ðð + III ðð , E [ ð ð ] = II ðð + III ðð . Bounding mean waiting, residence, and inï¬ated residence times thus amounts to bounding the keyquantities.For the most of the rest of this section we focus on the case where ð is M-SERPT, deferring theM-Gittins case to Section 7.4. Until then, ðŠ ð¥ , ð§ ð¥ , and the key quantities are understood to have animplicit superscript M-SERPT.The most important step of bounding the key quantities is bounding ð» ð ( ðŠ ð¥ ) and ð» ð ( ð§ ð¥ ) . As aï¬rst step, we bound ð» ð ( ð¥ ) . Let ð¹ ð ( ð¥ ) = E [ ð ] â« â ð¥ ð¹ ( ð¡ ) d ð¡ (7.1)be the tail of the excess of ð . We can write ð ( ð¥ ) as ð ( ð¥ ) = ( â ð ) + ðð¹ ð ( ð¥ ) . (7.2)This means that for all ð â [ , ] , we have ð» ð ( ð¥ ) †ð¹ ( ð¥ ) max { â ð, ðð¹ ð ( ð¥ )} †ð¹ ( ð¥ )( â ð ) ð ( ðð¹ ð ( ð¥ )) â ð = ð¹ ( ð¥ ) ð ð» ( ð¥ ) â ð ( â ð ) ð ð â ð , (7.3)where ð» ( ð¥ ) = ð¹ ( ð¥ )/ ð¹ ð ( ð¥ ) = lim ð â ð» ð ( ð¥ ) . This bound is useful because it separates ð» ð ( ð¥ ) âsdependence on ð¥ and ð : the numerator depends only on ð¥ , and the denominator depends onlyon ð . We will typically choose ð to be either 0 or arbitrarily small.Having bounded ð» ð ( ð¥ ) in (7.3), we now turn to bounding ð» ð ( ðŠ ð¥ ) and ð» ð ( ð§ ð¥ ) . Recalling thedeï¬nition of ð SERPT (Deï¬nition 2.1), ð» ( ð¥ ) = ð¹ ( ð¥ ) ð¹ ð ( ð¥ ) = E [ ð ] ð SERPT ( ð¥ ) , so Lemma 6.1 and the monotonicity of ð M-SERPT imply ð» ( ðŠ ð¥ ) = ð» ( ð§ ð¥ ) = E [ ð ] ð M-SERPT ( ð¥ ) = ð ( ) . (7.4)Combining this with (7.3) yields bounds on ð» ð ( ðŠ ð¥ ) and ð» ð ( ð§ ð¥ ) , though the bounds still have ð¹ ( ðŠ ð¥ ) and ð¹ ( ð§ ð¥ ) terms. To better understand ð» ð ( ðŠ ð¥ ) and ð» ð ( ð§ ð¥ ) , we need to use our results from Sec-tion 6 in arguments that depend on what class of distributions contains ð . We do this over thecourse of Sections 7.2 and 7.3. In this section we study the heavy-traï¬c scaling of M-SERPTâs waiting, residence, and inï¬atedresidence times for inï¬nite-variance job size distributions, speciï¬cally those in OR (â , â ) . Withthat said, many of the intermediate results we prove will also be useful for the ï¬nite-variance OR (ââ , â ) case (Section 7.3).Suppose that ð â OR (ââ , â ) . Combining Theorem 6.2 and (7.4) gives us ðŠ ð¥ , ð§ ð¥ = Î ( ð¥ ) ,ð» ( ðŠ ð¥ ) , ð» ( ð§ ð¥ ) = Î (cid:16) ð¥ (cid:17) . (7.5)This alone is enough to bound all of the key quantities except I ð . Lemma 7.2.
Under M-SERPT, if ð â OR (ââ , â ) , then II ð , II ð , III ð , II ð , III ð = ð (cid:18) log 11 â ð (cid:19) . Proof.
Our approach is to use the fact that, by (4.5), â« â ð» ð ( ð¥ ) d ð¥ = â« â ð¹ ( ð¥ ) ð ( ð¥ ) d ð¥ = E [ ð ] ð log 11 â ð . (7.6)Because II ð = II ð and III ð †III ð , it suï¬ces to show that the integrands of II ð , II ð , and III ð are all ð ( ð» ð ( ð¥ )) .We begin by showing that III ð âs integrand is ð ( ð» ð ( ð¥ )) . By (7.5) and the fact that ð â OR (ââ , â ) ,we have ð¹ ( ðŠ ð¥ ) = ð¹ ( Î ( ð¥ )) = Î ( ð¹ ( ð¥ )) , which yields ð» ð ( ðŠ ð¥ ) = ð¹ ( ðŠ ð¥ ) ð ( ðŠ ð¥ ) †ð¹ ( ðŠ ð¥ ) ð ( ð¥ ) = ð ( ð¹ ( ð¥ )) ð ( ð¥ ) = ð ( ð» ð ( ð¥ )) . (7.7)This implies the desired bound for III ð and III ð .We show II ð âs integrand is ð ( ð» ð ( ð¥ )) by applying (7.3) with ð =
0, (7.5), and (7.7): ðð§ ð¥ ð» ð ( ðŠ ð¥ ) ð» ð ( ð§ ð¥ ) †ðð§ ð¥ ð» ð ( ðŠ ð¥ ) ð» ( ð§ ð¥ ) = ð ( ð» ð ( ð¥ )) . This implies the desired bound for II ð and II ð . Similarly, ðð¥ð» ð ( ðŠ ð¥ ) · ð¹ ( ð¥ ) ð¹ ( ðŠ ð¥ ) †ðð¥ð» ð ( ðŠ ð¥ ) ð» ( ðŠ ð¥ ) = ð ( ð» ð ( ð¥ )) , implying the bound for II ð . (cid:3) It remains only to characterize the heavy-traï¬c scaling of I ð . Treating the OR (ââ , â ) caserequires some additional care, so we defer it to Section 7.3, focusing on the OR (â , â ) case fornow. The ï¬rst step is to bound ð ( ð¥ ) . Lemma 7.3. If ð â OR (â , â ) , then ð ( ð¥ ) = Î ( ð¥ ð¹ ( ð¥ )) . Proof.
By Deï¬nition 2.7, there exists ðœ â ( , ) such that ð ( ð¥ ) ð¹ ( ð¥ ) = â« ð¥ ðð¡ð¹ ( ð¡ ) ð¹ ( ð¥ ) d ð¡ †ð ( ) â« ð¥ ð¡ (cid:16) ð¡ð¥ (cid:17) â ðœ d ð¡ = ð ( ð¥ ) , and similarly for the lower bound. (cid:3) ptimal Multiserver Scheduling with Unknown Job Sizes in Heavy Traï¬ic 25 We now have bounds on every term in I ð âs integrand, allowing us to bound I ð and therebymean response time. Theorem 7.4. If ð â OR (â , â ) , then in the ð â limit, E [ ð M-SERPT-1 ] = ð (cid:18) log 11 â ð (cid:19) , E [ ð M-SERPT-1 ] = ð (cid:18) log 11 â ð (cid:19) , and therefore E [ ð M-SERPT-1 ] = ð (cid:18) log 11 â ð (cid:19) . Proof.
By Lemma 7.2, it suï¬ces to upper bound I ð . We compute (cid:0) ð» ð ( ðŠ ð¥ ) + ð» ð ( ð§ ð¥ ) (cid:1) ðð ( ð§ ð¥ ) ð¹ ( ð¥ ) ð ( ð¥ ) †(cid:0) ð» ( ðŠ ð¥ ) + ð» ( ð§ ð¥ ) (cid:1) ðð ( ð§ ð¥ ) ð» ( ð¥ ) ð ( ð¥ ) [by (7.3)] = (cid:0) ð» ( ðŠ ð¥ ) + ð» ( ð§ ð¥ ) (cid:1) ð ( ð§ ð¥ ð¹ ( ð§ ð¥ )) · ð» ( ð¥ ) ð ( ð¥ ) [by Lem. 7.3] = ð ( ð¹ ( ð¥ )) ð ( ð¥ ) [by (7.5)] = ð ( ð» ð ( ð¥ )) , so (7.6) implies the desired bound. (cid:3) We now turn to ï¬nite-variance job size distributions, speciï¬cally those in OR (ââ , â ) , MDA ( Î ) ,and ENBUE . We begin with the simplest case, which is
ENBUE . Theorem 7.5. If ð â ENBUE , then in the ð â limit, E [ ð M-SERPT-1 ] = Î (cid:18) â ð (cid:19) , E [ ð M-SERPT-1 ] = Î ( ) , and therefore E [ ð M-SERPT-1 ] = Î (cid:18) â ð (cid:19) . If additionally ð â Bounded , then in the ð â limit, E [ ð M-SERPT-1 ] = Î ( ) . Proof.
Let ð¥ max be the supremum of ð âs support, so we may have ð¥ max = â . Because ð â ENBUE ,there exists age ð â < ð¥ max such that ⢠ð M-SERPT ( ð ) < ð M-SERPT ( ð â ) for all ð < ð â , and ⢠ð M-SERPT ( ð ) = ð M-SERPT ( ð â ) for all ð ⥠ð â .This means ⢠ðŠ 𥠆ð â for all sizes ð¥ , ⢠ð§ 𥠆ð â for all sizes 𥠆ð â , and ⢠ð§ ð¥ = ð¥ max for all sizes ð¥ > ð â . Because ð ( ð â ) < ð ( ð¥ max ) = â ð, applying (4.4) yields E [ ð M-SERPT-1 ] = Î ( ) + â« â ð â ð ( ð¥ max ) ð ( ð â ) · ( â ð ) d ð¹ ( ð¥ ) = Î (cid:18) â ð (cid:19) , E [ ð M-SERPT-1 ] = Î ( ) + â« â ð â ð¥ð ( ð â ) d ð¹ ( ð¥ ) = Î ( ) . If additionally ð â Bounded , then ð¥ max < â , so E [ ð M-SERPT-1 ] = Î ( ) + â« â ð â ð¥ max ð ( ð â ) d ð¹ ( ð¥ ) = Î ( ) . (cid:3) We now turn to the OR (ââ , â ) and MDA ( Î ) cases, which require the following technicallemma. Lemma 7.6.
Let ð¿ ð ( ð¢ ) = ð ð (cid:0) ð¹ â ð ( / ð¢ ) (cid:1) , where ð is SERPT or M-SERPT. If ð â OR (ââ , â ) , then ð¿ SERPT , ð¿
M-SERPT â OR (â , ) , and if ð â MDA ( Î ) , then ð¿ SERPT , ð¿
M-SERPT â OR (â ð, ð ) for all ð > . Proof.
Because ð¿ M-SERPT is the nonincreasing envelope of ð¿ SERPT , it suï¬ces to prove the re-sult for ð¿ SERPT . The OR (ââ , â ) case follows from closure properties of Matuszewska indices [19,Lemmas 4.5 and 4.6]. The MDA ( Î ) case follows from a result of Kamphorst and Zwart [19, Sec-tion 4.2.2] which states that if ð â MDA ( Î ) , then ð¿ SERPT is slowly varying , a property implying ð¿ SERPT â OR (â ð, ð ) for all ð > (cid:3) One implication of Lemma 7.6 is that if ð â MDA ( Î ) , then ð» ( ð¥ ) = ð ( ð¹ ( ð¥ ) â ð ) for all ð > . (7.8)We are now ready to tackle the OR (ââ , â ) and MDA ( Î ) cases. As in Section 7.2, we beginby bounding the ï¬ve key quantities other than I ð . Lemma 7.2 does so for OR (ââ , â ) , and thefollowing lemma does so for MDA ( Î ) . Lemma 7.7.
Under M-SERPT, if ð â MDA ( Î ) , then II ð , II ð , III ð , II ð = ð (cid:18) ( â ð ) ð (cid:19) for all ð > . If additionally ð â MDA ( Î ) â© ( QDHR ⪠QIMRL ) , then III ð = ð (cid:18) ( â ð ) ð (cid:19) for all ð > . Proof.
Our overall approach is to use (7.3) on each key quantity to bound it by an expressionof the form ( â ð ) â ð · â« â Ί ( ð, ð¥ ) d ð¥ , where Ί ( ð, ð¥ ) does not depend on ð . The challenge is thento show that the integral converges for arbitrarily small ð > ptimal Multiserver Scheduling with Unknown Job Sizes in Heavy Traï¬ic 27 We begin with two bounds on ð» ð ( ðŠ ð¥ ) · ð¹ ( ð¥ )/ ð¹ ( ðŠ ð¥ ) , a term which appears in the integrands ofseveral key quantities. By (4.3), ð» ð ( ðŠ ð¥ ) · ð¹ ( ð¥ ) ð¹ ( ðŠ ð¥ ) †ð» ð ( ðŠ ð¥ ) , (7.9) ð» ð ( ðŠ ð¥ ) · ð¹ ( ð¥ ) ð¹ ( ðŠ ð¥ ) = ð¹ ( ð¥ ) ð ( ðŠ ð¥ ) †ð¹ ( ð¥ ) ð ( ð¥ ) = ð» ð ( ð¥ ) . (7.10)Combining (7.10) with (7.6) implies the desired bound for III ð .We now bound II ð . To do so, we apply (7.3) twice, choosing ð = ð» ð ( ðŠ ð¥ ) and arbitrarilysmall ð > ð» ð ( ð¥ ) :II ð †⫠â ðð¥ð» ð ( ðŠ ð¥ ) ð» ð ( ð¥ ) d ð¥ [by (7.10)] †( â ð ) ð â« â ðð¥ð¹ ( ð¥ ) ð ð» ( ðŠ ð¥ ) ð» ( ð¥ ) â ð d ð¥ [by (7.3)] †ð ( )( â ð ) ð â« â ð¥ð¹ ( ð¥ ) ð ð¹ ( ð¥ ) â ð ( â ð ) d ð¥ [by (7.4), (7.8)] †ð ( )( â ð ) ð â« â ð¥ â ðŒð d ð¥, [by Lem. 2.13] where we may choose ðŒ > ðŒ > / ð makes the integral converge, soII ð = ð (( â ð ) â ð ) . The computation for II ð is similar:II ð †( â ð ) ð â« â ðð§ ð¥ ð¹ ( ð§ ð¥ ) ð ð» ( ðŠ ð¥ ) ð» ( ð§ ð¥ ) â ð d ð¥ [by (7.3), (7.9)] †ð ( )( â ð ) ð â« â ð§ â ðŒðð¥ d ð¥ . [by (7.4), Lem. 2.13] Because ð§ ð¥ ⥠ð¥ , the integral converges if we choose ðŒ > / ð , so II ð = ð (( â ð ) â ð ) . This alsocovers II ð because II ð = II ð .If additionally ð â MDA ( Î ) â© ( QDHR ⪠QIMRL ) with exponent ðŸ , then we can similarlybound III ð : III ð †( â ð ) ð â« â ð¹ ( ðŠ ð¥ ) ð ð» ( ðŠ ð¥ ) â ð d ð¥ [by (7.3)] †ð ( )( â ð ) ð â« â ðŠ â ðŒðð¥ d ð¥ [by (7.4), Lem. 2.13] †ð ( )( â ð ) ð â« â ð¥ â ðŒð / ðŸ d ð¥, [by Thm. 6.3] so choosing ðŒ > ðŸ / ð shows that III ð = ð (( â ð ) â ð ) . (cid:3) It remains only to characterize the heavy-traï¬c scaling of I ð . Lemma 7.8.
Under M-SERPT, if ð â OR (ââ , â ) ⪠MDA ( Î ) , then I ð = ( â ð ) · ð M-SERPT (cid:0) ð¹ â ð ( â ð ) (cid:1) ! . Proof.
Because E [ ð ] < â , we have ð ( ð¥ ) = Î ( ) , so by (7.3) and (7.4),I ð = â« â Î ( ) ð M-SERPT ( ð¥ ) · ð¹ ( ð¥ ) ð ( ð¥ ) d ð¥ . For the lower bound, we integrate up to ð¹ â ð ( â ð ) instead of â . For 𥠆ð¹ â ð ( â ð ) , we have ð¹ ð ( ð¥ ) ⥠â ð , so (7.2) implies ðð¹ ð ( ð¥ ) †ð ( ð¥ ) †( + ð ) ð¹ ð ( ð¥ ) . Using this fact along with the monotonicity of ð M-SERPT yieldsI ð ⥠Ω ( ) ð M-SERPT (cid:0) ð¹ â ð ( â ð ) (cid:1) â« ð¹ â ð ( â ð ) ð¹ ( ð¥ ) ð¹ ð ( ð¥ ) d ð¥ = Ω ( ) ð M-SERPT (cid:0) ð¹ â ð ( â ð ) (cid:1) ð¹ ð (cid:0) ð¹ â ð ( â ð ) (cid:1) â ! [by (7.1)] = Ω ( â ð ) · ð M-SERPT (cid:0) ð¹ â ð ( â ð ) (cid:1) ! . For the upper bound, we split the integration region at ð¹ â ð ( â ð ) :I ð = â« ð¹ â ð ( â ð ) ð ( ) ð M-SERPT ( ð¥ ) · ð¹ ( ð¥ ) ð ( ð¥ ) d ð¥ + â« â ð¹ â ð ( â ð ) ð ( ) ð M-SERPT ( ð¥ ) · ð¹ ( ð¥ ) ð ( ð¥ ) d ð¥ . (7.11)The second integral in (7.11) is simple to bound using the monotonicity of ð M-SERPT : â« â ð¹ â ð ( â ð ) ð ( ) ð M-SERPT ( ð¥ ) · ð¹ ( ð¥ ) ð ( ð¥ ) d 𥠆ð ( ) ð M-SERPT (cid:0) ð¹ â ð ( â ð ) (cid:1) â« â ð¹ â ð ( â ð ) ð¹ ( ð¥ ) ð ( ð¥ ) d 𥠆ð ( ) ð M-SERPT (cid:0) ð¹ â ð ( â ð ) (cid:1) â ð â â ð + ðð¹ â ð ( â ð ) ! [by (4.5), (7.2)] = ð ( â ð ) · ð M-SERPT (cid:0) ð¹ â ð ( â ð ) (cid:1) ! . To bound the ï¬rst integral in (7.11), we change variables to ð¢ = / ð¹ ð ( ð¥ ) : â« ð¹ â ð ( â ð ) ð ( ) ð M-SERPT ( ð¥ ) · ð¹ ( ð¥ ) ð ( ð¥ ) d 𥠆⫠ð¹ â ð ( â ð ) ð ( ) ð M-SERPT ( ð¥ ) · ð¹ ( ð¥ ) ð¹ ð ( ð¥ ) d ð¥ [by (7.2)] = â« /( â ð ) ð ( ) ð M-SERPT (cid:0) ð¹ â ð ( / ð¢ ) (cid:1) d ð¢ = ð ( ) â« /( â ð ) ð¿ M-SERPT ( ð¢ ) d ð¢, where ð¿ M-SERPT is as in Lemma 7.6. By Lemma 7.6, we have ð¿ M-SERPT â OR (â , â) , so a result inKaramata theory [8, Theorem 2.6.1] implies â« v ð¿ M-SERPT ( ð¢ ) d ð¢ = ð ( v ð¿ M-SERPT ( v )) ptimal Multiserver Scheduling with Unknown Job Sizes in Heavy Traï¬ic 29 in the v â â limit. Letting v = /( â ð ) yields the desired bound. (cid:3) Having characterized the heavy-traï¬c scaling of all the key quantities, the main heavy-traï¬cresults for OR (ââ , â ) and MDA ( Î ) follow easily. Theorem 7.9. If ð â OR (ââ , â ) , then in the ð â limit, E [ ð M-SERPT-1 ] = Î ( â ð ) · ð M-SERPT (cid:0) ð¹ â ð ( â ð ) (cid:1) ! = Ω (cid:18) ( â ð ) ð¿ (cid:19) for some ð¿ > , E [ ð M-SERPT-1 ] †E [ ð M-SERPT-1 ] = Î (cid:18) log 11 â ð (cid:19) , and therefore E [ ð M-SERPT-1 ] = Î ( â ð ) · ð M-SERPT (cid:0) ð¹ â ð ( â ð ) (cid:1) ! . Proof.
After applying Lemmas 7.2 and 7.8, it remains only to show I ð = Ω (( â ð ) â ð¿ ) . Using ð¿ M-SERPT from Lemma 7.6, we can rewrite Lemma 7.8 asI ð = Î (cid:18) â ð ð¿ M-SERPT (cid:18) â ð (cid:19) (cid:19) . (7.12)By Lemma 7.6, we have ð¿ â OR (â , ) , which means there exists ðœ â ( , ) such that ð¿ ( ð¢ ) = Ω ( ð¢ â ðœ ) in the ð¢ â â limit. Letting ð¿ = â ðœ and ð¢ = /( â ð ) yields the desired bound. (cid:3) Theorem 7.10. If ð â MDA ( Î ) , then in the ð â limit, E [ ð M-SERPT-1 ] = Î ( â ð ) · ð M-SERPT (cid:0) ð¹ â ð ( â ð ) (cid:1) ! = Ω (cid:18) ( â ð ) â ð (cid:19) for all ð > , E [ ð M-SERPT-1 ] = ð (cid:18) ( â ð ) ð (cid:19) for all ð > , and therefore E [ ð M-SERPT-1 ] = Î ( â ð ) · ð M-SERPT (cid:0) ð¹ â ð ( â ð ) (cid:1) ! . If additionally ð â MDA ( Î ) â© ( QDHR ⪠QIMRL ) , then E [ ð M-SERPT-1 ] = ð (cid:18) ( â ð ) ð (cid:19) for all ð > . Proof.
After applying Lemmas 7.7 and 7.8, it remains only to show I ð = Ω (( â ð ) â( â ð ) ) . Thisfollows from (7.12) and Lemma 7.6, similarly to the proof of Theorem 7.9. (cid:3) Having characterized heavy-traï¬c scaling under M-SERPT, we now do the same for Gittins andM-Gittins. Our ï¬rst result shows that the mean waiting and residence times of Gittins and M-Git-tins have the same heavy-traï¬c scaling as that of M-SERPT. Note that the precondition holds forall of the job size distributions we consider in Section 7.3. Theorem 7.11.
In the ð â limit, E [ ð Gittins-1 ] , E [ ð M-Gittins-1 ] = ð ( E [ ð M-SERPT-1 ]) , and if E [ ð M-SERPT-1 ] = ð ( E [ ð M-SERPT-1 ]) , then E [ ð Gittins-1 ] , E [ ð M-Gittins-1 ] = Î ( E [ ð M-SERPT-1 ]) . Proof.
The residence time result follows immediately from results of Scully et al. [33, Eq. (3.8)and Proposition 4.8], which imply E [ ð Gittins-1 ] †E [ ð M-Gittins-1 ] †E [ ð M-SERPT-1 ] . For waiting time, we ï¬rst invoke further results of Scully et al. [33, Proposition 4.7 and Lemma 5.6],which imply E [ ð Gittins-1 ] ⥠E [ ð M-Gittins-1 ] ⥠E [ ð M-SERPT-1 ] . It thus suï¬ces to show E [ ð Gittins-1 ] = ð ( E [ ð M-SERPT-1 ]) . Because Gittins minimizes mean responsetime [3, 4, 12], we have E [ ð Gittins-1 ] †E [ ð Gittins-1 ] †E [ ð M-SERPT-1 ] = E [ ð M-SERPT-1 ] + E [ ð M-SERPT-1 ] , so the result follows from the E [ ð M-SERPT-1 ] = ð ( E [ ð M-SERPT-1 ]) precondition. (cid:3) Our ï¬nal heavy-traï¬c result shows that for certain job size distributions, under M-Gittins, meanwaiting time dominates mean inï¬ated residence time. The conditions are the same as those shownfor M-SERPT over the course of Section 7.3, except
QDHR ⪠QIMRL is replaced by
QDHR . Theorem 7.12. If ð â OR (ââ , â ) ⪠( MDA ( Î ) â© QDHR ) âª
Bounded , then in the ð â limit, E [ ð M-Gittins-1 ] = ð ( E [ ð M-Gittins-1 ]) . More speciï¬cally, E [ ð M-Gittins-1 ] obeys the same scaling bounds as shown for E [ ð M-SERPT-1 ] in Theo-rems 7.5, 7.9 and 7.10. Proof.
The proof is very similar to the proofs of analogous results for M-SERPT (Theorems 7.5,7.9 and 7.10), so we just describe the diï¬erences. ⢠If ð â OR (ââ , â ) , we follow the same proof as Theorem 7.9 and the lemmas it requires,except we use Theorem 6.4 to bound ðŠ M-Gittins ð¥ and ð§ M-Gittins ð¥ . ⢠If ð â MDA ( Î ) â© QDHR , we follow the same proof as Theorem 7.10 and the lemmas itrequires, except we use Theorem 6.5 to bound ðŠ M-Gittins ð¥ and ð§ M-Gittins ð¥ . ⢠If ð â Bounded , we follow the same proof as Theorem 7.5, except we use a result of Aaltoet al. [4, Proposition 9] to justify the existence of the critical age ð â . (cid:3) With some extra eï¬ort, one can show it also holds for ð â OR (â , â ) . ptimal Multiserver Scheduling with Unknown Job Sizes in Heavy Traï¬ic 31 We study optimal scheduling in the M/G/ k to minimize mean response time. This problem is solvedby the Gittins policy for the single-server ð = M-Gittins (Deï¬nition 2.4)and show that it minimizes mean response time in the heavy-traï¬c M/G/ k for a large class ofï¬nite-variance job size distributions (Theorem 3.1). We also show that the simple and practicalM-SERPT policy is a 2-approximation for mean response time in the heavy-traï¬c M/G/ k undersimilar conditions (Theorem 3.2). As a byproduct of our M/G/ k study, we obtain results characteriz-ing the heavy-traï¬c scaling of M/G/1 mean response time under Gittins, M-Gittins, and M-SERPT(Theorem 3.3).A natural question to ask is whether the conditions under which we prove M-Gittinsâs optimalitycan be relaxed, particularly the QDHR and
Bounded assumptions. The diï¬culty lies in the fact thatfor some job size distributions, the bound in Theorem 5.1 is not strong enough because inï¬atedresidence time is inï¬nite. It is possible that the techniques used by Köllerström [21, 22] to analyzethe heavy-traï¬c M/G/ k under FCFS could be helpful, seeing as FCFS has inï¬nite inï¬ated residencetime.Another major open question is analyzing the performance of M-Gittins outside of the heavy-traï¬c limit. In the single-server case, one can generalize the techniques of Scully et al. [33] toshow that M-Gittins is a 3-approximation for M/G/1 mean response time at all loads. However, themultiserver case remains open. ACKNOWLEDGMENTS
This work was supported by NSF grants CMMI-1938909, XPS-1629444, and CSR-1763701; and aGoogle 2020 Faculty Research Award.
REFERENCES [1] Samuli Aalto and Urtzi Ayesta. 2006. Mean delay analysis of multi level processor sharing disciplines. In
INFOCOM2006. 25th IEEE International Conference on Computer Communications. Proceedings . IEEE, 1â11.[2] S Aalto and U Ayesta. 2006. On the nonoptimality of the foreground-background discipline for IMRL service times.
Journal of Applied Probability
43, 2 (2006), 523â534.[3] Samuli Aalto, Urtzi Ayesta, and Rhonda Righter. 2009. On the Gittins index in the M/G/1 queue.
Queueing Systems
63, 1 (2009), 437â458.[4] Samuli Aalto, Urtzi Ayesta, and Rhonda Righter. 2011. Properties of the Gittins index with application to optimalscheduling.
Probability in the Engineering and Informational Sciences
25, 03 (2011), 269â288.[5] Martin F. Arlitt and Carey L. Williamson. 1996. Web server workload characterization: The search for invariants.
ACM SIGMETRICS Performance Evaluation Review
24, 1 (1996), 126â137.[6] Nikhil Bansal, Bart Kamphorst, and Bert Zwart. 2018. Achievable performance of blind policies in heavy traï¬c.
Mathematics of Operations Research
43, 3 (2018), 949â964.[7] Luca Becchetti and Stefano Leonardi. 2004. Nonclairvoyant scheduling to minimize the total ï¬ow time on single andparallel machines.
Journal of the ACM (JACM)
51, 4 (2004), 517â539.[8] N. Bingham, C. Goldie, and J. Teugels. 1987.
Regular Variation . Cambridge University Press.[9] Yan Chen and Jing Dong. 2020. Scheduling with service-time information: The power of two priority classes. (2020).Preprint.[10] M. E. Crovella and A. Bestavros. 1997. Self-similarity in World Wide Web traï¬c: evidence and possible causes.
IEEE/ACM Transactions on Networking
5, 6 (1997), 835â846.[11] Hanhua Feng and Vishal Misra. 2003. Mixed scheduling disciplines for network ï¬ows. In
ACM SIGMETRICS Perfor-mance Evaluation Review , Vol. 31. ACM, 36â39.[12] John C. Gittins, Kevin D. Glazebrook, and Richard Weber. 2011.
Multi-armed Bandit Allocation Indices . John Wiley &Sons.[13] Kevin D Glazebrook. 2003. An analysis of Klimovâs problem with parallel servers.
Mathematical Methods of OperationsResearch
58, 1 (2003), 1â28. [14] Kevin D Glazebrook and José Niño-Mora. 2001. Parallel scheduling of multiclass M/M/m queues: Approximate andheavy-traï¬c optimization of achievable performance.
Operations Research
49, 4 (2001), 609â623.[15] Isaac Grosof, Ziv Scully, and Mor Harchol-Balter. 2018. SRPT for multiserver systems.
Performance Evaluation v a.2018.10.001[16] Mor Harchol-Balter. 2013. Performance Modeling and Design of Computer Systems: Queueing Theory in Action (1st ed.).Cambridge University Press, New York, NY, USA.[17] Mor Harchol-Balter and Allen B. Downey. 1997. Exploiting Process Lifetime Distributions for Dynamic Load Balanc-ing.
ACM Trans. Comput. Syst.
15, 3 (Aug. 1997), 253â285. https://doi.org/10.1145/263326.263344[18] Bala Kalyanasundaram and Kirk R Pruhs. 1997. Minimizing ï¬ow time nonclairvoyantly. In
Proceedings 38th AnnualSymposium on Foundations of Computer Science . IEEE, 345â352.[19] Bart Kamphorst and Bert Zwart. 2020. Heavy-Traï¬c Analysis of Sojourn Time Under the ForegroundâBackgroundScheduling Policy.
Stochastic Systems
10, 1 (2020), 1â28. https://doi.org/10.1287/stsy.2019.0036[20] Leonard Kleinrock. 1976.
Queueing Systems, Volume 2: Computer Applications . Vol. 66. Wiley New York.[21] Julian Köllerström. 1974. Heavy Traï¬c Theory for Queues with Several Servers. I.
Journal of Applied Probability
Journal of Applied Probability
ACM SIGMETRICS Performance Evaluation Review , Vol. 38. ACM, 12â14.[24] Natalia Osipova, Urtzi Ayesta, and Konstantin Avrachenkov. 2009. Optimal policy for multi-class scheduling in asingle server queue. In
Teletraï¬c Congress, 2009. ITC 21 2009. 21st International . IEEE, 1â8.[25] Kihong Park and Walter Willinger. 2000. Self-Similar Network Traï¬c: An Overview.
Self-Similar Network Traï¬c andPerformance Evaluation (2000), 1â38.[26] Sidney I Resnick. 2013.
Extreme values, regular variation and point processes . Springer.[27] Rhonda Righter and J George Shanthikumar. 1989. Scheduling multiclass single server queueing systems to stochas-tically maximize the number of successful departures.
Probability in the Engineering and Informational Sciences
3, 3(1989), 323â333.[28] Rhonda Righter, J George Shanthikumar, and Genji Yamazaki. 1990. On extremal service disciplines in single-stagequeueing systems.
Journal of Applied Probability
27, 2 (1990), 409â416.[29] Linus Schrage. 1968. A proof of the optimality of the shortest remaining processing time discipline.
OperationsResearch
16, 3 (1968), 687â690.[30] Linus E Schrage. 1967. The queue M/G/1 with feedback to lower priority queues.
Management Science
13, 7 (1967),466â474.[31] Linus E Schrage and Louis W Miller. 1966. The queue M/G/1 with the shortest remaining processing time discipline.
Operations Research
14, 4 (1966), 670â684.[32] Ziv Scully, Mor Harchol-Balter, and Alan Scheller-Wolf. 2018. SOAP: One Clean Analysis of All Age-Based SchedulingPolicies.
Proc. ACM Meas. Anal. Comput. Syst.
2, 1, Article 16 (April 2018), 30 pages. https://doi.org/10.1145/3179419[33] Ziv Scully, Mor Harchol-Balter, and Alan Scheller-Wolf. 2020. Simple Near-Optimal Scheduling for the M/G/1.
Proc.ACM Meas. Anal. Comput. Syst.
4, 1, Article 11 (March 2020), 29 pages. https://doi.org/10.1145/3379477[34] Moshe Shaked and J George Shanthikumar. 2007.
Stochastic orders . Springer Science & Business Media.[35] Adam Wierman, Mor Harchol-Balter, and Takayuki Osogami. 2005. Nearly insensitive bounds on SMART scheduling.In
ACM SIGMETRICS Performance Evaluation Review , Vol. 33. ACM, 205â216.
A DIFFICULTY OF M/G/ k ANALYSIS FOR NONMONOTONIC RANK FUNCTIONS
In this appendix we explain why Theorem 5.1 does not readily generalize to SOAP policies withnonmonotonic rank functions.Recall that the proof of Theorem 5.1 considers a tagged job ðœ of size ð¥ and considers severalcategories of work completed while ðœ is in the system. Our focus here is on relevant work, whichis work on jobs that are prioritized ahead of ðœ . Let ð ð - ðð¥ be the maximum age at which a new job,namely one that arrives after ðœ , can contribute relevant work under ð - k . When ð is monotonic, ð ð - ðð¥ does not depend on the number of servers ð . Speciï¬cally, we have ð ð - ðð¥ = ðŠ ðð¥ . The problem fornonmonotonic SOAP policies ð is that, as we show below, we can have ð ð - ðð¥ > ð ð -1 ð¥ when ð ⥠ðŠ ðð¥ and ð§ ðð¥ generalized to all SOAP policies ð . ⢠If ð is monotonic, then ðŠ ðð¥ and ð§ ðð¥ are given by Deï¬nition 4.1. ptimal Multiserver Scheduling with Unknown Job Sizes in Heavy Traï¬ic 33 ð ðŠ ðð¥ = ð ð -1 ð¥ ð ð = ð ð -2 ð¥ ð¥ ð§ ðð¥ ð M- ð ( ð ) ð ð ( ð ) Fig. A.1. Age Cutoï¬s for Nonmonotonic Rank Functions ⢠If ð is nonmonotonic, we can deï¬ne ðŠ ðð¥ and ð§ ðð¥ in terms of a monotonic SOAP policy relatedto ð [33]. Speciï¬cally, letting M- ð be the monotonic SOAP policy with rank function ð M- ð ( ð ) = max ð â[ ,ð ] ð ð ( ð ) , we deï¬ne ðŠ ðð¥ = ðŠ M- ðð¥ and ð§ ðð¥ = ð§ M- ðð¥ .Consider the example SOAP policy ð and tagged job size ð¥ shown in Fig. A.1. In the single-server ð = ð ð -1 ð¥ = ðŠ ðð¥ . To see why, consider the moment a new job ðœ â² reaches age ðŠ ðð¥ whilethe tagged job ðœ is still in the system. For this to occur, it must be that ðœ is also at age ðŠ ðð¥ , becauseotherwise ðœ would have priority over ðœ â² . With both ðœ and ðœ â² at the same rank, the FCFS tiebreakerprioritizes ðœ . Thereafter, ðœ never has rank worse than ð ð ( ðŠ ðð¥ ) , so ðœ â² remains stuck at age ðŠ ðð¥ and isnever prioritized over ðœ .We now reconsider the same example from Fig. A.1 but with ð ⥠ðœ â² can receive service even while ðœ has better rank because ðœ and ðœ â² can occupy diï¬erent servers simultaneously. This means ðœ â² no longer gets stuck at age ðŠ ðð¥ .In particular, if ðœ reaches age ð and ðœ â² passes age ð , then ðœ â² contributes relevant work between ages ð and ð . Therefore, ð ð - ðð¥ = ð > ð ð -1 ð¥ for ð ⥠ðœ â² will contribute relevantwork until it completes or reaches age ð ð - ðð¥ . This is a worst-case estimate, because the tagged job ðœ might complete before ðœ â² completes or reaches age ð ð - ðð¥ . When ð is monotonic, we have ð ð - ðð¥ = ð ð -1 ð¥ ,so this overestimate is tight enough to compare the mean response times under ð - k and ð -1. How-ever, when ð is nonmonotonic, it may be that ð ð - ðð¥ > ð ð -1 ð¥ , as explained above, so we do not obtaina tight comparison between the ð - k and ð -1 systems. This suggests generalizing Theorem 5.1 tononmonotonic SOAP policies requires not relying as heavily on worst-case quantities like ð ð - ðð¥ . B NEW FORMULAS FOR MEAN WAITING AND RESIDENCE TIMES
In this appendix we prove the following new formulas for mean waiting, residence, and inï¬atedresidence times.
Theorem B.1.
Under any monotonic SOAP policy ð , E [ ð ð -1 ] = â« â (cid:18) ð¹ ( ðŠ ðð¥ ) ð ( ðŠ ðð¥ ) + ð¹ ( ð§ ðð¥ ) ð ( ð§ ðð¥ ) (cid:19) ðð ( ð§ ðð¥ ) ð¹ ( ð¥ ) ð ( ð¥ ) + ðð¥ð¹ ( ðŠ ðð¥ ) ð¹ ( ð¥ ) ð ( ðŠ ðð¥ ) ! d ð¥ . Theorem B.2.
Under any monotonic SOAP policy ð , E [ ð ð -1 ] = â« â (cid:18) ðð§ ðð¥ ð¹ ( ð¥ ) ð¹ ( ð§ ðð¥ ) ð ( ðŠ ðð¥ ) ð ( ð§ ðð¥ ) + ð¹ ( ð¥ ) ð ( ðŠ ðð¥ ) (cid:19) d ð¥ . Theorem B.3.
Under any monotonic SOAP policy ð , E [ ð ð -1 ] = â« â (cid:18) ðð§ ðð¥ ð¹ ( ð¥ ) ð¹ ( ð§ ðð¥ ) ð ( ðŠ ðð¥ ) ð ( ð§ ðð¥ ) + ð¹ ( ðŠ ðð¥ ) ð ( ðŠ ðð¥ ) (cid:19) d ð¥ . Proving these results requires new technical machinery for, roughly speaking, performing inte-gration by parts on expressions involving ðŠ ðð¥ and ð§ ðð¥ , such as those in (4.4). Appendix B.1 introducesthe general technical machinery, which Appendix B.2 then applies to prove the above results.Throughout this appendix, ð denotes the derivative operator, and [ ð¡ , . . . , ð¡ ð âŠâ RHS ] denotesthe function that maps variables ð¡ , . . . , ð¡ ð to expression RHS. B.1 Integration by Parts with Hills and Valleys
Deï¬nition B.4. A hill-valley partition of R + is a sequence0 = 𢠆v < ð¢ < v < ð¢ < v < . . . . Intervals of the form ( ð¢ ð , v ð ] are called valleys , and intervals of the form ( v ð , ð¢ ð + ] are called hills . Deï¬nition B.5.
Functions ðŠ, ð§ : R + â R + are a hill-valley pair for a given hill-valley partition iffor each valley ( ð¢ ð , v ð ] , ðŠ ( ð¥ ) = ð¢ ð , ð§ ( ð¥ ) = v ð , for all ð¥ â ( ð¢ ð , v ð ] , and for each hill ( v ð , ð¢ ð + ] , ðŠ ( ð¥ ) = ð¥, ð§ ( ð¥ ) = ð¥, for all ð¥ â ( v ð , ð¢ ð + ] . For compactness, we write ðŠ ð¥ = ðŠ ( ð¥ ) and ð§ ð¥ = ð§ ( ð¥ ) .It is simple to check that for any monotonic SOAP policy ð , the pair ðŠ ð , ð§ ð (Deï¬nition 4.1) is ahill-valley pair. Deï¬nition B.6.
For functions Ί : R + â R + , we deï¬ne the diï¬erence ratio operator Î as follows: ÎΊ (h ð¢, v i) =  Ί ( v ) â Ί ( ð¢ ) v â ð¢ if ð¢ â v ð Ί ( ð¢ ) if ð¢ = v , where ð is the derivative operator. Similarly, for functions with multiple arguments, Î ð is a versionof Î that works on the ð th argument: Î ð Ί ( . . . , h ð¢, v i , . . . ) = Î [ ð¡ âŠâ Ί ( . . . , ð¡, . . . )] (h ð¢, v i) . Like ð , it is easily seen that Î is a linear operator. When applied to polynomials, Î elegantlygeneralizes ð . For example, Î (cid:20) ð¡ âŠâ ð¡ (cid:21) (h ð¢, v i) = ð¢ v . (B.1)The Î operator also obeys various chain-rule-like identities. We highlight the two we use below. Lemma B.7.
Let Ί , Κ : R â R be diï¬erentiable. For all ð¢, v â R , Î [ ð¡ âŠâ Ί ( Κ ( ð¡ ))] (h ð¢, v i) = ÎΊ (h Κ ( ð¢ ) , Κ ( v )i) ÎΚ (h ð¢, v i) . Proof. If ð¢ = v , this is the chain rule. If ð¢ â v but Κ ( ð¢ ) = Κ ( v ) , then both sides are 0. If Κ ( ð¢ ) â Κ ( v ) , then the result follows by a simple computation. (cid:3) We borrow the terms âhillâ and âvalleyâ from Scully et al. [33], who use a similar concept to analyze SOAP policies, butthis deï¬nition is abstracted away from the details of SOAP. As a corner case, we consider the ï¬rst hill or valley to alsoinclude 0. ptimal Multiserver Scheduling with Unknown Job Sizes in Heavy Traï¬ic 35
Lemma B.8.
Let Ί : R â R be diï¬erentiable. For all ð¢, v â R , Î [ ð¡ âŠâ Ί ( ð¡, ð¡ )] (h ð¢, v i) = ΠΊ ( ð¢, h ð¢, v i) + ΠΊ (h ð¢, v i , v ) . Proof. If ð¢ = v , this is the multivariable chain rule. If ð¢ â v , ( v â ð¢ ) Î [ ð¡ âŠâ Ί ( ð¡, ð¡ )] (h ð¢, v i) = Ί ( v , v ) â Ί ( ð¢, ð¢ ) = Ί ( v , v ) â Ί ( ð¢, v ) + Ί ( ð¢, v ) â Ί ( ð¢, ð¢ ) = ( v â ð¢ ) ( ΠΊ (h ð¢, v i , v ) + ΠΊ ( ð¢, h ð¢, v i)) . (cid:3) The most important result of this appendix is the following lemma, which formulates a versionof integration by parts that works for hill-valley pairs despite their discontinuity.
Lemma B.9.
Let ðŠ, ð§ be a hill-valley pair, Ί : R + â R be diï¬erentiable, ð : R + â R be diï¬eren-tiable, and ð ( ð¥ ) = ð â ð ( ð¥ ) for some ð â R . If ð ( ) Ί ( , , ð§ ) = , lim ð¥ ââ ð ( ð¥ ) Ί ( ðŠ ð¥ , ð¥, ð§ ð¥ ) = , then â« â Ί ( ðŠ ð¥ , ð¥, ð§ ð¥ ) ðð ( ð¥ ) d ð¥ = â« â (cid:16) ð ( ðŠ ð¥ ) ΠΊ ( ðŠ ð¥ , ðŠ ð¥ , h ðŠ ð¥ , ð§ ð¥ i) + ð ( ð¥ ) ð Ί ( ðŠ ð¥ , ð¥, ð§ ð¥ ) + ð ( v ) ΠΊ (h ðŠ ð¥ , ð§ ð¥ i , ð§ ð¥ , ð§ ð¥ ) (cid:17) d ð¥ . Proof.
For each valley ( ð¢, v ] , â« v ð¢ Ί ( ðŠ ð¥ , ð¥, ð§ ð¥ ) ðð ( ð¥ ) d ð¥ = â« v ð¢ ð ( ð¥ ) ð Ί ( ð¢, ð¥, v ) d ð¥ + ð ( ð¢ ) Ί ( ð¢, ð¢, v ) â ð ( v ) Ί ( ð¢, v , v ) = â« v ð¢ ð ( ð¥ ) ð Ί ( ð¢, ð¥, v ) d ð¥ + ð ( ð¢ ) Ί ( ð¢, ð¢, ð¢ ) â ð ( v ) Ί ( v , v , v )+ ( v â ð¢ ) ð ( ð¢ ) ΠΊ ( ð¢, ð¢, h ð¢, v i) + ( v â ð¢ ) ð ( v ) ΠΊ (h ð¢, v i , v , v ) = â« v ð¢ (cid:16) ð ( ð¢ ) ΠΊ ( ð¢, ð¢, h ð¢, v i) + ð ( ð¥ ) ð Ί ( ð¢, ð¥, v ) + ð ( v ) ΠΊ (h ð¢, v i , v , v ) (cid:17) d ð¥ + ð ( ð¢ ) Ί ( ð¢, ð¢, ð¢ ) â ð ( v ) Ί ( v , v , v ) = â« v ð¢ (cid:16) ð ( ðŠ ð¥ ) ΠΊ ( ðŠ ð¥ , ðŠ ð¥ , h ðŠ ð¥ , ð§ ð¥ i) + ð ( ð¥ ) ð Ί ( ðŠ ð¥ , ð¥, ð§ ð¥ ) + ð ( v ) ΠΊ (h ðŠ ð¥ , ð§ ð¥ i , ð§ ð¥ , ð§ ð¥ ) (cid:17) d ð¥ + ð ( ð¢ ) Ί ( ð¢, ð¢, ð¢ ) â ð ( v ) Ί ( v , v , v ) . For each hill ( v , ð¢ ] , â« ð¢ v Ί ( ðŠ ð¥ , ð¥, ð§ ð¥ ) ðð ( ð¥ ) d ð¥ = â« ð¢ v ð ( ð¥ ) ð [ ð¡ â Ί ( ð¡, ð¡, ð¡ )] ( ð¥ ) d ð¥ + ð ( v ) Ί ( v , v , v ) â ð ( ð¢ ) Ί ( ð¢, ð¢, ð¢ ) = â« ð¢ v (cid:16) ð ( ð¥ ) ð Ί ( ð¥, ð¥, ð¥ ) + ð ( ð¥ ) ð Ί ( ð¥, ð¥, ð¥ ) + ð ( ð¥ ) ð Ί ( ð¥, ð¥, ð¥ ) (cid:17) d ð¥ + ð ( v ) Ί ( v , v , v ) â ð ( ð¢ ) Ί ( ð¢, ð¢, ð¢ ) = â« ð¢ v (cid:16) ð ( ðŠ ð¥ ) ΠΊ ( ðŠ ð¥ , ðŠ ð¥ , h ðŠ ð¥ , ð§ ð¥ i) + ð ( ð¥ ) ð Ί ( ðŠ ð¥ , ð¥, ð§ ð¥ ) + ð ( v ) ΠΊ (h ðŠ ð¥ , ð§ ð¥ i , ð§ ð¥ , ð§ ð¥ ) (cid:17) d ð¥ + ð ( v ) Ί ( v , v , v ) â ð ( ð¢ ) Ί ( ð¢, ð¢, ð¢ ) . Summing the hill and valley expressions over all hills and valleys, most of the non-integral termscancel out, and the two that remain are 0 by assumption: â« â Ί ( ðŠ ð¥ , ð¥, ð§ ð¥ ) ðð ( ð¥ ) d ð¥ = â« â (cid:16) ð ( ðŠ ð¥ ) ΠΊ ( ðŠ ð¥ , ðŠ ð¥ , h ðŠ ð¥ , ð§ ð¥ i) + ð ( ð¥ ) ð Ί ( ðŠ ð¥ , ð¥, ð§ ð¥ ) + ð ( v ) ΠΊ (h ðŠ ð¥ , ð§ ð¥ i , ð§ ð¥ , ð§ ð¥ ) (cid:17) d ð¥ + ð ( ) Ί ( , , ð§ ) â lim ð¥ ââ ð ( ð¥ ) Ί ( ðŠ ð¥ , ð¥, ð§ ð¥ ) . (cid:3) Our ï¬nal two lemmas show that integrals using Î can sometimes be turned into integrals us-ing ð . Lemma B.10.
Let ðŠ, ð§ be a hill-valley pair and Ί : R + â R + be diï¬erentiable with respect to itssecond argument. Then â« â ΠΊ ( ðŠ ð¥ , h ðŠ ð¥ , ð§ ð¥ i , ð§ ð¥ ) d ð¥ = â« â ð Ί ( ðŠ ð¥ , ð¥, ð§ ð¥ ) d ð¥ . Proof.
For each valley ( ð¢, v ] , â« v ð¢ ΠΊ ( ðŠ ð¥ , h ðŠ ð¥ , ð§ ð¥ i , ð§ ð¥ ) d ð¥ = â« v ð¢ ΠΊ ( ð¢, h ð¢, v i , v ) d ð¥ = ( v â ð¢ ) ΠΊ ( ð¢, h ð¢, v i , v ) = Ί ( ð¢, v , v ) â Ί ( ð¢, ð¢, v ) = â« v ð¢ ð Ί ( ð¢, ð¥, v ) d ð¥ = â« v ð¢ ð Ί ( ðŠ ð¥ , ð¥, ð§ ð¥ ) d ð¥ . For each hill ( v , ð¢ ] , â« ð¢ v ΠΊ ( ðŠ ð¥ , h ðŠ ð¥ , ð§ ð¥ i , ð§ ð¥ ) d ð¥ = â« ð¢ v ΠΊ ( ð¥, h ð¥, ð¥ i , ð¥ ) d ð¥ = â« ð¢ v ð Ί ( ð¥, ð¥, ð¥ ) d ð¥ = â« ð¢ v ð Ί ( ðŠ ð¥ , ð¥, ð§ ð¥ ) d ð¥ . Summing the hill and valley expressions over all hills and valleys yields the desired result. (cid:3)
Lemma B.11.
Let ðŠ, ð§ be a hill-valley pair and both Ί : R + â R and Κ : R + â R be diï¬erentiable.Then â« â Î [ ð¡ âŠâ Ί ( ðŠ ð¥ , Κ ( ð¡ ) , ð§ ð¥ )] (h ðŠ ð¥ , ð§ ð¥ i) d ð¥ = â« â ΠΊ ( ðŠ ð¥ , h Κ ( ðŠ ð¥ ) , Κ ( ð§ ð¥ )i , ð§ ð¥ ) ð Κ ( ð¥ ) d ð¥ . ptimal Multiserver Scheduling with Unknown Job Sizes in Heavy Traï¬ic 37 Proof.
We compute â« â Î [ ð¡ âŠâ Ί ( ðŠ ð¥ , Κ ( ð¡ ) , ð§ ð¥ )] (h ðŠ ð¥ , ð§ ð¥ i) d ð¥ = â« â ΠΊ ( ðŠ ð¥ , h Κ ( ðŠ ð¥ ) , Κ ( ð§ ð¥ )i , ð§ ð¥ ) ÎΚ (h ðŠ ð¥ , ð§ ð¥ i) d ð¥ [by Lem. B.7] = â« â Î h ð¢, ð¡, v âŠâ ΠΊ ( ð¢, h Κ ( ð¢ ) , Κ ( v )i , v ) · Κ ( ð¡ ) i ( ðŠ ð¥ , h ðŠ ð¥ , ð§ ð¥ i , ð§ ð¥ ) d ð¥ = â« â ΠΊ ( ðŠ ð¥ , h Κ ( ðŠ ð¥ ) , Κ ( ð§ ð¥ )i , ð§ ð¥ ) ð Κ ( ð¥ ) d ð¥ . [by Lem. B.10] (cid:3) B.2 Proofs of New Formulas
We now apply the theory developed in Appendix B.1 to prove Theorems B.1âB.3. Throughout theproofs, ðŠ ð¥ and ð§ ð¥ refer to ðŠ ðð¥ and ð§ ðð¥ , respectively. Recall that ðŠ, ð§ form a hill-valley pair (Deï¬ni-tion B.5) under any monotonic SOAP policy ð . Proof of Theorem B.1.
We compute E [ ð ð -1 ] = â« â ð ( ð§ ð¥ ) ð ( ðŠ ð¥ ) ð ( ð§ ð¥ ) d ð¹ ( ð¥ ) [by (4.4)] = â« â ð¹ ( ðŠ ð¥ ) ð ( ðŠ ð¥ ) Î (cid:20) ð¡ âŠâ ð ( ð¡ ) ð ( ð¡ ) (cid:21) (h ðŠ ð¥ , ð§ ð¥ i) + ð¹ ( ð§ ð¥ ) ð ( ð§ ð¥ ) ð ( ð§ ð¥ ) Î (cid:20) ð¡ âŠâ ð ( ð¡ ) (cid:21) (h ðŠ ð¥ , ð§ ð¥ i) ! d ð¥ [by Lem. B.9] = â« â ð¹ ( ðŠ ð¥ ) ð ( ðŠ ð¥ ) Î ð (h ðŠ ð¥ , ð§ ð¥ i) + ð¹ ( ðŠ ð¥ ) ð ( ð§ ð¥ ) ð ( ðŠ ð¥ ) Î (cid:20) ð¡ âŠâ ð ( ð¡ ) (cid:21) (h ðŠ ð¥ , ð§ ð¥ i)+ ð¹ ( ð§ ð¥ ) ð ( ð§ ð¥ ) ð ( ð§ ð¥ ) Î (cid:20) ð¡ âŠâ ð ( ð¡ ) (cid:21) (h ðŠ ð¥ , ð§ ð¥ i) ! d ð¥ [by Lem. B.8] = â« â ð¹ ( ðŠ ð¥ ) ð ( ðŠ ð¥ ) ð ( ðŠ ð¥ ) ðð ( ð¥ ) + ð ( ð§ ð¥ ) (cid:18) ð¹ ( ðŠ ð¥ ) ð ( ðŠ ð¥ ) + ð¹ ( ð§ ð¥ ) ð ( ð§ ð¥ ) (cid:19) ð (cid:20) ð¡ âŠâ ð ( ð¡ ) (cid:21) ( ð¥ ) ! d ð¥, [by Lem. B.10] which equals the desired result by (4.5). (cid:3) Proof of Theorem B.2.
We compute E [ ð ð -1 ] = â« â ð¥ð ( ðŠ ð¥ ) d ð¹ ( ð¥ ) [by (4.4)] = â« â (cid:18) ð§ ð¥ ð¹ ( ð§ ð¥ ) Î (cid:20) ð¡ âŠâ ð ( ð¡ ) (cid:21) (h ðŠ ð¥ , ð§ ð¥ i) + ð¹ ( ð¥ ) ð ( ðŠ ð¥ ) (cid:19) d ð¥ [by Lem. B.9] = â« â (cid:18) â ð§ ð¥ ð¹ ( ð§ ð¥ ) ð ( ðŠ ð¥ ) ð ( ð§ ð¥ ) ðð ( ð¥ ) + ð¹ ( ð¥ ) ð ( ðŠ ð¥ ) (cid:19) d ð¥, [by (B.1), Lem. B.11] which equals the desired result by (4.5). (cid:3) Proof of Theorem B.3.
Very similarly to the proof of Theorem B.2, we compute E [ ð ð -1 ] = â« â ð§ ð¥ ð ( ðŠ ð¥ ) d ð¹ ( ð¥ ) [by (4.6)] = â« â (cid:18) ð§ ð¥ ð¹ ( ð§ ð¥ ) Î (cid:20) ð¡ âŠâ ð ( ð¡ ) (cid:21) (h ðŠ ð¥ , ð§ ð¥ i) + ð¹ ( ðŠ ð¥ ) ð ( ðŠ ð¥ ) (cid:19) d ð¥ [by Lem. B.9] = â« â (cid:18) â ð§ ð¥ ð¹ ( ð§ ð¥ ) ð ( ðŠ ð¥ ) ð ( ð§ ð¥ ) ðð ( ð¥ ) + ð¹ ( ðŠ ð¥ ) ð ( ðŠ ð¥ ) (cid:19) d ð¥, [by (B.1), Lem. B.11] which equals the desired result by (4.5).which equals the desired result by (4.5).