Skip to main content
Log in

Minimizing migrations in fair multiprocessor scheduling of persistent tasks

  • Published:
Journal of Scheduling Aims and scope Submit manuscript

Abstract

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 nm and for r = 0). For any d ≥ 1, we show a schedule that achieves a migration ratio less than r(mr)/(n(q(d − 1)) + ∊ > 0; namely, it asymptotically requires r(mr) 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(mr)/(nqd) on the migration ratio. We also give a more complicated schedule that matches the lower bound for a special case when 2qd and m = 2r. Our algorithms can be extended to the dynamic case in which jobs enter and leave the system over time.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  • Anderson J. and A. Srinivasan, “Towards a More Efficient and Flexible Pfair Scheduling Framework,” 20th IEEE Real-time Systems Symposium (RTSS), pp. 46–50 (1999).

  • Baruah, S. K., “Scheduling Periodic Tasks on Uniform Multiprocessors,” 12th Euromicro Conference on Real-Time Systems (Euromicro-RTS), 7–14 (2000).

  • Baruah, S. K., “Dynamic- and static-priority scheduling of recurring real-time tasks,” Real-time Systems, 24(1), 93–128 (2003).

    Article  Google Scholar 

  • Baruah, S. and J. Carpenter, “Multiprocessor fixed-priority scheduling with restricted interprocessor migrations,” 15th Euromicro Conference on Real-Time Systems (Euromicro-RTS) 2003.

  • Baruah, S., N. Cohen, G. Plaxton, and D. Varvel, “Proportionate progress: A notion of fairness in resource allocation,” Algorithmica 15(6), 600–625 (1996).

    Article  Google Scholar 

  • Baruah, S., J. Gehrke, and G. Plaxton, “Fast scheduling of periodic tasks on multiple resources,” Int. Parallel Processing Symposium (IPPS), pp. 280–288 (1995).

  • Baruah, S., J. Gehrke, G. Plaxton, I. Stoica, H. Abdel-Wahab, and K. Jeffay, “Fair on-line scheduling of a dynamic set of tasks on a single resource,” Information Processing Letters, 64(1), 43–51 (1997).

    Article  Google Scholar 

  • Bruno, J., E. Gabber, B. Özden, and A. Silberschatz, “The Eclipse Operating System: Providing Quality of Service via Reservation Domains,” USENIX Annual Technical Conference, pp. 235–246 (1998).

  • Bar-Noy, A., A. Mayer, B. Schieber, and M. Sudan, “Guaranteeing fair service to persistent dependent tasks,” SIAM J. on Computing, 24, 1168–1189 (1998).

    Article  Google Scholar 

  • Chandra, A., M. Adler, and P. J. Shenoy, “Deadline fair scheduling: Bridging the theory and Practice of Proportionate Fair Scheduling in Multiprocessor Systems,” IEEE Real Time Technology and Applications Symposium (RTAS), pp. 3–14 (2001).

  • Duda, K. J. and D. R. Cheriton, “Borrowed-virtual-time (BVT) scheduling: Supporting latency-sensitive threads in a general-purpose schedular, ”Symposium on Operating Systems Principles (SOSP), pp. 261–276 (1999).

  • Harizopoulos, S. and A. Ailamaki, “Affinity Scheduling in Staged Server Architectures,” Technical Report CMU-CS-02-113 (2002).

  • Autonomic computing: IBM's perspective on the state of information technology. http://www.research.ibm.com/autonomic/manifesto/.

  • Jones, M. B., D. Rosu, and M. C. Rosu, “CPU Reservations and time constraints: Efficient, predictable scheduling of independent activities,” Symposium on Operating Systems Principles (SOSP), pp. 198–211 (1997).

  • Liu, C. L., “Scheduling Algorithms for Hard-Real-Time Multiprogramming of a Single Processor,” JPL Space Program Summary, 2, 37–60 (1969).

    Google Scholar 

  • Liu, C. L. and J. W. Layland, “Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment. Journal of the ACM, 20(1), 46–61 (1973).

    Article  Google Scholar 

  • Sapuntzakis, C. P., R. Chandra, B. Pfaff, J. Chow, M. S. Lam, and M. Rosenblum, “Optimizing the Migration of Virtual Computers,” 5th Symp. on Operating Systems Design and Implementation (OSDI) 2002.

  • Srinivasan, A., P. Holman, and J. Anderson, “Integrating Aperiodic and Recurrent Tasks on Fair-scheduled Multiprocessors,” 14th Euromicro Conference on Real-Time Systems (Euromicro-RTS) 2002.

  • Srinivasan, A., P. Holman, J. H. Anderson, and S. Baruah, “The Case for Fair Multiprocessor Scheduling,” 11th International Workshop on Parallel and Distributed Real-Time Systems (WPDRTS) 2003.

  • Waldspurger, C. A. and W. E. Weihl, “Stride scheduling: Deterministic Proportional-Share Resource Mangement. Technical Memorandum MIT/LCS/TM-528, MIT Laboratory for Computer Science 1995.

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Tracy Kimbrel.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Kimbrel, T., Schieber, B. & Sviridenko, M. Minimizing migrations in fair multiprocessor scheduling of persistent tasks. J Sched 9, 365–379 (2006). https://doi.org/10.1007/s10951-006-7040-0

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10951-006-7040-0

Keywords

Navigation