Springer Nature is making SARS-CoV-2 and COVID-19 research free. View research | View latest news | Sign up for updates

Cluster scheduling for real-time systems: utilization bounds and run-time overhead

  • 216 Accesses

  • 6 Citations

Abstract

Cluster scheduling, where processors are grouped into clusters and the tasks that are allocated to one cluster are scheduled by a global scheduler, has attracted attention in multiprocessor real-time systems research recently. In this paper, assuming that an optimal global scheduler is adopted within each cluster, we investigate the worst-case utilization bounds for cluster scheduling with different task allocation/partitioning heuristics. First, we develop a lower limit on the utilization bounds for cluster scheduling with any reasonable task allocation scheme. Then, the lower limit is shown to be the exact utilization bound for cluster scheduling with the worst-fit task allocation scheme. For other task allocation heuristics (such as first-fit, best-fit, first-fit decreasing, best-fit decreasing and worst-fit decreasing), higher utilization bounds are derived for systems with both homogeneous clusters (where each cluster has the same number of processors) and heterogeneous clusters (where clusters have different number of processors). In addition, focusing on an efficient optimal global scheduler, namely the boundary-fair (Bfair) algorithm, we propose a period-aware task allocation heuristic with the goal of reducing the scheduling overhead (e.g., the number of scheduling points, context switches and task migrations). Simulation results indicate that the percentage of task sets that can be scheduled is significantly improved under cluster scheduling even for small-size clusters, compared to that of the partitioned scheduling. Moreover, when comparing to the simple generic task allocation scheme (e.g., first-fit), the proposed period-aware task allocation heuristic markedly reduces the scheduling overhead of cluster scheduling with the Bfair scheduler.

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

References

  1. Andersson B, Jonsson J (2003) The utilization bounds of partitioned and pfair static-priority scheduling on multiprocessors are 50%. In: Proc of the 15th Euromicro conference on real-time systems, pp 33–40

  2. Anderson J, Srinivasan A (2000a) Early-release fair scheduling. In: Proc of the 12th Euromicro conference on real-time systems, pp 35–43

  3. Anderson J, Srinivasan A (2000b) Pfair scheduling: Beyond periodic task systems. In: Proc of the 7th int’l workshop on real-time computing systems and applications, pp 297–306

  4. Anderson J, Srinivasan A (2001) Mixed pfair/erfair scheduling of asynchronous periodic tasks. In: Proc of the 13th Euromicro conference on real-time systems, pp 76–85

  5. Andersson B, Tovar E (2006) Multiprocessor scheduling with few preemptions. In: Proc of the IEEE int’l conference on embedded and real-time computing systems and applications, pp 322–334

  6. Andersson B, Baruah S, Jonsson J (2001) Static-priority scheduling on multiprocessors. In: Proc of the 22th IEEE real-time systems symposium, pp 193–202

  7. Andersson B, Bletsas K, Baruah S (2008) Scheduling arbitrary-deadline sporadic task systems on multiprocessors. In: Proc of the IEEE real-time systems symposium, pp 385–394

  8. Baker T (2003) Multiprocessor edf and deadline monotonic schedulability analysis. In: Proc. of the 24th IEEE real-time systems symposium, pp 120–129

  9. Baruah S (2007) Techniques for multiprocessor global schedulability analysis. In: Proc of the IEEE real-time systems symposium, pp 119–128

  10. Baruah S, Baker T (2008) Schedulability analysis of global edf. Real-Time Syst 38(3):223–235

  11. Baruah SK, Gehrke J, Plaxton CG (1995) Fast scheduling of periodic tasks on multiple resources. In: Proc of the international parallel processing symposium, pp 280–288

  12. Baruah SK, Cohen NK, Plaxton CG, Varel DA (1996) Proportionate progress: a notion of fairness in resource allocation. Algorithmica 15(6):600–625

  13. Bletsas K, Andersson B (2009) Preemption-light multiprocessor scheduling of sporadic tasks with high utilisation bound. In: Proc of the IEEE real-time systems symposium, pp 447–456

  14. Burchard A, Liebeherr J, Oh Y, Son SH (1996) New strategies for assigning real-time tasks to multiprocessor systems. IEEE Trans Comput 44(12):1429–1442

  15. Calandrino JM, Anderson JH, Baumberger DP (2007) A hybrid real-time scheduling approach for large-scale multicore platforms. In: Proc of the Euromicro conference on real-time systems, pp 247–258

  16. Cho H, Ravindran B, Jensen E (2006) An optimal real-time scheduling algorithm for multiprocessors. In: Proc of the IEEE real-time systems symposium, pp 101–110

  17. Cho H, Ravindran B, Jensen ED (2010) T-l plane-based real-time scheduling for homogeneous multiprocessors. J Parallel Distrib Comput 70(3):225–236

  18. Darera VN (2006) Bounds for scheduling in non-identical uniform multiprocessor systems. Master’s thesis, Indian Institute of Science, India

  19. Davis R, Burns A (2009a) Priority assignment for global fixed priority pre-emptive scheduling in multiprocessor real-time systems. In: Proc of the IEEE real-time systems symposium, pp 398–409

  20. Davis R, Burns A (2009b) A survey of hard real-time scheduling algorithms and schedulability analysis techniques for multiprocessor systems. Tech Rep YCS-2009-443, University of York, Department of Computer Science

  21. Dertouzos ML, Mok AK (1989) Multiprocessor on-line scheduling of hard-real-time tasks. IEEE Trans Softw Eng 15(12):1497–1505

  22. Devi U, Anderson J (2005) Tardiness bounds under global edf scheduling on a multiprocessor. In: Proc of the 26th IEEE real-time systems symposium, pp 330–341

  23. Dhall SK, Liu CL (1978) On a real-time scheduling problem. Oper Res 26(1):127–140

  24. Funaoka K, Kato S, Yamasaki N (2008) Work-conserving optimal real-time scheduling on multiprocessors. In: Proc of the Euromicro conference on real-time systems, pp 13–22

  25. Goossens J, Funk S, Baruah S (2003) Priority-driven scheduling of periodic task systems on multiprocessors. Real-Time Syst 25(2-3):187–205

  26. Guan N, Stigge M, Yi W, Yu G (2009) New response time bounds for fixed priority multiprocessor scheduling. In: Proc of the IEEE real-time systems symposium, pp 387–397

  27. Guan N, Stigge M, Yi W, Yu G (2010) Fixed-priority multiprocessor scheduling with Liu & Layland’s utilization bound. In: Proc of the 16th IEEE real-time and embedded technology and applications symposium, pp 165–174

  28. Herbert S, Marculescu D (2007) Analysis of dynamic voltage/frequency scaling in chip-multiprocessors. In: Proc of Int’l symposium on low power electronics and design, pp 38–43

  29. Holman P, Anderson J (2001) Guaranteeing pfair supertasks by reweighting. In: Proc of the 22nd IEEE real-time systems symposium, pp 203–212

  30. Kato S, Yamasaki N (2007) Real-time scheduling with task splitting on multiprocessors. In: Proc of the IEEE int’l conference on embedded and real-time computing systems and applications, pp 441–450

  31. Kato S, Yamasaki N (2008) Portioned edf-based scheduling on multiprocessors. In: Proc of the 8th ACM int’l conference on embedded software, pp 139–148

  32. Kato S, Funaoka K, Yamasaki N (2009) Semi-partitioned scheduling of sporadic task systems on multiprocessors. In: Proc of the 21th Euromicro conference on real-time systems, pp 249–258

  33. Lauzac S, Melhem R, Mossé D (2003) An improved rate-monotonic admission control and its applications. IEEE Trans Comput 52:337–350

  34. Levin G, Funk S, Sadowski C, Pye I, Brandt S (2010) Dp-fair: a simple model for understanding optimal multiprocessor scheduling. In: Proc of the Euromicro conference on real-time systems, pp 3–13

  35. Liu JW (2000) Real-time systems. Prentice Hall/PTR, New York

  36. Liu CL, Layland JW (1973) Scheduling algorithms for multiprogramming in a hard real-time environment. J ACM 20(1):46–61

  37. Liu D, Lee YH (2004) Pfair scheduling of periodic tasks with allocation constraints on multiple processors. In: Proc of the 18th int’l parallel and distributed processing symposium, pp 119–126

  38. Lopez J, Garcia M, Diaz J, Garcia D (2000) Worst-case utilization bound for edf scheduling on real-time multiprocessor systems. In: Prof of the 12th Euromicro conference on real-time systems, pp 25–33

  39. Lopez J, Diaz J, Garcia D (2001) Minimum and maximum utilization bounds for multiprocessor rm scheduling. In: Proc. of the 13th Euromicro conference on real-time systems, pp 67–75

  40. Lopez J, Diaz J, Garcia D (2004) Utilization bound for edf scheduling on real-time multiprocessor systems. Real-Time Syst 28(1):39–68

  41. Moir M, Ramamurthy S (1999) Pfair scheduling of fixed and migrating tasks on multiple resources. In: Proc. of the 20th IEEE real-time systems symposium, pp 294–303

  42. Oh D, Baker T (1998) Utilization bound for n-processor rate monotone scheduling with stable processor assignment. Real-Time Syst 15(2):183–193

  43. Qi X, Zhu D (2008) Power management for real-time embedded systems on block-partitioned multicore platforms. In: Proc of the int’l conference on embedded software and systems, pp 110–117

  44. Shin I, Easwaran A, Lee I (2008) Hierarchical scheduling framework for virtual clustering of multiprocessors. In: Proc of the 20th Euromicro conference on real-time systems, pp 181–190

  45. Zhu D, Mossé D, Melhem R (2003) Periodic multiple resource scheduling problem: how much fairness is necessary. In: Proc of the 24th IEEE real-time systems symposium, pp 142–151

  46. Zhu D, Qi X, Mossé D, Melhem R (2009) An optimal boundary-fair scheduling algorithm for multiprocessor real-time systems. Tech Rep CS-TR-2009-005, Dept of CS, Univ of Texas at San Antonio

Download references

Author information

Correspondence to Dakai Zhu.

Rights and permissions

Reprints and Permissions

About this article

Cite this article

Qi, X., Zhu, D. & Aydin, H. Cluster scheduling for real-time systems: utilization bounds and run-time overhead. Real-Time Syst 47, 253–284 (2011). https://doi.org/10.1007/s11241-011-9121-1

Download citation

Keywords

  • Real-time systems
  • Multiprocessors
  • Cluster scheduling
  • Utilization bound
  • Bfair algorithm
  • Scheduling overhead