Federated scheduling for stochastic parallel real-time tasks

Federated scheduling is a strategy to schedule parallel real-time tasks: It allocates a dedicated cluster of cores to each high-utilization task (utilization ≥ 1); It uses a multiprocessor scheduling algorithm to schedule and execute all low-utilization tasks sequentially, on a shared cluster of the remaining cores. Prior work has shown that federated scheduling has the best known capacity augmentation bound of 2 for parallel tasks with implicit deadlines. In this paper, we explore the soft real-time performance of federated scheduling and address average-case workloads instead of worst-case ones. In particular, we consider stochastic tasks - tasks for which execution time and critical-path length are random variables. In this case, we use bounded expected tardiness as the schedulability criterion. We define a stochastic capacity augmentation bound and prove that federated scheduling algorithms guarantee the same bound of 2 for stochastic tasks. We present three federated mapping algorithms with different complexities for core allocation. All of them guarantee bounded expected tardiness and provide the same capacity augmentation bound. In practice, however, we expect them to provide different performance, both in terms of the task sets they can schedule and the actual tardiness they guarantee. Therefore, we present numerical evaluations using randomly generated task sets to examine the practical differences between the three algorithms.

[1]  Marko Bertogna,et al.  Tests for global EDF schedulability analysis , 2011, J. Syst. Archit..

[2]  Daniel F. Garcia,et al.  Utilization Bounds for EDF Scheduling on Real-Time Multiprocessor Systems , 2004, Real-Time Systems.

[3]  Heejo Lee,et al.  Optimal Scheduling for Real-Time Parallel Tasks , 2006, IEICE Trans. Inf. Syst..

[4]  J. Kingman Inequalities in the Theory of Queues , 1970 .

[5]  Denis Trystram,et al.  A Tighter Analysis of Work Stealing , 2010, ISAAC.

[6]  Jing Li,et al.  Capacity Augmentation Bound of Federated Scheduling for Parallel DAG Tasks , 2014 .

[7]  James H. Anderson,et al.  A Stochastic Framework for Multiprocessor Soft Real-Time Scheduling , 2010, 2010 16th IEEE Real-Time and Embedded Technology and Applications Symposium.

[8]  C. Gill,et al.  Analysis of Global EDF for Parallel Tasks , 2013 .

[9]  James H. Anderson,et al.  Fair lateness scheduling: reducing maximum lateness in G-EDF-like scheduling , 2013, Real-Time Systems.

[10]  Sebastian Stiller,et al.  Feasibility Analysis in the Sporadic DAG Task Model , 2013, 2013 25th Euromicro Conference on Real-Time Systems.

[11]  Shinpei Kato,et al.  Gang EDF Scheduling of Parallel Task Systems , 2009, 2009 30th IEEE Real-Time Systems Symposium.

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

[13]  Chenyang Lu,et al.  Multi-core real-time scheduling for generalized parallel task models , 2011, 2011 IEEE 32nd Real-Time Systems Symposium.

[14]  Liliana Cucu-Grosjean,et al.  Integrating job parallelism in real-time scheduling theory , 2008, Inf. Process. Lett..

[15]  J. Kingman A martingale inequality in the theory of queues , 1964 .

[16]  Sebastian Stiller,et al.  Feasibility Tests for Recurrent Real-Time Tasks in the Sporadic DAG Model , 2012, ArXiv.

[17]  Björn Andersson,et al.  The utilization bounds of partitioned and pfair static-priority scheduling on multiprocessors are 50% , 2003, 15th Euromicro Conference on Real-Time Systems, 2003. Proceedings..

[18]  James H. Anderson,et al.  Soft real-time scheduling on multiprocessors , 2006 .

[19]  Joël Goossens,et al.  On the correctness of "Gang EDF Scheduling of Parallel Task Systems"(Kato and Ishikawa, RTSS 2009) , 2015 .

[20]  Hennadiy Leontyev,et al.  Generalized tardiness bounds for global multiprocessor scheduling , 2007, Real Time Syst..

[21]  Luís Nogueira,et al.  Server-based scheduling of parallel real-time tasks , 2012, EMSOFT '12.

[22]  Chenyang Lu,et al.  Outstanding Paper Award: Analysis of Global EDF for Parallel Tasks , 2013, 2013 25th Euromicro Conference on Real-Time Systems.

[23]  James H. Anderson,et al.  Supporting Soft Real-Time Parallel Applications on Multicore Processors , 2012, 2012 IEEE International Conference on Embedded and Real-Time Computing Systems and Applications.

[24]  Chang-Gun Lee,et al.  Stochastic analysis of periodic real-time systems , 2002, 23rd IEEE Real-Time Systems Symposium, 2002. RTSS 2002..

[25]  Jinkyu Lee,et al.  Global EDF Schedulability Analysis for Synchronous Parallel Tasks on Multicore Platforms , 2013, 2013 25th Euromicro Conference on Real-Time Systems.

[26]  Geoffrey Nelissen,et al.  Techniques Optimizing the Number of Processors to Schedule Multi-threaded Tasks , 2012, 2012 24th Euromicro Conference on Real-Time Systems.

[27]  Sebastian Stiller,et al.  A Constant-Approximate Feasibility Test for Multiprocessor Real-Time Scheduling , 2008, Algorithmica.

[28]  C. Siva Ram Murthy,et al.  A New Approach for Scheduling of Parallelizable Tasks in Real-Time Multiprocessor Systems , 1998, Real-Time Systems.

[29]  James H. Anderson,et al.  Fair lateness scheduling: reducing maximum lateness in G-EDF-like scheduling , 2012, Real-Time Systems.

[30]  James Reinders,et al.  Intel threading building blocks - outfitting C++ for multi-core processor parallelism , 2007 .

[31]  Sanjoy K. Baruah,et al.  Improved multiprocessor global schedulability analysis , 2010, Real-Time Systems.

[32]  K Lakshmanan,et al.  Scheduling Parallel Real-Time Tasks on Multi-core Processors , 2010, 2010 31st IEEE Real-Time Systems Symposium.

[33]  Sanjoy K. Baruah,et al.  Improved Tardiness Bounds for Global EDF , 2010, 2010 22nd Euromicro Conference on Real-Time Systems.

[34]  Chenyang Lu,et al.  Analysis of Federated and Global Scheduling for Parallel Real-Time Tasks , 2014, 2014 26th Euromicro Conference on Real-Time Systems.

[35]  Olivier Tardieu,et al.  A work-stealing scheduler for X10's task parallelism with suspension , 2012, PPoPP '12.

[36]  Luigi Palopoli,et al.  An Analytical Bound for Probabilistic Deadlines , 2012, 2012 24th Euromicro Conference on Real-Time Systems.

[37]  Sebastian Burckhardt,et al.  The design of a task parallel library , 2009, OOPSLA.

[38]  Sanjoy K. Baruah,et al.  A Generalized Parallel Task Model for Recurrent Real-time Processes , 2012, 2012 IEEE 33rd Real-Time Systems Symposium.

[39]  Ragunathan Rajkumar,et al.  Parallel scheduling for cyber-physical systems: Analysis and case study on a self-driving car , 2013, 2013 ACM/IEEE International Conference on Cyber-Physical Systems (ICCPS).

[40]  Bradley C. Kuszmaul,et al.  Cilk: an efficient multithreaded runtime system , 1995, PPOPP '95.

[41]  Joaquín Entrialgo,et al.  Stochastic analysis of real-time systems under preemptive priority-driven scheduling , 2008, Real-Time Systems.

[42]  Björn Andersson,et al.  Analyzing Global-EDF for Multiprocessor Scheduling of Parallel Tasks , 2012, OPODIS.

[43]  Sebastian Stiller,et al.  A Constant-Approximate Feasibility Test for Multiprocessor Real-Time Scheduling , 2008, ESA.

[44]  James H. Anderson,et al.  Efficient scheduling of soft real-time applications on multiprocessors , 2003, 15th Euromicro Conference on Real-Time Systems, 2003. Proceedings..