Response-Time Analysis of Limited-Preemptive Parallel DAG Tasks Under Global Scheduling

Most recurrent real-time applications can be modeled as a set of sequential code segments (or blocks) that must be (repeatedly) executed in a specific order. This paper provides a schedulability analysis for such systems modeled as a set of parallel DAG tasks executed under any limited-preemptive global job-level fixed priority scheduling policy. More precisely, we derive response-time bounds for a set of jobs subject to precedence constraints, release jitter, and execution-time uncertainty, which enables support for a wide variety of parallel, limited-preemptive execution models (e.g., periodic DAG tasks, transactional tasks, generalized multi-frame tasks, etc.). Our analysis explores the space of all possible schedules using a powerful new state abstraction and state-pruning technique. An empirical evaluation shows the analysis to identify between 10 to 90 percentage points more schedulable task sets than the state-of-the-art schedulability test for limited-preemptive sporadic DAG tasks. It scales to systems of up to 64 cores with 20 DAG tasks. Moreover, while our analysis is almost as accurate as the state-of-the-art exact schedulability test based on model checking (for sequential non-preemptive tasks), it is three orders of magnitude faster and hence capable of analyzing task sets with more than 60 tasks on 8 cores in a few seconds.

[1]  Geoffrey Nelissen,et al.  A Response-Time Analysis for Non-Preemptive Job Sets under Global Scheduling , 2018, ECRTS.

[2]  Rodolfo Pellizzoni,et al.  Schedulability analysis of global memory-predictable scheduling , 2014, 2014 International Conference on Embedded Software (EMSOFT).

[3]  José Carlos Fonseca,et al.  Response time analysis of sporadic DAG tasks under partitioned scheduling , 2016, 2016 11th IEEE Symposium on Industrial Embedded Systems (SIES).

[4]  Mitra Nasri,et al.  An Exact and Sustainable Analysis of Non-preemptive Scheduling , 2017, 2017 IEEE Real-Time Systems Symposium (RTSS).

[5]  Eduardo Tovar,et al.  An exact schedulability test for global FP using state space pruning , 2015, RTNS.

[6]  Giorgio C. Buttazzo,et al.  Measuring the Performance of Schedulability Tests , 2005, Real-Time Systems.

[7]  Jun Xiao,et al.  Schedulability Analysis of Non-preemptive Real-Time Scheduling for Multicore Processors with Shared Caches , 2017, 2017 IEEE Real-Time Systems Symposium (RTSS).

[8]  Theodore P. Baker,et al.  Brute-Force Determination of Multiprocessor Schedulability for Sets of Sporadic Hard-Deadline Tasks , 2007, OPODIS.

[9]  Sanjoy K. Baruah,et al.  The Non-preemptive Scheduling of Periodic Tasks upon Multiprocessors , 2006, Real-Time Systems.

[10]  Mitra Nasri,et al.  An Exact Schedulability Test for Non-Preemptive Self-Suspending Real-Time Tasks , 2019, 2019 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[11]  Kang G. Shin,et al.  Improvement of Real-Time Multi-CoreSchedulability with Forced Non-Preemption , 2014, IEEE Transactions on Parallel and Distributed Systems.

[12]  Gurulingesh Raravi,et al.  A multi-DAG model for real-time parallel applications with conditional execution , 2015, SAC.

[13]  Eduardo Quiñones,et al.  Response-time analysis of DAG tasks under fixed priority scheduling with limited preemptions , 2016, 2016 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[15]  James H. Anderson,et al.  Tardiness Bounds under Global EDF Scheduling on a Multiprocessor , 2005, RTSS.

[16]  A. Marchetti-Spaccamela,et al.  Feasibility Analysis of Sporadic Real-Time Multiprocessor Task Systems , 2010, Algorithmica.

[17]  James H. Anderson,et al.  Scheduling Suspendable, Pipelined Tasks with Non-Preemptive Sections in Soft Real-Time Multiprocessor Systems , 2010, 2010 16th IEEE Real-Time and Embedded Technology and Applications Symposium.

[18]  Alexander Wieder,et al.  On Spin Locks in AUTOSAR: Blocking Analysis of FIFO, Unordered, and Priority-Ordered Spin Locks , 2013, 2013 IEEE 34th Real-Time Systems Symposium.

[19]  James H. Anderson,et al.  Supporting Soft Real-Time DAG-Based Systems on Multiprocessors with No Utilization Loss , 2010, 2010 31st IEEE Real-Time Systems Symposium.

[20]  Bo Peng,et al.  Explicit Preemption Placement for Real-Time Conditional Code , 2014, 2014 26th Euromicro Conference on Real-Time Systems.

[21]  James H. Anderson,et al.  Supporting Pipelines in Soft Real-Time Multiprocessor Systems , 2009, 2009 21st Euromicro Conference on Real-Time Systems.

[22]  Giorgio C. Buttazzo,et al.  Response-Time Analysis of Conditional DAG Tasks in Multiprocessor Systems , 2015, 2015 27th Euromicro Conference on Real-Time Systems.

[23]  Giuseppe Lipari,et al.  A pre-order relation for exact schedulability test of sporadic tasks on multiprocessor Global Fixed-Priority scheduling , 2015, Real-Time Systems.

[24]  Wang Yi,et al.  Schedulability analysis for non-preemptive fixed-priority multiprocessor scheduling , 2011, J. Syst. Archit..

[25]  Ge Yu,et al.  Exact Schedulability Analysis for Static-Priority Global Multiprocessor Scheduling Using Model-Checking , 2007, SEUS.

[26]  Haoyi Xiong,et al.  Energy-Efficient Multi-Core Scheduling for Real-Time DAG Tasks , 2017, ECRTS.

[27]  Giorgio C. Buttazzo,et al.  Partitioned Fixed-Priority Scheduling of Parallel Tasks Without Preemptions , 2018, 2018 IEEE Real-Time Systems Symposium (RTSS).

[28]  Wang Yi,et al.  Combinatorial abstraction refinement for feasibility analysis of static priorities , 2015, Real-Time Systems.

[29]  Wang Yi,et al.  Schedulability Analysis and Software Synthesis for Graph-Based Task Models with Resource Sharing , 2018, 2018 IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS).

[30]  Alan Burns,et al.  Applying new scheduling theory to static priority pre-emptive scheduling , 1993, Softw. Eng. J..

[31]  Wang Yi,et al.  Schedulability Analysis of Synchronous Digraph Real-Time Tasks , 2016, 2016 28th Euromicro Conference on Real-Time Systems (ECRTS).

[32]  Marco Di Natale,et al.  Assessing the pessimism of current multicore global fixed-priority schedulability analysis , 2018, SAC.

[33]  Sanjoy K. Baruah,et al.  The Global EDF Scheduling of Systems of Conditional Sporadic DAG Tasks , 2015, 2015 27th Euromicro Conference on Real-Time Systems.

[34]  José Carlos Fonseca,et al.  Improved response time analysis of sporadic DAG tasks for global FP scheduling , 2017, RTNS.

[35]  José Carlos Fonseca,et al.  Schedulability analysis of DAG tasks with arbitrary deadlines under global fixed-priority scheduling , 2018, Real-Time Systems.

[36]  Jinkyu Lee,et al.  Improved Schedulability Analysis Using Carry-In Limitation for Non-Preemptive Fixed-Priority Multiprocessor Scheduling , 2017, IEEE Transactions on Computers.

[37]  Liliana Cucu-Grosjean,et al.  Periodicity of real-time schedules for dependent periodic tasks on identical multiprocessor platforms , 2016, Real-Time Systems.

[38]  Chenyang Lu,et al.  Parallel Real-Time Scheduling of DAGs , 2014, IEEE Transactions on Parallel and Distributed Systems.

[39]  Marco Caccamo,et al.  A Predictable Execution Model for COTS-Based Embedded Systems , 2011, 2011 17th IEEE Real-Time and Embedded Technology and Applications Symposium.

[40]  James H. Anderson,et al.  Supporting Graph-Based Real-Time Applications in Distributed Systems , 2011, 2011 IEEE 17th International Conference on Embedded and Real-Time Computing Systems and Applications.

[41]  Daniel Gracia Pérez,et al.  Schedulability analysis for global fixed-priority scheduling of the 3-phase task model , 2017, 2017 IEEE 23rd International Conference on Embedded and Real-Time Computing Systems and Applications (RTCSA).

[42]  Eduardo Quiñones,et al.  An Analysis of Lazy and Eager Limited Preemption Approaches under DAG-Based Global Fixed Priority Scheduling , 2017, 2017 IEEE 20th International Symposium on Real-Time Distributed Computing (ISORC).