Abstract
Now that multicore microprocessors have become a commodity, it is natural to think about employing them in all kinds of computing, including high-reliability embedded real-time systems. Appealing aspects of this development include the ability to process more instructions per second and more instructions per watt. However, not all problems are amenable to parallel decomposition, and for those that are, designing a correct scalable solution can be difficult. If there are deadlines or other hard timing constraints the difficulty becomes much greater.
This paper reviews some of what is known about multiprocessor scheduling of task systems with deadlines, including recent advances in the analysis of arbitrary sporadic task systems under fixed-priority and earliest-deadline first scheduling polices. It also examines critically the foundations of these theoretical results, including assumptions about task independence and worst-case execution time estimates, with a view toward their practical applicability.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Abeni, L., Buttazzo, G.: Integrating multimedia applications in hard real-time systems. In: Proc. 19th IEEE Real-Time Systems Symposium, Madrid, Spain (December 1998)
Anderson, J., Srinivasan, A.: Mixed pfair/ERfair scheduling of asynchronous periodic tasks. In: Proc. 13th EuroMicro Conf. on Real-Time Systems, Delft, Netherlands, June 2001, pp. 76–85 (2001)
Andersson, B.: Global static-priority preemptive multiprocessor scheduling with utilization bound 38%. In: Baker, T.P., Bui, A., Tixeuil, S. (eds.) OPODIS 2008. LNCS, vol. 5401, pp. 73–88. Springer, Heidelberg (2008)
Andersson, B., Baruah, S., Jonsson, J.: Static-priority scheduling on multiprocessors. In: Proc. 22nd IEEE Real-Time Systems Symposium, London, UK, December 2001, pp. 193–202 (2001)
Baker, T.P.: Stack-based scheduling of real-time processes. Real-Time Systems 3(1), 67–100 (1991)
Baker, T.P.: An analysis of EDF scheduling on a multiprocessor. IEEE Trans. on Parallel and Distributed Systems 15(8), 760–768 (2005)
Baker, T.P.: An analysis of fixed-priority scheduling on a multiprocessor. Real Time Systems (2005)
Baker, T.P.: A comparison of global and partitioned EDF schedulability tests for multiprocessors. In: Int. Conf. on Real-Time and Network Systems, Poitiers, France, June 2006, pp. 119–127 (2006)
Baker, T.P., Baruah, S.K.: Sustainable multiprocessor scheduling of sporadic task systems. In: 21st Euromicro Conference on Real-Time Systems, ECRTS 2009, July 2009, pp. 141–150 (2009)
Baker, T.P., Cirinei, M.: Brute-force determination of multiprocessor schedulability for sets of sporadic hard-deadline tasks. In: Tovar, E., Tsigas, P., Fouchal, H. (eds.) OPODIS 2007. LNCS, vol. 4878, pp. 62–75. Springer, Heidelberg (2007)
Baruah, S.K.: Techniques for multiprocessor global schedulablity analysis. In: Proc. Real-Time Systems Symposium, December 2007, pp. 119–128. IEEE Computer Society Press, Los Alamitos (2007)
Baruah, S.K.: An improved EDF schedulability test for uniform multiprocessors. In: Proc. 16th IEEE Real-time and Embedded Technology and Applications Symposium (April 2010)
Baruah, S.K.: Schedulabilty analysis of global deadline-monotonic scheduling. Technical report, University of North Carolina, Dept. of Computer Science (2010)
Baruah, S.K., Burns, A.: Sustainable scheduling analysis. In: Proc. 27th IEEE Real-Time Systems Symposium (RTSS 2006), Rio de Janeiro, Brasil, December 2006, pp. 159–168 (2006)
Baruah, S.K., Cohen, N., Plaxton, C.G., Varvel, D.: Proportionate progress: a notion of fairness in resource allocation. Algorithmica 15, 600–625 (1996)
Bertogna, M., Cirinei, M., Lipari, G.: Improved schedulability analysis of EDF on multiprocessor platforms. In: Proc. 17th EuroMicro Conf. on Real-Time Systems, Palma de Mallorca, Spain, July 2005, pp. 209–218 (2005)
Bertogna, M., Cirinei, M., Lipari, G.: New schedulability tests for real-time task sets scheduled by deadline monotonic on multiprocessors. In: Anderson, J.H., Prencipe, G., Wattenhofer, R. (eds.) OPODIS 2005. LNCS, vol. 3974, pp. 306–321. Springer, Heidelberg (2006)
Bertogna, M., Cirinei, M., Lipari, G.: Schedulability analysis of global scheduling algorithms on multiprocessor platforms. IEEE Trans. on Parallel and Distributed Systems 20(4), 553–566 (2009)
Blagodurov, S., Zhuravlev, S., Lansiquot, S., Fedorova, A.: Addressing shared resource contention in multicore processors via scheduling. Technical report, Simon Fraser University (2009)
Block, A., Leontyev, H., Brandenburg, B., Anderson, J.H.: A flexible real-time locking protocol for multiprocessors, August 2007, pp. 47–56 (2007)
Brandenburg, B., Anderson, J.: A comparision of the M-PCP, D-PCP, and FMLP on LITMUSRT. In: Baker, T.P., Bui, A., Tixeuil, S. (eds.) OPODIS 2008. LNCS, vol. 5401, pp. 105–124. Springer, Heidelberg (2008)
Brandenburg, B., Calandrino, J.M., Anderson, J.H.: On the scalability of real-time scheduling algorithms on multicore platforms: A case study. In: Proc. 29th IEEE Real-Time Systems Symposium, December 2008, pp. 157–169 (2008)
Charles, J., Jassi, P., Ananth, N.S., Sadat, A., Fedorova, A.: Evaluation of the of the Intel Core i7 Turbo Boost feature. In: IEEE Workload Characterization Symposium, pp. 188–197 (2009)
Dhall, S.K., Liu, C.L.: On a real-time scheduling problem. Operations Research 26(1), 127–140 (1978)
Gai, P., Lipari, G., Natale, M.D.: Minimizing memory utilization of real-time task sets in single and multi-processor systems-on-a-chip. In: Proc. 22nd IEEE Real-Time Systems Symposium, December 2001, pp. 73–83 (2001)
Gai, P., Natale, M.D., Lipari, G., Ferrari, A., Gabellini, C., Marceca, P.: A comparison of MPCP and MSRP when sharing resources in the janus multiple-processor on a chip platform. In: Proc. 9th IEEE Real-Time and Embedded Technology and Applications Symposium, May 2003, pp. 189–198 (2003)
Goossens, J., Funk, S., Baruah, S.K.: Priority-driven scheduling of periodic task systems on multiprocessors. Real Time Systems 25(2-3), 187–205 (2003)
Guan, N., Gu, Z., Deng, Q., Gao, S., Yu, G.: Exact schedulability analysis for static-priority global multiprocessor scheduling using model-checking. In: Obermaisser, R., Nah, Y., Puschner, P., Rammig, F.J. (eds.) SEUS 2007. LNCS, vol. 4761. Springer, Heidelberg (2007)
Guan, N., Stigge, M., Yi, W., Yu, G.: Fixed-priority multiprocessor scheduling with Liu & Layland’s utilization bound. In: Proc. 16th IEEE Real-Time and Embedded Technology and Applications Symposium (April 2010)
Intel Corporation. Terra-scale computing program (2009), http://techresearch.intel.com/articles/Tera-Scale/1421.htm
Jansen, K., Porkolab, L.: Linear-time approximation schemes for scheduling malleable parallel tasks. In: Proceedings of the 10th Annual ACM-SIAM Symposium on Discrete Algorithms, pp. 490–498 (1999)
Kato, S., Yamasaki, N.: Portioned EDF-based scheduling on multiprocessors. In: Proc. 8th ACM International Conference on Embedded Software (EMSOFT 2008), pp. 139–148. ACM Press, New York (2008)
Li, Y., Suhendra, V., Liang, Y., Mitra, T., Roychoudhury, A.: Timing analysis of concurrent programs running on shared cache multi-cores, December 2009, pp. 57–67 (2009)
Liu, C.L., Layland, J.W.: Scheduling algorithms for multiprogramming in a hard real-time environment. Journal of the ACM 20(1), 46–61 (1973)
Lopez, J.M., Diaz, J.L., Garcia, D.F.: Minimum and maximum utilization bounds for multiprocessor rate monotonic scheduling. IEEE Trans. Parallel and Distributed Systems 15(7), 642–653 (2004)
Lopez, J.M., Garcia, M., Diaz, J.L., Garcia, D.F.: Worst-case utilization bound for EDF scheduling on real-time multiprocessor systems. In: Proc. 12th EuroMicro Conf. Real-Time Systems, pp. 25–33 (2000)
Lortz, V.B., Shin, K.G.: Semaphore queue priority assignment for real-time multiprocessor synchronization. IEEE Trans. Software Engineering 21(10), 834–844 (1995)
Lowney, G.: Why Intel is designing multi-core processors. In: SPAA 2006: Proc. 18th ACM symposium on Parallelism in Algorithms and Architectures, pp. 113–113. ACM, New York (2006)
Lundberg, L.: Analyzing fixed-priority global multiprocessor scheduling. In: Proc. 8th IEEE Real-Time and Embedded Technology and Applications Symposium, San Jose, CA, USA, pp. 145–153. IEEE Computer Society, Los Alamitos (2002)
Rajkumar, R., Sha, L., Lehoczky, J.P.: Real-time synchronization protocols for multiprocessors. In: Proc. 9th IEEE Real-Time Systems Symposium, pp. 259–269 (1988)
Ras, J., Cheng, A.M.K.: An evaluation of the dynamic and static multiprocessor priority ceiling protocol and the multiprocessor stack resource policy in an SMP system. In: Proc. 15th IEEE Real-Time and Embedded Technology and Applications Symposium, pp. 13–22 (2009)
Santiprabhob, C.S.C.P., Baker, T.P.: Reducing priority inversion in interprocessor synchronization on a fixed-priority bus. Technical report, Florida State University, Dept. of Computer Science, Tallahassee, FL (August 1991)
Santiprabhob, P., Chen, C.S., Baker, T.P.: Ada run-time kernel: The implementation. In: Proceedings of the 1st Software Engineering Research Forum, November 1991, pp. 89–98 (1991)
Sprunt, B., Sha, L., Lehoczky, L.: Aperiodic task scheduling for hard real-time systems. Real-Time Systems 1(1), 27–60 (1989)
Srinivasan, A., Baruah, S.: Deadline-based scheduling of periodic task systems on multiprocessors. Information Processing Letters 84, 93–98 (2002)
Stankovic, J.A., Spuri, M., Natale, M.D., Buttazzo, G.: Implications of classical scheduling results for real-time systems. IEEE Computer 28, 16–25 (1994)
Tuduce, I., Majo, Z., Gauch, A., Chen, B., Gross, T.R.: Asymmetries in multi-core systems – or why we need better performance measurement units. In: Exert 2010: The Exascale Evaluation and Research Techniques Workshop (March 2010)
Xu, J.: Multiprocessor scheduling of processes with release times, deadlines, precedence, and exclusion relations. IEEE Trans. Softw. Eng. 19(2), 139–154 (1993)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Baker, T.P. (2010). What to Make of Multicore Processors for Reliable Real-Time Systems?. In: Real, J., Vardanega, T. (eds) Reliable Software Technologiey – Ada-Europe 2010. Ada-Europe 2010. Lecture Notes in Computer Science, vol 6106. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-13550-7_1
Download citation
DOI: https://doi.org/10.1007/978-3-642-13550-7_1
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-13549-1
Online ISBN: 978-3-642-13550-7
eBook Packages: Computer ScienceComputer Science (R0)