An exact comparison of global, partitioned, and semi-partitioned fixed-priority real-time multiprocessor schedulers

Abstract We evaluate the performance of global, partitioned, and semi-partitioned fixed-priority ( FP ) multiprocessor schedulers for sporadic real-time tasks. By conducting a range of exhaustive experiments, we support a prior observation of Baruah regarding the incomparability of global and partitioned fixed-priority schedulers, by demonstrating the existence of multiple task sets, which are schedulable by either one or another approach, but not both simultaneously. In addition, we demonstrate that a suboptimal semi-partitioning heuristic, named Deadline Monotonic with Priority Migration ( DM - PM ), in certain cases outperforms both global and partitioned FP schedulers. Unlike other works, our evaluation is based on an exact schedulability test for global scheduling, as well as relies on optimal task priorities for global FP , and an optimal partitioning of tasks to processors. However, due to the exponential computational complexity of the available exact schedulability test, our evaluation is constrained to a limited number of tasks in a set. On average, partitioned scheduling performs better for a lower number of heavy tasks in a task set, while global scheduling is the opposite. The schedulability gain of one approach over another might exceed 50%, for both cases. To make such an evaluation possible, we derive a method to compute optimal task priorities for global FP by using a set of pruning rules. We demonstrate that the gain of such optimal priorities over other widely used priority assignment heuristics, including Deadline Monotonic ( DM ), can be significant, in certain cases. Moreover, we evaluate the performance of an optimal task partitioning over the available suboptimal partition heuristics, namely first-fit decreasing (FFD) and worst-fit decreasing (WFD), and confirm no significant performance difference between them, for considered task settings. Software tools used in our evaluation are implemented using C++ libraries, and are publicly available.

[1]  Rajesh Devaraj,et al.  SEAMERS: A Semi-partitioned Energy-Aware scheduler for heterogeneous MulticorEReal-time Systems , 2020, J. Syst. Archit..

[2]  Sanjoy K. Baruah,et al.  Schedulability Analysis of Multiprocessor Sporadic Task Systems , 2007, Handbook of Real-Time and Embedded Systems.

[3]  Sanjoy K. Baruah,et al.  Proportionate progress: a notion of fairness in resource allocation , 1993, STOC '93.

[4]  Hemangee K. Kapoor,et al.  TARTS: A Temperature-Aware Real-Time Deadline-Partitioned Fair Scheduler , 2020, J. Syst. Archit..

[5]  Sanjoy K. Baruah Improved Multiprocessor Global Schedulability Analysis of Sporadic DAG Task Systems , 2014, 2014 26th Euromicro Conference on Real-Time Systems.

[6]  Alessandro Biondi,et al.  On the ineffectiveness of 1/m-based interference bounds in the analysis of global EDF and FIFO scheduling , 2018, Real-Time Systems.

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

[8]  Sanjoy K. Baruah,et al.  The limited-preemption uniprocessor scheduling of sporadic task systems , 2005, 17th Euromicro Conference on Real-Time Systems (ECRTS'05).

[9]  Hemangee K. Kapoor,et al.  Energy aware frame based fair scheduling , 2018, Sustain. Comput. Informatics Syst..

[10]  Rami G. Melhem,et al.  Comparison of global and partitioning schemes for scheduling rate monotonic tasks on a multiprocessor , 1998, Proceeding. 10th EUROMICRO Workshop on Real-Time Systems (Cat. No.98EX168).

[11]  R. F. Freund,et al.  Scheduling resources in multi-user, heterogeneous, computing environments with SmartNet , 1998, Proceedings Seventh Heterogeneous Computing Workshop (HCW'98).

[12]  Sebastian Fischmeister,et al.  Implementation and evaluation of global and partitioned scheduling in a real-time OS , 2013, Real-Time Systems.

[13]  Sanjoy K. Baruah,et al.  The partitioned multiprocessor scheduling of sporadic task systems , 2005, 26th IEEE International Real-Time Systems Symposium (RTSS'05).

[14]  David S. Johnson,et al.  Near-optimal bin packing algorithms , 1973 .

[15]  Baruah Sanjoy,et al.  Partitioned Scheduling of Sporadic Task Systems: an ILP-based approach , 2008 .

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

[17]  Björn B. Brandenburg,et al.  Global Scheduling Not Required: Simple, Near-Optimal Multiprocessor Real-Time Scheduling with Semi-Partitioned Reservations , 2016, 2016 IEEE Real-Time Systems Symposium (RTSS).

[18]  Alan Burns,et al.  Fixed priority pre-emptive scheduling: An historical perspective , 1995, Real-Time Systems.

[19]  Giuseppe Lipari,et al.  Schedulability Analysis of Global Scheduling Algorithms on Multiprocessor Platforms , 2009, IEEE Transactions on Parallel and Distributed Systems.

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

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

[22]  Björn Andersson,et al.  Multiprocessor Scheduling with Few Preemptions , 2006, 12th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications (RTCSA'06).

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

[24]  Artem Burmyakov Schedulability Analysis of Multiprocessor Real-time Systems Using Pruning , 2016 .

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

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

[27]  Kishor S. Trivedi,et al.  Fixed-Point Iteration , 2017 .

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

[29]  Shinpei Kato,et al.  Semi-partitioned Fixed-Priority Scheduling on Multiprocessors , 2009, 2009 15th IEEE Real-Time and Embedded Technology and Applications Symposium.

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

[31]  Tongquan Wei,et al.  Peak Temperature Minimization via Task Allocation and Splitting for Heterogeneous MPSoC Real-Time Systems , 2016, J. Signal Process. Syst..

[32]  James H. Anderson,et al.  An EDF-based scheduling algorithm for multiprocessor soft real-time systems , 2005, 17th Euromicro Conference on Real-Time Systems (ECRTS'05).

[33]  Wang Yi,et al.  New Response Time Bounds for Fixed Priority Multiprocessor Scheduling , 2009, 2009 30th IEEE Real-Time Systems Symposium.

[34]  Giuseppe Lipari,et al.  A Weak Simulation Relation for Real-Time Schedulability Analysis of Global Fixed Priority Scheduling Using Linear Hybrid Automata , 2014, RTNS '14.

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

[36]  Joël Goossens,et al.  Multiprocessor schedulability of arbitrary-deadline sporadic tasks: complexity and antichain algorithm , 2012, Real-Time Systems.

[37]  Theodore P. Baker,et al.  A Comparison of Global and Partitioned EDF Schedulability Tests for Multiprocessors TR-051101 , 2005 .