Quantifying the Exact Sub-optimality of Non-preemptive Scheduling

Fixed priority scheduling is used in many real-time systems, however, both preemptive and non-preemptive variants (FP-P and FP-NP) are known to be sub-optimal when compared to an optimal uniprocessor scheduling algorithm such as preemptive Earliest Deadline First (EDF-P). In this paper, we investigate the sub-optimality of fixed priority non-preemptive scheduling. Specifically, we derive the exact processor speed-up factor required to guarantee the feasibility under FP-NP (i.e. schedulablability assuming an optimal priority assignment) of any task set that is feasible under EDF-P. As a consequence of this work, we also derive a lower bound on the sub-optimality of non-preemptive EDF (EDF-NP), which since it matches a recently published upper bound gives the exact sub-optimality for EDF-NP. It is known that neither preemptive, nor non-preemptive fixed priority scheduling dominates the other, i.e., there are task sets that are feasible on a processor of unit speed under FP-P that are not feasible under FP-NP and vice-versa. Hence comparing these two algorithms, there are non-trivial speedup factors in both directions. We derive the exact speed-up factor required to guarantee the FP-NP feasibility of any FP-P feasible task set. Further, we derive upper and lower bounds on the speed-up factor required to guarantee FP-P feasibility of any FP-NP feasible task set. Empirical evidence suggests that the lower bound may be tight, and hence equate to the exact speed-up factor in this case.

[1]  Sasikumar Punnekkat,et al.  The limited-preemptive feasibility of real-time tasks on uniprocessors , 2015, Real-Time Systems.

[2]  Charles U. Martel,et al.  On non-preemptive scheduling of period and sporadic tasks , 1991, [1991] Proceedings Twelfth Real-Time Systems Symposium.

[3]  Robert I. Davis,et al.  Integrating cache related pre-emption delay analysis into EDF scheduling , 2013, 2013 IEEE 19th Real-Time and Embedded Technology and Applications Symposium (RTAS).

[4]  Chung Laung Liu,et al.  Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment , 1989, JACM.

[5]  John P. Lehoczky,et al.  Fixed priority scheduling of periodic task sets with arbitrary deadlines , 1990, [1990] Proceedings 11th Real-Time Systems Symposium.

[6]  Bala Kalyanasundaram,et al.  Speed is as powerful as clairvoyance , 2000, JACM.

[7]  Donglai Xu,et al.  A Note on the Suboptimality of Nonpreemptive Real-time Scheduling , 2015, IEEE Embedded Systems Letters.

[8]  Robert I. Davis,et al.  Quantifying the Sub-optimality of Uniprocessor Fixed Priority Non-Pre-emptive Scheduling , 2010 .

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

[10]  Giorgio C. Buttazzo,et al.  Limited Preemptive Scheduling for Real-Time Systems. A Survey , 2013, IEEE Transactions on Industrial Informatics.

[11]  Lui Sha,et al.  Impact of Cache Partitioning on Multi-tasking Real Time Embedded Systems , 2008, 2008 14th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications.

[12]  Mathai Joseph,et al.  Finding Response Times in a Real-Time System , 1986, Comput. J..

[13]  Sanjoy K. Baruah,et al.  The Global Limited Preemptive Earliest Deadline First Feasibility of Sporadic Real-Time Tasks , 2014, 2014 26th Euromicro Conference on Real-Time Systems.

[14]  Robert I. Davis,et al.  OUTSTANDING PAPER: Evaluation of Cache Partitioning for Hard Real-Time Systems , 2014, 2014 26th Euromicro Conference on Real-Time Systems.

[15]  Alan Burns,et al.  A Deadline-Floor Inheritance Protocol for EDF Scheduled Embedded Real-Time Systems with Resource Sharing , 2015, IEEE Transactions on Computers.

[16]  Johan J. Lukkien,et al.  Worst-case response time analysis of real-time tasks under fixed-priority scheduling with deferred preemption , 2007, 19th Euromicro Conference on Real-Time Systems (ECRTS'07).

[17]  Neil C. Audsley,et al.  On priority assignment in fixed priority scheduling , 2001, Inf. Process. Lett..

[18]  Alan Burns,et al.  Exact comparison of fixed priority and EDF scheduling based on speedup factors for both pre-emptive and non-pre-emptive paradigms , 2015, Real-Time Systems.

[19]  Michael L. Dertouzos,et al.  Control Robotics: The Procedural Control of Physical Processes , 1974, IFIP Congress.

[20]  Rocquencourt,et al.  Analysis of Deadline Scheduled Real-Time Systems , 1996 .

[21]  Robert I. Davis,et al.  Optimal Fixed Priority Scheduling with Deferred Pre-emption , 2012, 2012 IEEE 33rd Real-Time Systems Symposium.

[22]  Marco Spuri,et al.  Preemptive and Non-Preemptive Real-Time UniProcessor Scheduling , 1996 .

[23]  Sanjoy K. Baruah,et al.  Preemptively scheduling hard-real-time sporadic tasks on one processor , 1990, [1990] Proceedings 11th Real-Time Systems Symposium.

[24]  Robert I. Davis,et al.  What is the Exact Speedup Factor for Fixed Priority Pre-emptive versus Fixed Priority Non-pre-emptive Scheduling? , 2015 .

[25]  J BrilReinder,et al.  Worst-case response time analysis of real-time tasks under fixed-priority scheduling with deferred preemption , 2009 .

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

[27]  Alan Burns,et al.  Controller Area Network (CAN) schedulability analysis: Refuted, revisited and revised , 2007, Real-Time Systems.

[28]  Michael Short,et al.  The Case For Non-preemptive, Deadline-driven Scheduling In Real-time Embedded Systems , 2010, WCE 2010.

[29]  Alan Burns,et al.  An extendible approach for analyzing fixed priority hard real-time tasks , 1994, Real-Time Systems.

[30]  Theodore P. Baker,et al.  Stack-based scheduling of realtime processes , 1991, Real-Time Systems.

[31]  Joseph Y.-T. Leung,et al.  On the complexity of fixed-priority scheduling of periodic, real-time tasks , 1982, Perform. Evaluation.

[32]  Björn B. Brandenburg,et al.  Cache-Related Preemption and Migration Delays : Empirical Approximation and Impact on Schedulability ∗ , 2010 .

[33]  Giorgio C. Buttazzo,et al.  Bounding the Maximum Length of Non-preemptive Regions under Fixed Priority Scheduling , 2009, 2009 15th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications.

[34]  Sasikumar Punnekkat,et al.  Quantifying the Sub-optimality of Non-preemptive Real-Time Scheduling , 2013, 2013 25th Euromicro Conference on Real-Time Systems.

[35]  Jian-Jia Chen,et al.  Schedulability and optimization analysis for non-preemptive static priority scheduling based on task utilization and blocking factors , 2015, 2015 27th Euromicro Conference on Real-Time Systems.

[36]  Alan Burns,et al.  Exact quantification of the sub-optimality of uniprocessor fixed priority pre-emptive scheduling , 2009, Real-Time Systems.

[37]  Robert I. Davis,et al.  Quantifying the Sub-optimality of Uniprocessor Fixed Priority Pre-emptive Scheduling for Sporadic Tasksets with Arbitrary Deadlines , 2009 .

[38]  John P. Lehoczky,et al.  The rate monotonic scheduling algorithm: exact characterization and average case behavior , 1989, [1989] Proceedings. Real-Time Systems Symposium.

[39]  Aloysius K. Mok,et al.  Improvement in feasibility testing for real-time tasks , 1996, Real-Time Systems.

[40]  Robert I. Davis,et al.  Improved cache related pre-emption delay aware response time analysis for fixed priority pre-emptive systems , 2011, 2011 IEEE 32nd Real-Time Systems Symposium.