Minimizing migrations in fair multiprocessor scheduling of persistent tasks

Suppose that we are given n persistent tasks (jobs) that need to be executed in an equitable way on m processors (machines). Each machine is capable of performing one unit of work in each integral time unit and each job may be executed on at most one machine at a time. The schedule needs to specify which job is to be executed on each machine in each time window. The goal is to find a schedule that minimizes job migrations between machines while guaranteeing a fair schedule. We measure the fairness by the drift d defined as the maximum difference between the execution times accumulated by any two jobs. As jobs are persistent we measure the quality of the schedule by the ratio of the number of migrations to time windows. We show a tradeoff between the drift and the number of migrations. Let n = qm + r with 0 < r < m (the problem is trivial for n ≤ m and for r = 0). For any d ≥ 1, we show a schedule that achieves a migration ratio less than r(m − r)/(n(q(d − 1)) + ∊ > 0; namely, it asymptotically requires r(m − r) job migrations every n(q(d − 1) + 1) time windows. We show how to implement the schedule efficiently. We prove that our algorithm is almost optimal by proving a lower bound of r(m − r)/(nqd) on the migration ratio. We also give a more complicated schedule that matches the lower bound for a special case when 2q ≤ d and m = 2r. Our algorithms can be extended to the dynamic case in which jobs enter and leave the system over time.

[1]  Sanjoy K. Baruah,et al.  Fast scheduling of periodic tasks on multiple resources , 1995, Proceedings of 9th International Parallel Processing Symposium.

[2]  Hussein M. Abdel-Wahab,et al.  Fair On-Line Scheduling of a Dynamic Set of Tasks on a Single Resource , 1997, Inf. Process. Lett..

[3]  Carl A. Waldspurger,et al.  Stride Scheduling: Deterministic Proportional- Share Resource Management , 1995 .

[4]  Monica S. Lam,et al.  Optimizing the migration of virtual computers , 2002, OPSR.

[5]  Petr Jan Horn,et al.  Autonomic Computing: IBM's Perspective on the State of Information Technology , 2001 .

[6]  Baruch Schieber,et al.  Guaranteeing fair service to persistent dependent tasks , 1995, SODA '95.

[7]  David R. Cheriton,et al.  Borrowed-virtual-time (BVT) scheduling: supporting latency-sensitive threads in a general-purpose scheduler , 1999, OPSR.

[8]  Banu Özden,et al.  The Eclipse Operating System: Providing Quality of Service via Reservation Domains , 1998, USENIX ATC.

[9]  Michael B. Jones,et al.  CPU reservations and time constraints: efficient, predictable scheduling of independent activities , 1997, SOSP.

[10]  Stavros Harizopoulos,et al.  Affinity Scheduling in Staged Server Architectures , 2001 .

[11]  Prashant J. Shenoy,et al.  Deadline fair scheduling: bridging the theory and practice of proportionate pair scheduling in multiprocessor systems , 2001, Proceedings Seventh IEEE Real-Time Technology and Applications Symposium.

[12]  James H. Anderson,et al.  Integrating a periodic and recurrent tasks on fair-scheduled multiprocessors , 2002, Proceedings 14th Euromicro Conference on Real-Time Systems. Euromicro RTS 2002.

[13]  Sanjoy K. Baruah,et al.  Scheduling periodic tasks on uniform multiprocessors , 2000, Proceedings 12th Euromicro Conference on Real-Time Systems. Euromicro RTS 2000.

[14]  Sanjoy K. Baruah,et al.  Dynamic- and Static-priority Scheduling of Recurring Real-time Tasks , 2004, Real-Time Systems.

[15]  Sanjoy K. Baruah,et al.  The case for fair multiprocessor scheduling , 2003, Proceedings International Parallel and Distributed Processing Symposium.

[16]  Carl A. Waldspurger,et al.  Lottery and stride scheduling: flexible proportional-share resource management , 1995 .

[17]  Sanjoy K. Baruah,et al.  Multiprocessor fixed-priority scheduling with restricted interprocessor migrations , 2003, 15th Euromicro Conference on Real-Time Systems, 2003. Proceedings..

[18]  James W. Layland,et al.  Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment , 1989, JACM.

[19]  Sanjoy K. Baruah,et al.  Proportionate progress: a notion of fairness in resource allocation , 1993, STOC '93.