Skip to main content
Log in

Global EDF scheduling for parallel real-time tasks

  • Published:
Real-Time Systems Aims and scope Submit manuscript

Abstract

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. In this paper, we consider the global earliest deadline first (GEDF) scheduling policy for task sets consisting of parallel tasks. Each task can be represented by a directed acyclic graph (DAG) where nodes represent computational work and edges represent dependences between nodes. In this model, we prove that GEDF provides a capacity augmentation bound of \(4-\frac{2}{m}\) and a resource augmentation bound of \(2-\frac{1}{m}\). The capacity augmentation bound acts as a linear-time schedulability test since it guarantees that any task set with total utilization of at most \(m/(4-\frac{2}{m})\) where each task’s critical-path length is at most \(1/(4-\frac{2}{m})\) of its deadline is schedulable on \(m\) cores under GEDF. In addition, we present a pseudo-polynomial time fixed-point schedulability test for GEDF; this test uses a carry-in work calculation based on the proof for the capacity bound. Finally, we present and evaluate a prototype platform—called PGEDF—for scheduling parallel tasks using global earliest deadline first (GEDF). PGEDF is built by combining the GNU OpenMP runtime system and the \(\text {LITMUS}^\text {RT}\) operating system. This platform allows programmers to write parallel OpenMP tasks and specify real-time parameters such as deadlines for tasks. We perform two kinds of experiments to evaluate the performance of GEDF for parallel tasks. (1) We run numerical simulations for DAG tasks. (2) We execute randomly generated tasks using PGEDF. Both sets of experiments indicate that GEDF performs surprisingly well and outperforms an existing scheduling techniques that involves task decomposition.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18

Similar content being viewed by others

Notes

  1. In ECRTS 2013, two papers (Li et al. 2013; Bonifaci et al. 2013) prove the same resource augmentation bound of \(2-\frac{1}{m}\). These two results were derived independently and in parallel, and they proved the same bound using different analysis techniques. More detailed discussion of the results from Bonifaci et al. (2013) is presented in Sect. 2.

  2. Note that, due to the lack of a schedulability test, it is difficult to experimentally test the resource augmentation bound of \(2-1/m\) or through simulation.

  3. For DECOMP, end-to-end deadline (instead of decomposed subtask’s deadline) miss ratios were reported.

References

  • Agrawal K, Leiserson CE, He Y, Hsu WJ (2008) Adaptive work-stealing with parallelism feedback. ACM Trans Comput Syst 26(3):7

    Article  Google Scholar 

  • Anderson JH, Calandrino JM (2006) Parallel real-time task scheduling on multicore platforms. In: RTSS

  • Andersson B, Jonsson J (2003) The utilization bounds of partitioned and pfair static-priority scheduling on multiprocessors are 50 %. In: ECRTS

  • Andersson B, de Niz D (2012) Analyzing global-edf for multiprocessor scheduling of parallel tasks. Principles of distributed systems. Prentice Hall, Upper Saddle River, pp 16–30

    Google Scholar 

  • Andersson B, Baruah S, Jonsson J (2001) Static-priority scheduling on multiprocessors. In: RTSS

  • Axer P, Quinton S, Neukirchner M, Ernst R, Dobel B, Hartig H (2013) Response-time analysis of parallel fork-join workloads with real-time constraints. In: ECRTS

  • Baker TP (2005) An analysis of EDF schedulability on a multiprocessor. IEEE Trans Parallel Distrib Syst 16(8):760–768

    Article  Google Scholar 

  • Baker TP, Baruah SK (2009) Sustainable multiprocessor scheduling of sporadic task systems. In: ECRTS

  • Baruah S (2004) Optimal utilization bounds for the fixed-priority scheduling of periodic task systems on identical multiprocessors. IEEE Trans Comput 53(6):781–784

    Article  Google Scholar 

  • Baruah S, Baker T (2008) Schedulability analysis of global EDF. Real-Time Syst 38(3):223–235

    Article  MATH  Google Scholar 

  • Baruah S, Bonifaci V, Marchetti-Spaccamela A, Stiller S (2010) Improved multiprocessor global schedulability analysis. Real-Time Syst 46(1):3–24

    Article  MATH  Google Scholar 

  • Baruah SK, Bonifaci V, Marchetti-Spaccamela A, Stougie L, Wiese A (2012) A generalized parallel task model for recurrent real-time processes. In: RTSS

  • Bertogna M, Baruah S (2011) Tests for global edf schedulability analysis. J Syst Arch 57(5):487–497

    Article  Google Scholar 

  • Bertogna M, Cirinei M, Lipari G (2009) Schedulability analysis of global scheduling algorithms on multiprocessor platforms. IEEE Trans Parallel Distrib Syst 20(4):553–566

    Article  Google Scholar 

  • Bonifaci V, Marchetti-Spaccamela A, Stiller S, Wiese A (2013) Feasibility analysis in the sporadic dag task model. In: ECRTS

  • Brandenburg BB, Anderson JH (2009) On the implementation of global real-time schedulers. In: RTSS

  • Calandrino JM, Anderson JH (2009) On the design and implementation of a cache-aware multicore real-time scheduler. In: ECRTS

  • Cerqueira F, Brandenburg BB (2013) A comparison of scheduling latency in linux, PREEMPT-RT, and LITMUSRT. OSPERT

  • Cerqueira F, Vanga M, Brandenburg BB (2014) Scaling global scheduling with massage passing. In: RTAS

  • Chwa HS, Lee J, Phan KM, Easwaran A, Shin I (2013) Global edf schedulability analysis for synchronous parallel tasks on multicore platforms. In: ECRTS

  • Collette S, Cucu L, Goossens J (2008) Integrating job parallelism in real-time scheduling theory. Inf Process Lett 106(5):180–187

    Article  MATH  MathSciNet  Google Scholar 

  • Cordeiro D, Mouni G, Perarnau S, Trystram D, Vincent JM, Wagner F (2010) Random graph generation for scheduling simulations. In: SIMUTools

  • Davis RI, Burns A (2011) A survey of hard real-time scheduling for multiprocessor systems. ACM Comput Surv 43(4):35

    Article  Google Scholar 

  • Deng X, Gu N, Brecht T, Lu K (1996) Preemptive scheduling of parallel jobs on multiprocessors. In: SODA

  • Drozdowski M (1996) Real-time scheduling of linear speedup parallel tasks. Inf Process Lett 57(1):35–40

    Article  MATH  Google Scholar 

  • Ferry D, Li J, Mahadevan M, Agrawal K, Gill C, Lu C (2013) A real-time scheduling service for parallel tasks. In: RTAS

  • Fisher N, Baruah S, Baker TP (2006) The partitioned scheduling of sporadic tasks according to static-priorities. In: ECRTS

  • Garey RM, Johnson SD (1979) Computers and intractability: a guide to the theory of np-completeness. WH Freeman & Co, San Francisco

    MATH  Google Scholar 

  • Goossens J, Funk S, Baruah S (2003) Priority-driven scheduling of periodic task systems on multiprocessors. Real-Time Syst 25(2–3):187–205

    Article  MATH  Google Scholar 

  • Kato S, Ishikawa Y (2009) Gang EDF scheduling of parallel task systems. In: RTSS

  • Kim J, Kim H, Lakshmanan K, Rajkumar RR (2013) Parallel scheduling for cyber-physical systems: analysis and case study on a self-driving car. In: ICCPS

  • Lakshmanan K, Kato S, Rajkumar R (2010) Scheduling parallel real-time tasks on multi-core processors. In: RTSS

  • Lee J, Shin KG (2012) Controlling preemption for better schedulability in multi-core systems. In: RTSS

  • Lee WY, Heejo L (2006) Optimal scheduling for real-time parallel tasks. IEICE Trans Inf Syst 89(6):1962–1966

    Article  Google Scholar 

  • Lelli J, Lipari G, Faggioli D, Cucinotta T (2011) An efficient and scalable implementation of global edf in linux. In: OSPERT

  • Li J, Agrawal K, Lu C, Gill C (2013) Analysis of global EDF for parallel tasks. In: ECRTS

  • Liu C, Anderson J (2012) Supporting soft real-time parallel applications on multicore processors. In: RTCSA

  • López JM, Díaz JL, García DF (2004) Utilization bounds for EDF scheduling on real-time multiprocessor systems. Real-Time Syst 28(1):39–68

    Article  MATH  Google Scholar 

  • Maghareh A, Dyke S, Prakash A, Bunting G, Lindsay P (2012) Evaluating modeling choices in the implementation of real-time hybrid simulation. EMI/PMC

  • Manimaran G, Murthy CSR, Ramamritham K (1998) A new approach for scheduling of parallelizable tasks in real-time multiprocessor systems. Real-Time Syst 15(1):39–60

    Article  Google Scholar 

  • Nelissen G, Berten V, Goossens J, Milojevic D (2012) Techniques optimizing the number of processors to schedule multi-threaded tasks. In: ECRTS

  • Nogueira L, Pinho LM (2012) Server-based scheduling of parallel real-time tasks. In: EMSOFT

  • Oh-Heum K, Kyung-Yong C (1999) Scheduling parallel tasks with individual deadlines. Theor Comput Sci 215(1):209–223

    Article  MATH  Google Scholar 

  • OpenMP (2011) OpenMP Application Program Interface v3.1. http://www.openmp.org/mp-documents/OpenMP3.1.pdf

  • Phillips CA, Stein C, Torng E, Wein J (1997) Optimal time-critical scheduling via resource augmentation. In: Proceedings of the twenty-ninth annual ACM symposium on Theory of computing, ACM, pp 140–149

  • Polychronopoulos CD, Kuck DJ (1987) Guided self-scheduling: a practical scheduling scheme for parallel supercomputers. IEEE Trans Comput 100(12):1425–1439

    Article  Google Scholar 

  • Saifullah A, Li J, Agrawal K, Lu C, Gill C (2013) Multi-core real-time scheduling for generalized parallel task models. Real-Time Syst 49(4):404–435

    Article  MATH  Google Scholar 

  • Saifullah A, Ferry D, Li J, Agrawal K, Lu C, Gill C (2014) Parallel real-time scheduling of DAGS. IEEE Trans Parallel Distrib Syst

  • Srinivasan A, Baruah S (2002) Deadline-based scheduling of periodic task systems on multiprocessors. Inf Process Lett 84(2):93–98

    Article  MATH  MathSciNet  Google Scholar 

  • Wang Q, Cheng KH (1992) A heuristic of scheduling parallel tasks and its analysis. SIAM J Comput 21(2):281–294

    Article  MATH  MathSciNet  Google Scholar 

Download references

Acknowledgments

This research was supported in part by NSF Grants CCF-1136073 (CPS) and CCF-1337218 (XPS).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Jing Li.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Li, J., Luo, Z., Ferry, D. et al. Global EDF scheduling for parallel real-time tasks. Real-Time Syst 51, 395–439 (2015). https://doi.org/10.1007/s11241-014-9213-9

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11241-014-9213-9

Keywords

Navigation