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 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.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.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).
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).
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).
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).
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).
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).
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.
Author information
Authors and Affiliations
Corresponding author
Rights 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
Issue Date:
DOI: https://doi.org/10.1007/s10951-006-7040-0