Non-Clairvoyant Scheduling for Minimizing Mean Slowdown

AbstractWe consider the problem of scheduling dynamically arriving jobs in a non-clairvoyant setting, that is, when the size of a job in remains unknown until the job finishes execution. Our focus is on minimizing the mean slowdown, where the slowdown (also known as stretch) of a job is defined as the ratio of the flow time to the size of the job. We use resource augmentation in terms of allowing a faster processor to the online algorithm to make up for its lack of knowledge of job sizes. Our main result is that the Shortest Elapsed Time First (SETF) algorithm, a close variant of which is used in the Windows NT and Unix operating system scheduling policies, is a $(1+\epsilon)$-speed, $O((1/\epsilon)^5 \log^2 B)$-competitive algorithm for minimizing mean slowdown non-clairvoyantly, when $B$ is the ratio between the largest and smallest job sizes. In a sense, this provides a theoretical justification of the effectiveness of an algorithm widely used in practice. On the other hand, we also show that any $O(1)$-speed algorithm, deterministic or randomized, is $\Omega(\min(n,\log B))$-competitive. The motivation for resource augmentation is supported by an $\Omega(\min(n,B))$ lower bound on the competitive ratio without any speedup. For the static case, i.e., when all jobs arrive at time 0, we show that SETF is $O(\log{B})$ competitive without any resource augmentation and also give a matching $\Omega(\log{B})$ lower bound on the competitiveness.

[1]  Tao Yang,et al.  Scheduling optimization for resource-intensive Web requests on server clusters , 1999, SPAA '99.

[2]  Rajeev Motwani,et al.  Non-clairvoyant scheduling , 1994, SODA '93.

[3]  Luca Becchetti,et al.  Non-clairvoyant scheduling to minimize the average flow time on single and parallel machines , 2001, STOC '01.

[4]  Gary J. Nutt Operating system projects using Windows NT , 1998 .

[5]  Nikhil Bansal,et al.  Minimizing weighted flow time , 2007, ACM Trans. Algorithms.

[6]  Abraham Silberschatz,et al.  Operating System Concepts , 1983 .

[7]  Bala Kalyanasundaram,et al.  Speed is as powerful as clairvoyance , 2000, JACM.

[8]  Rajmohan Rajaraman,et al.  Improved algorithms for stretch scheduling , 2002, SODA '02.

[9]  Luca Becchetti,et al.  Scheduling to minimize average stretch without migration , 2000, SODA '00.

[10]  Sanjeev Khanna,et al.  Algorithms for minimizing weighted flow time , 2001, STOC '01.

[11]  Bala Kalyanasundaram,et al.  Minimizing flow time nonclairvoyantly , 2003, JACM.

[12]  Mor Harchol-Balter,et al.  Connection Scheduling in Web Servers , 1999, USENIX Symposium on Internet Technologies and Systems.

[13]  Rajmohan Rajaraman,et al.  Online Scheduling to Minimize Average Stretch , 2004, SIAM J. Comput..

[14]  Yossi Azar,et al.  Minimizing the Flow Time Without Migration , 2002, SIAM J. Comput..

[15]  Allan Borodin,et al.  Online computation and competitive analysis , 1998 .

[16]  Kirk Pruhs,et al.  Online weighted flow time and deadline scheduling , 2001, J. Discrete Algorithms.

[17]  Wayne E. Smith Various optimizers for single‐stage production , 1956 .

[18]  Michael A. Bender,et al.  Flow and stretch metrics for scheduling continuous job streams , 1998, SODA '98.