Mixed-criticality federated scheduling for parallel real-time tasks

A mixed-criticality system comprises safety-critical and non-safety-critical tasks sharing a computational platform. Thus, different levels of assurance are required by different tasks in terms of real-time performance. As the computational demands of real-time tasks increase, tasks may require internal parallelism in order to complete within stringent deadlines. In this paper, we consider the problem of mixed-criticality scheduling of parallel real-time tasks and propose a novel mixed-criticality federated scheduling (MCFS) algorithm for parallel tasks modeled by a directed acyclic graph. MCFS is based on federated intuition for scheduling parallel real-time tasks. It strategically assigns cores and virtual deadlines to tasks to achieve good schedulability. For high-utilization tasks (utilization $$\ge $$≥1), we prove that MCFS provides a capacity augmentation bound of $$2+\sqrt{2}$$2+2 and $$(5+\sqrt{5})/2$$(5+5)/2 for dual- and multi-criticality, respectively. We show that MCFS has a capacity augmentation bound of $$11m/(3m-3)$$11m/(3m-3) for dual-criticality systems with both high- and low-utilization tasks. For high-utilization tasks, we further provide a MCFS-Improve algorithm that has the same bound but can admit many more task sets in practice. Results of numerical experiments show that MCFS-Improve significantly improves over MCFS for many different workload settings. We also present an implementation of a MCFS runtime system in Linux that supports parallel programs written in OpenMP. Our implementation provides graceful degradation and recovery features. We conduct empirical experiments to demonstrate the practicality of our MCFS approach.

[1]  Chenyang Lu,et al.  Outstanding Paper Award: Analysis of Global EDF for Parallel Tasks , 2013, 2013 25th Euromicro Conference on Real-Time Systems.

[2]  Sanjoy K. Baruah,et al.  Mixed-criticality scheduling on multiprocessors , 2013, Real-Time Systems.

[3]  Arvind Easwaran,et al.  Demand-Based Scheduling of Mixed-Criticality Sporadic Tasks on One Processor , 2013, 2013 IEEE 34th Real-Time Systems Symposium.

[4]  James H. Anderson,et al.  Supporting Soft Real-Time Parallel Applications on Multicore Processors , 2012, 2012 IEEE International Conference on Embedded and Real-Time Computing Systems and Applications.

[5]  Geoffrey Nelissen,et al.  Techniques Optimizing the Number of Processors to Schedule Multi-threaded Tasks , 2012, 2012 24th Euromicro Conference on Real-Time Systems.

[6]  Sanjoy K. Baruah,et al.  A Generalized Parallel Task Model for Recurrent Real-time Processes , 2012, 2012 IEEE 33rd Real-Time Systems Symposium.

[7]  Chenyang Lu,et al.  Mixed-Criticality Federated Scheduling for Parallel Real-Time Tasks , 2016, RTAS.

[8]  Sanjoy K. Baruah,et al.  The Federated Scheduling of Systems of Mixed-Criticality Sporadic DAG Tasks , 2016, 2016 IEEE Real-Time Systems Symposium (RTSS).

[9]  Insik Shin,et al.  Resource Efficient Isolation Mechanisms in Mixed-Criticality Scheduling , 2015, 2015 27th Euromicro Conference on Real-Time Systems.

[10]  Sanjoy K. Baruah,et al.  Semantics-preserving implementation of multirate mixed-criticality synchronous programs , 2012, RTNS '12.

[11]  Ragunathan Rajkumar,et al.  Parallel scheduling for cyber-physical systems: Analysis and case study on a self-driving car , 2013, 2013 ACM/IEEE International Conference on Cyber-Physical Systems (ICCPS).

[12]  Sanjoy K. Baruah Schedulability Analysis for a General Model of Mixed-Criticality Recurrent Real-Time Tasks , 2016, 2016 IEEE Real-Time Systems Symposium (RTSS).

[13]  C. Siva Ram Murthy,et al.  A New Approach for Scheduling of Parallelizable Tasks in Real-Time Multiprocessor Systems , 1998, Real-Time Systems.

[14]  Chenyang Lu,et al.  Multi-core Real-Time Scheduling for Generalized Parallel Task Models , 2011, RTSS.

[15]  Heejo Lee,et al.  Optimal Scheduling for Real-Time Parallel Tasks , 2006, IEICE Trans. Inf. Syst..

[16]  Insup Lee,et al.  MC-Fluid: Fluid Model-Based Mixed-Criticality Scheduling on Multiprocessors , 2014, 2014 IEEE Real-Time Systems Symposium.

[17]  Sudarshan K. Dhall,et al.  On a Real-Time Scheduling Problem , 1978, Oper. Res..

[18]  S. Vestal Preemptive Scheduling of Multi-criticality Systems with Varying Degrees of Execution Time Assurance , 2007, RTSS 2007.

[19]  Sanjoy K. Baruah,et al.  Certification-cognizant scheduling of tasks with pessimistic frequency specification , 2012, 7th IEEE International Symposium on Industrial Embedded Systems (SIES'12).

[20]  Jinkyu Lee,et al.  Global EDF Schedulability Analysis for Synchronous Parallel Tasks on Multicore Platforms , 2013, 2013 25th Euromicro Conference on Real-Time Systems.

[21]  Ragunathan Rajkumar,et al.  Mixed-Criticality Task Synchronization in Zero-Slack Scheduling , 2011, 2011 17th IEEE Real-Time and Embedded Technology and Applications Symposium.

[22]  Alan Burns,et al.  Response-Time Analysis for Mixed Criticality Systems , 2011, 2011 IEEE 32nd Real-Time Systems Symposium.

[23]  Lui Sha,et al.  Handling mixed-criticality in SoC-based real-time embedded systems , 2009, EMSOFT '09.

[24]  Nuno Pereira,et al.  Static-Priority Scheduling over Wireless Networks with Multiple Broadcast Domains , 2007, RTSS 2007.

[25]  Marius Bozga,et al.  Mixed Critical Earliest Deadline First , 2013, 2013 25th Euromicro Conference on Real-Time Systems.

[26]  Sebastian Stiller,et al.  Feasibility Analysis in the Sporadic DAG Task Model , 2013, 2013 25th Euromicro Conference on Real-Time Systems.

[27]  Wang Yi,et al.  Bounding and shaping the demand of generalized mixed-criticality sporadic task systems , 2013, Real-Time Systems.

[28]  C. Gill,et al.  Analysis of Global EDF for Parallel Tasks , 2013 .

[29]  Liliana Cucu-Grosjean,et al.  Integrating job parallelism in real-time scheduling theory , 2008, Inf. Process. Lett..

[30]  Dionisio de Niz,et al.  Partitioned scheduling of multi-modal mixed-criticality real-time systems on multiprocessor platforms , 2014, 2014 IEEE 19th Real-Time and Embedded Technology and Applications Symposium (RTAS).

[31]  Sanjoy K. Baruah,et al.  Towards the Design of Certifiable Mixed-criticality Systems , 2010, 2010 16th IEEE Real-Time and Embedded Technology and Applications Symposium.

[32]  Chenyang Lu,et al.  A real-time scheduling service for parallel tasks , 2013, 2013 IEEE 19th Real-Time and Embedded Technology and Applications Symposium (RTAS).

[33]  Sanjoy K. Baruah,et al.  MC-Fluid: Simplified and Optimally Quantified , 2015, 2015 IEEE Real-Time Systems Symposium.

[34]  Alan Burns,et al.  A survey of hard real-time scheduling for multiprocessor systems , 2011, CSUR.

[35]  Risat Mahmud Pathan,et al.  Schedulability Analysis of Mixed-Criticality Systems on Multiprocessors , 2012, 2012 24th Euromicro Conference on Real-Time Systems.

[36]  Björn Andersson,et al.  Analyzing Global-EDF for Multiprocessor Scheduling of Parallel Tasks , 2012, OPODIS.

[37]  Wang Yi,et al.  Effective and Efficient Scheduling of Certifiable Mixed-Criticality Sporadic Task Systems , 2011, 2011 IEEE 32nd Real-Time Systems Symposium.

[38]  Nan Guan,et al.  EDF-VD Scheduling of Mixed-Criticality Systems with Degraded Quality Guarantees , 2016, 2016 IEEE Real-Time Systems Symposium (RTSS).

[39]  Zonghua Gu,et al.  Partitioned multiprocessor scheduling of mixed-criticality parallel jobs , 2014, 2014 IEEE 20th International Conference on Embedded and Real-Time Computing Systems and Applications.

[40]  Sebastian Stiller,et al.  Feasibility Tests for Recurrent Real-Time Tasks in the Sporadic DAG Model , 2012, ArXiv.

[41]  Shinpei Kato,et al.  Gang EDF Scheduling of Parallel Task Systems , 2009, 2009 30th IEEE Real-Time Systems Symposium.

[42]  Robert I. Davis,et al.  Mixed Criticality Systems - A Review , 2015 .

[43]  Dakai Zhu,et al.  Service guarantee exploration for mixed-criticality systems , 2014, 2014 IEEE 20th International Conference on Embedded and Real-Time Computing Systems and Applications.

[44]  K Lakshmanan,et al.  Scheduling Parallel Real-Time Tasks on Multi-core Processors , 2010, 2010 31st IEEE Real-Time Systems Symposium.

[45]  Arun Prakash,et al.  Real-time system support for hybrid structural simulation , 2014, 2014 International Conference on Embedded Software (EMSOFT).

[46]  Chenyang Lu,et al.  Analysis of Federated and Global Scheduling for Parallel Real-Time Tasks , 2014, 2014 26th Euromicro Conference on Real-Time Systems.

[47]  Sanjoy K. Baruah,et al.  The Preemptive Uniprocessor Scheduling of Mixed-Criticality Implicit-Deadline Sporadic Task Systems , 2012, 2012 24th Euromicro Conference on Real-Time Systems.