An Empirical Investigation of Eager and Lazy Preemption Approaches in Global Limited Preemptive Scheduling

Global limited preemptive real-time scheduling in multiprocessor systems using Fixed Preemption Points FPP brings in an additional challenge with respect to the choice of the task to be preempted in order to maximize schedulability. Two principal choices with respect to the preemption approach exist 1 the scheduler waits for the lowest priority job to become preemptible, 2 the scheduler preempts the first job, among the lower priority ones, that becomes preemptible. We refer to the former as the Lazy Preemption Approach LPA and the latter as the Eager Preemption Approach EPA. Each of these choice has a different effect on the actual number of preemptions in the schedule, that in turn determine the runtime overheads. In this paper, we perform an empirical comparison of the run-time preemptive behavior of Global Preemptive Scheduling and Global Limited Preemptive Scheduling with EPA and LPA, under both Earliest Deadline First EDF and Fixed Priority Scheduling FPS paradigms. Our experiments reveal interesting observations some of which are counter-intuitive. We then analyse the counter-intuitive observations and identify the associated reasons. The observations presented facilitate the choice of appropriate strategies when using limited preemptive schedulers on multiprocessor systems.

[1]  Kang G. Shin,et al.  Real-time dynamic voltage scaling for low-power embedded operating systems , 2001, SOSP.

[2]  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).

[3]  Giorgio Buttazzo Rate Monotonic vs. EDF: Judgment Day , 2003, EMSOFT.

[4]  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.

[5]  Mälardalens Univercity Limited-preemptive fixed priority scheduling of real-time tasks on multiprocessors , 2015 .

[6]  Jose Marinho Real-time Limited Preemptive Scheduling , 2015 .

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

[8]  Sanjoy K. Baruah,et al.  Multiprocessor Scheduling for Real-Time Systems , 2015, Embedded Systems.

[9]  Marko Bertogna,et al.  On the Impact of Runtime Overhead on Energy-Aware Scheduling , 2012 .

[10]  Giorgio Buttazzo Limited Preemptive Scheduling , 2011 .

[11]  Alan Burns,et al.  Global fixed priority scheduling with deferred pre-emption , 2013, 2013 IEEE 19th International Conference on Embedded and Real-Time Computing Systems and Applications.

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

[13]  Robert I. Davis,et al.  Multiprocessor fixed priority scheduling with limited preemptions , 2015, RTNS.

[14]  Sanjoy K. Baruah,et al.  Limited-Preemption Scheduling on Multiprocessors , 2014, RTNS '14.

[15]  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.

[16]  Hennadiy Leontyev,et al.  A Flexible Real-Time Locking Protocol for Multiprocessors , 2007, 13th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications (RTCSA 2007).

[17]  Giorgio C. Buttazzo,et al.  Hard Real-Time Computing Systems: Predictable Scheduling Algorithms and Applications (Real-Time Systems Series) , 2010 .

[18]  Robert I. Davis,et al.  Limited Pre-emptive Global Fixed Task Priority , 2013, 2013 IEEE 34th Real-Time Systems Symposium.

[19]  James H. Anderson,et al.  Optimizing Preemption-Overhead Accounting in Multiprocessor Real-Time Systems , 2014, RTNS.

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

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

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

[23]  Alan Burns,et al.  Global and Partitioned Multiprocessor Fixed Priority Scheduling with Deferred Preemption , 2015, ACM Trans. Embed. Comput. Syst..

[24]  Alan Burns,et al.  Priority Assignment for Global Fixed Priority Pre-Emptive Scheduling in Multiprocessor Real-Time Systems , 2009, 2009 30th IEEE Real-Time Systems Symposium.

[25]  Olaf Spinczyk,et al.  Generative software-based memory error detection and correction for operating system data structures , 2013, 2013 43rd Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN).

[26]  Alan Burns,et al.  Improved priority assignment for global fixed priority pre-emptive scheduling in multiprocessor real-time systems , 2010, Real-Time Systems.

[27]  James H. Anderson,et al.  Scheduling and locking in multiprocessor real-time operating systems , 2011 .