An Efficient Real-Time Multiprocessor Scheduling Algorithm

Most currently existing optimal real-time multiprocessor scheduling algorithms follow the fairness rule, in which all tasks are forced to make progress in their executions proportional to their utilization, to ensure the optimality of the algorithm. However, obeying the fairness rule results in large number of task preemptions and migrations and these highly affect the practicability of the algorithm. In this paper, we present an efficient real-time multiprocessor scheduling algorithm in which the fairness rule is completely relaxed and a semi-greedy algorithm is introduced. In the simulation, the proposed algorithm showed promising results in terms of number of task preemptions and migrations that are very few compared to the current state of the art real-time multiprocessor scheduling algorithms. Although the algorithm can sometimes miss a very few deadlines, we assume that these deadline misses can be tolerated in view of the great reduction of task preemptions and migrations.

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

[2]  Hermann Kopetz,et al.  Real-time systems , 2018, CSC '73.

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

[4]  Binoy Ravindran,et al.  An Optimal Real-Time Scheduling Algorithm for Multiprocessors , 2006, 2006 27th IEEE International Real-Time Systems Symposium (RTSS'06).

[5]  Scott A. Brandt,et al.  Multiprocessor scheduling by reduction to uniprocessor: an original optimal approach , 2012, Real-Time Systems.

[6]  Shih-Ying Chen,et al.  Optimal Dynamic-Priority Real-Time Scheduling Algorithms for Uniform Multiprocessors , 2008, 2008 Real-Time Systems Symposium.

[7]  Geoffrey Nelissen,et al.  Reducing Preemptions and Migrations in EKG , 2012, 2012 IEEE International Conference on Embedded and Real-Time Computing Systems and Applications.

[8]  Geoffrey Nelissen,et al.  U-EDF: An Unfair But Optimal Multiprocessor Scheduling Algorithm for Sporadic Tasks , 2012, 2012 24th Euromicro Conference on Real-Time Systems.

[9]  Shelby Funk,et al.  LRE-TL: an optimal multiprocessor algorithm for sporadic task sets with unconstrained deadlines , 2010, Real-Time Systems.

[10]  Sanjoy K. Baruah,et al.  Fast scheduling of periodic tasks on multiple resources , 1995, Proceedings of 9th International Parallel Processing Symposium.

[11]  Scott A. Brandt,et al.  DP-FAIR: A Simple Model for Understanding Optimal Multiprocessor Scheduling , 2010, 2010 22nd Euromicro Conference on Real-Time Systems.

[12]  Fawnizu Azmadi Hussin,et al.  A Modified LRE-TL Real-Time Multiprocessor Scheduling Algorithm , 2013, DaEng.

[13]  James H. Anderson,et al.  Early-release fair scheduling , 2000, Proceedings 12th Euromicro Conference on Real-Time Systems. Euromicro RTS 2000.

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

[15]  Rami G. Melhem,et al.  An optimal boundary fair scheduling algorithm for multiprocessor real-time systems , 2011, J. Parallel Distributed Comput..

[16]  Scott A. Brandt,et al.  DP-Fair: a unifying theory for optimal hard real-time multiprocessor scheduling , 2011, Real-Time Systems.

[17]  James H. Anderson,et al.  An Empirical Comparison of Global, Partitioned, and Clustered Multiprocessor EDF Schedulers , 2010, 2010 31st IEEE Real-Time Systems Symposium.

[18]  Aloysius K. Mok,et al.  Multiprocessor On-Line Scheduling of Hard-Real-Time Tasks , 1989, IEEE Trans. Software Eng..