Outstanding Paper Award: Analysis of Global EDF for Parallel Tasks

As multicore processors become ever more prevalent, it is important for real-time programs to take advantage of intra-task parallelism in order to support computation-intensive applications with tight deadlines. We prove that a Global Earliest Deadline First (GEDF) scheduling policy provides a capacity augmentation bound of 4-2/m and a resource augmentation bound of 2-1/m for parallel tasks in the general directed a cyclic graph model. For the proposed capacity augmentation bound of 4-2/m for implicit deadline tasks under GEDF, we prove that if a task set has a total utilization of at most m/(4-2/m) and each task's critical path length is no more than 1/(4-2/m) of its deadline, it can be scheduled on a machine with m processors under GEDF. Our capacity augmentation bound therefore can be used as a straightforward schedulability test. For the standard resource augmentation bound of 2-1/m for arbitrary deadline tasks under GEDF, we prove that if an ideal optimal scheduler can schedule a task set on m unit-speed processors, then GEDF can schedule the same task set on m processors of speed 2-1/m. However, this bound does not lead to a schedulabilty test since the ideal optimal scheduler is only hypothetical and is not known. Simulations confirm that the GEDF is not only safe under the capacity augmentation bound for various randomly generated task sets, but also performs surprisingly well and usually outperforms an existing scheduling technique that involves task decomposition.

[1]  James H. Anderson,et al.  On the Design and Implementation of a Cache-Aware Multicore Real-Time Scheduler , 2009, 2009 21st Euromicro Conference on Real-Time Systems.

[2]  Sanjoy K. Baruah,et al.  Optimal utilization bounds for the fixed-priority scheduling of periodic task systems on identical multiprocessors , 2004, IEEE Transactions on Computers.

[3]  Sanjoy K. Baruah,et al.  Static-priority scheduling on multiprocessors , 2001, Proceedings 22nd IEEE Real-Time Systems Symposium (RTSS 2001) (Cat. No.01PR1420).

[4]  Chenyang Lu,et al.  Multi-core Real-Time Scheduling for Generalized Parallel Task Models , 2011, RTSS.

[5]  Cucinotta Tommaso,et al.  An efficient and scalable implementation of global EDF in Linux , 2011 .

[6]  Jean-Marc Vincent,et al.  Random graph generation for scheduling simulations , 2010, SimuTools.

[7]  Chenyang Lu,et al.  Real-Time Scheduling of Parallel Tasks under a General DAG Model , 2012 .

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

[9]  Arun Prakash,et al.  EVALUATING MODELING CHOICES IN THE IMPLEMENTATION OF REAL-TIME HYBRID SIMULATION , 2012 .

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

[11]  Kyung-Yong Chwa,et al.  Scheduling Parallel Tasks with Individual Deadlines , 1999, Theor. Comput. Sci..

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

[13]  Sanjoy K. Baruah,et al.  Sustainable Multiprocessor Scheduling of Sporadic Task Systems , 2009, 2009 21st Euromicro Conference on Real-Time Systems.

[14]  Sanjoy K. Baruah,et al.  Deadline-based scheduling of periodic task systems on multiprocessors , 2002, Inf. Process. Lett..

[15]  CONSTANTINE D. POLYCHRONOPOULOS,et al.  Guided Self-Scheduling: A Practical Scheduling Scheme for Parallel Supercomputers , 1987, IEEE Transactions on Computers.

[16]  James H. Anderson,et al.  Parallel Real-Time Task Scheduling on Multicore Platforms , 2006, 2006 27th IEEE International Real-Time Systems Symposium (RTSS'06).

[17]  Chenyang Lu,et al.  A real-time scheduling service for parallel tasks , 2013, 2013 IEEE 19th Real-Time and Embedded Technology and Applications Symposium (RTAS).

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

[19]  Xiaotie Deng,et al.  Preemptive Scheduling of Parallel Jobs on Multiprocessors , 1996, SIAM J. Comput..

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

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

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

[23]  Maciej Drozdowski,et al.  Real-Time Scheduling of Linear Speedup Parallel Tasks , 1996, Information Processing Letters.

[24]  James H. Anderson,et al.  On the Implementation of Global Real-Time Schedulers , 2009, 2009 30th IEEE Real-Time Systems Symposium.

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

[26]  Sanjoy K. Baruah,et al.  The partitioned scheduling of sporadic tasks according to static-priorities , 2006, 18th Euromicro Conference on Real-Time Systems (ECRTS'06).

[27]  Sanjoy K. Baruah,et al.  Priority-Driven Scheduling of Periodic Task Systems on Multiprocessors , 2003, Real-Time Systems.

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

[29]  Kang G. Shin,et al.  Controlling Preemption for Better Schedulability in Multi-Core Systems , 2012, 2012 IEEE 33rd Real-Time Systems Symposium.

[30]  Sanjoy K. Baruah,et al.  Schedulability analysis of global edf , 2008, Real-Time Systems.

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

[32]  Kam-Hoi Cheng,et al.  A Heuristic of Scheduling Parallel Tasks and its Analysis , 1992, SIAM J. Comput..

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

[34]  Sanjoy K. Baruah,et al.  Optimal online multiprocessor scheduling of sporadic real-time tasks is impossible , 2010, Real-Time Systems.

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