Abstract
The elastic task model enables the adaptation of systems of recurrent real-time tasks under uncertain or potentially overloaded conditions. A range of permissible periods is specified for each task in this model; during run-time a period is selected for each task from the specified range of permissible periods to ensure schedulability in a manner that maximizes the quality of provided service. This model was originally defined for sequential tasks executing upon a preemptive uniprocessor platform; here we consider the implementation of sequential tasks upon multiprocessor platforms. We define algorithms for scheduling sequential elastic tasks under the global and partitioned paradigms of multiprocessor scheduling for both dynamic and static-priority tasks, and we provide an extensive simulation-based comparison of the different approaches.
Similar content being viewed by others
References
Audsley N, Burns A, Richardson M, Tindell K, Wellings A (1993) Applying new scheduling theory to static priority preemptive scheduling. Softw Eng J 8(5):285–292
Baruah S (2004) Optimal utilization bounds for the fixed-priority scheduling of periodic task systems on identical multiprocessors. IEEE Trans Comput 53(6):781–784
Baruah S, Cohen N, Plaxton G, Varvel D (1996) Proportionate progress: a notion of fairness in resource allocation. Algorithmica 15(6):600–625
Bastoni A, Brandenburg B, Anderson J (2010) An empirical comparison of global, partitioned, and clustered multiprocessor real-time schedulers. In: Proceedings of the Real-Time Systems Symposium, pp. 14–24. IEEE Computer Society Press, San Diego
Bertogna M, Cirinei M, Lipari G (2005) New schedulability tests for real-time tasks sets scheduled by deadline monotonic on multiprocessors. In: Proceedings of the 9th International Conference on Principles of Distributed Systems. IEEE Computer Society Press, Pisa
Burns A, Davis RI (2017) A survey of research into mixed criticality systems. ACM Comput Surv 50(6):82:1–82:37. https://doi.org/10.1145/3131347
Buttazzo GC, Lipari G, Abeni L (1998) Elastic task model for adaptive rate control. In: IEEE real-time systems symposium (RTSS)
Buttazzo GC, Lipari G, Caccamo M, Abeni L (2002) Elastic scheduling for flexible workload management. IEEE Trans Comput 51(3):289–302. https://doi.org/10.1109/12.990127
Caccamo M, Buttazzo G, Sha L (2000) Elastic feedback control. In: Proceedings 12th Euromicro conference on real-time systems. Euromicro RTS 2000, pp. 121–128. https://doi.org/10.1109/EMRTS.2000.853999
Carpenter J, Funk S, Holman P, Srinivasan A, Anderson J, Baruah S (2003) A categorization of real-time multiprocessor scheduling problems and algorithms. In: JYT Leung (ed.) Handbook of scheduling: algorithms, models, and performance analysis. CRC Press LLC
Chantem T, Hu X, Lemmon M (2009) Generalized elastic scheduling for real-time tasks. IEEE Trans Comput 58(4):480–495. https://doi.org/10.1109/TC.2008.175
Devi U, Anderson J (2005) Tardiness bounds for global EDF scheduling on a multiprocessor. In: Proceedings of the IEEE real-time systems symposium, pp. 330–341. IEEE Computer Society Press, Miami
Dhall S (1977) Scheduling periodic time-critical jobs on single processor and multiprocessor systems. PhD thesis, Department of Computer Science, The University of Illinois at Urbana-Champaign
Dhall SK, Liu CL (1978) On a real-time scheduling problem. Oper Res 26:127–140
Emberson P, Stafford R, Davis R (2010) Techniques for the synthesis of multiprocessor tasksets. WATERS’10
Gill C, Orr J, Harris S (2018) Supporting graceful degradation through elasticity in mixed-criticality federated scheduling. In: Proceedings of the 6th international workshop on mixed criticality systems (WMC)
Goossens J, Funk S, Baruah S (2003) Priority-driven scheduling of periodic task systems on multiprocessors. Real Time Syst 25(2–3):187–205
Hamdaoui M, Ramanathan P (1995) A dynamic priority assignment technique for streams with (m, k)-firm deadlines. IEEE Trans Comput 44(12):1443–1451
Horn W (1974) Some simple scheduling algorithms. Naval Res Logist Q 21:177–185
Johnson D (1974) Fast algorithms for bin packing. J Comput Syst Sci 8(3):272–314
Johnson DS (1973) Near-optimal bin packing algorithms. PhD thesis, Department of Mathematics, Massachusetts Institute of Technology
Joseph M, Pandya P (1986) Finding response times in a real-time system. Comput J 29(5):390–395
Lee J, Phan KM, Gu X, Lee J, Easwaran A, Shin I, Lee I (2014) MC-fluid: fluid model-based mixed-criticality scheduling on multiprocessors. In: Real-time systems symposium (RTSS), 2014 IEEE, pp. 41–52
Leontyev H, Anderson J (2010) Generalized tardiness bounds for global multiprocessor scheduling. Real Time Systems
Liu C, Layland J (1973) Scheduling algorithms for multiprogramming in a hard real-time environment. J ACM 20(1):46–61
Lopez JM, Diaz JL, Garcia DF (2004) Utilization bounds for EDF scheduling on real-time multiprocessor systems. Real-Time Syst 28(1):39–68
McNaughton R (1959) Scheduling with deadlines and loss functions. Manage Sci 6:1–12
Orr J, Baruah S (2019) Multiprocessor scheduling of elastic tasks. In: Proceedings of the 27th international conference on real-time networks and systems, RTNS ’19, pp 133–142. Association for Computing Machinery, New York. https://doi.org/10.1145/3356401.3356403
Orr J, Gill C, Agrawal K, Baruah S, Cianfarani C, Ang P, Wong C (2018) Elasticity of workloads and periods of parallel real-time tasks. In: Proceedings of the 26th international conference on real-time networks and systems, RTNS’18, pp 61–71. ACM, New York. https://doi.org/10.1145/3273905.3273915
Orr J, Gill C, Agrawal K, Li J, Baruah S (2019) Elastic scheduling for parallel real-time systems. Leibniz Trans Embedded Syst 6(1), 05–1–05:14. https://doi.org/10.4230/LITES-v006-i001-a005. https://ojs.dagstuhl.de/index.php/lites/article/view/LITES-v006-i001-a005
Vestal S (2007) Preemptive scheduling of multi-criticality systems with varying degrees of execution time assurance. In: Proceedings of the Real-Time Systems Symposium, pp. 239–243. IEEE Computer Society Press, Tucson
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
This research was supported in part by NSF grants CSR-1911460 Medium “Resource Efficient Implementation of Mixed-Criticality Systems,” CSR-1814739 Small “Dynamically Customizable Safety Critical Embedded Systems,” and CPS-1932530 “Mitigation Strategies for Enhancing Performance while Maintaining Viability in Cyber-physical Systems.”
Rights and permissions
About this article
Cite this article
Orr, J., Baruah, S. Algorithms for implementing elastic tasks on multiprocessor platforms: a comparative evaluation. Real-Time Syst 57, 227–264 (2021). https://doi.org/10.1007/s11241-020-09358-9
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11241-020-09358-9