Skip to main content
Log in

A parallel branch-and-bound algorithm to compute a tighter tardiness bound for preemptive global EDF

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

Abstract

In this paper we present a parallel exact algorithm to compute an upper bound to tardiness of preemptive global EDF (G-EDF) schedulers, named harmonic bound, which has been proved to be up to 30% tighter than previously proposed bounds. Tightness is a crucial property of tardiness bounds: a too loose bound may cause a feasible soft real-time application to be mistakenly deemed unfeasible. Unfortunately, no polynomial-time algorithm is known to date to compute the harmonic bound. Although there is no proof of hardness of any sort either, the complex formula of the bound apparently provides no hints to devise algorithms with sub-exponential worst-case cost. In this paper we address this issue by proposing a parallel, exact, branch-and-bound algorithm to compute the harmonic bound, called harm-BB, which proves to be extremely fast in a large number of experiments. More specifically, we compare its execution times with those of existing polynomial-time algorithms for other known tardiness bounds on 630,000 random task sets. harm-BB outperforms, or is comparable to, the competitor algorithms in all scenarios but the ones with the highest number of processors (7 and 8) and tasks (\(\sim \) 50). In the latter scenarios harm-BB is indeed slower than the other algorithms; yet, it was still feasible, as it takes only about 2.8 s to compute the bound on a commodity dual-core CPU. Even better, we show that harm-BB has a high parallel efficiency, thus its execution time may be largely cut down on highly-parallel platforms.

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

Similar content being viewed by others

Notes

  1. These are the scenarios for which wrong execution times, in the order of just milliseconds, were reported for the sequential version of harm-BB in Leoncini et al. (2017).

  2. The way this partition is made, as well as the number of generated subspaces, is clearly problem dependent.

  3. All experiments can be repeated by applying two patches to SchedCAT (2014) and running an ad hoc script.

  4. We name cva2 the oldest one between the last two algorithms, just to preserve the same naming as the one used for the bounds in Valente (2016).

  5. according to Fig. 3 and to the fact that the dual-core CPU exposes four logical CPUs, this means that harm-BB generated 4 threads.

References

  • Anderson JH, Srinivasan A (2004) Mixed pfair/erfair scheduling of asynchronous periodic tasks. J Comput Syst Sci 68(1):157–204

  • Baruah SK, Cohen NK, Plaxton CG, Varvel DA (1996) Proportionate progress: a notion of fairness in resource allocation. Algorithmica 15:600–625

    Article  MathSciNet  MATH  Google Scholar 

  • Bastoni A, Brandenburg B, Anderson J (2010) An empirical comparison of global, partitioned, and clustered multiprocessor real-time schedulers. In: Proceedings of the 31st IEEE real-time systems symposium, pp 14–24

  • Bastoni A, Brandenburg BB, Anderson JH (2010) An empirical comparison of global, partitioned, and clustered multiprocessor EDF schedulers. In: Proceedings of the 2010 31st IEEE real-time systems symposium, RTSS ’10, pp 14–24. IEEE Computer Society, Washington, DC. https://doi.org/10.1109/RTSS.2010.23

  • Brandenburg BB, Gl M (2016) Global scheduling not required: Simple, near-optimal multiprocessor real-time scheduling with semi-partitioned reservations. In: Proceedings of the 2016 IEEE real-time systems symposium (RTSS), pp 99–110. https://doi.org/10.1109/RTSS.2016.019

  • Cavicchioli R, Capodieci N, Bertogna M (2017) Memory interference characterization between CPU cores and integrated GPUS in mixed-criticality platforms. In: Proceedings of the 22nd IEEE international conference on emerging technologies and factory automation (ETFA)

  • Devi UC, Anderson JH (2005) Tardiness bounds under global EDF scheduling on a multiprocessor. In: Proceedings of the RTSS, pp 330–341. IEEE Computer Society. http://dblp.uni-trier.de/db/conf/rtss/rtss2005.html#DeviA05

  • Devi UC, Anderson JH (2008) Tardiness bounds under global edf scheduling on a multiprocessor. Real-Time Syst 38(2):133–189

    Article  MATH  Google Scholar 

  • Eckstein J, Phillips CA, Hart WE (2001) Pico: an object-oriented framework for parallel branch and bound. In: Butnariu D, Censor Y, Reich S (eds) Inherently parallel algorithms in feasibility and optimization and their applications, studies in computational mathematics, vol 8. Elsevier, New York, pp 219–265

    Google Scholar 

  • Erickson JP, Anderson JH (2012) Fair lateness scheduling: reducing maximum lateness in g-edf-like scheduling. In: Proceedings of the ECRTS, pp 3–12

  • Erickson JP, Devi U, Baruah SK (2010) Improved tardiness bounds for global EDF. In: Proceedings of the ECRTS, pp 14–23

  • Erickson JP, Anderson JH, Ward BC (2014) Fair lateness scheduling: reducing maximum lateness in G-EDF-like scheduling. Real-Time Syst 50(1):5–47. https://doi.org/10.1007/s11241-013-9190-4

    Article  MATH  Google Scholar 

  • Experiment-scripts: code used for experiments (2014). http://algogroup.unimore.it/people/paolo/harmonic-bound/

  • Horowitz E, Sahni S (1978) Fundamentals of computer algorithms. Computer Science Press, New York

    MATH  Google Scholar 

  • Kenna CJ, Herman JL, Brandenburg BB, Mills AF, Anderson JH (2011) Soft real-time on multiprocessors: Are analysis-based schedulers really worth it? In: Proceedings of theRTSS, pp 93–103. IEEE Computer Society. http://dblp.uni-trier.de/db/conf/rtss/rtss2011.html#KennaHBMA11

  • Kumar V, Kanal LN (1984) Parallel branch-and-bound formulations for and/or tree search. IEEE Trans Pattern Anal Mach Intell 6(6):768–778

    Article  Google Scholar 

  • Lai TH, Sprague A (1985) Performance of parallel branch-and-bound algorithms. IEEE Trans Comput C–34(10):962–964

    Article  MATH  Google Scholar 

  • Leoncini M, Montangero M, Valente P (2017) A branch-and-bound algorithm to compute a tighter bound to tardiness for preemptive global edf scheduler. In: Proceedings of the 25th international conference on real-time networks and systems, RTNS ’17, pp 128–137. ACM, New York. https://doi.org/10.1145/3139258.3139277

  • Li J, Agrawal K, Lu C, Gill C (2013) Analysis of global EDF for parallel tasks. In: Proceedings of the 2013 25th Euromicro Conference on Real-Time Systems, pp 3–13. https://doi.org/10.1109/ECRTS.2013.12

  • Liu C, Anderson JH (2014) Supporting soft real-time parallel applications on multiprocessors. J Syst Arch 60(2):152–164

    Article  Google Scholar 

  • Maia C, Yomsi PM, Nogueira L, Pinho LM (2015) Semi-partitioned scheduling of fork-join tasks using work-stealing. In: Proceedings of the 2015 IEEE 13th international conference on embedded and ubiquitous computing, pp 25–34. https://doi.org/10.1109/EUC.2015.30

  • Megel T, Sirdey R, David V (2010) Minimizing task preemptions and migrations in multiprocessor optimal real-time schedules. In: Proceedings of the 2013 IEEE 34th real-time systems symposium, pp 37–46. http://doi.ieeecomputersociety.org/10.1109/RTSS.2010.22

  • Mills A, Anderson J (2010) A stochastic framework for multiprocessor soft real-time scheduling. In: Proceedings of the real-time and embedded technology and applications symposium (RTAS), 2010 16th IEEE, pp 311–320. https://doi.org/10.1109/RTAS.2010.33

  • Regnier P, Lima G, Massa E, Levin G, Brandt SA (2011) Run: Optimal multiprocessor real-time scheduling via reduction to uniprocessor. In: Proceedings of the RTSS, pp 104–115

  • SchedCAT: the schedulability test collection and toolkit (2014). https://github.com/brandenburg/schedcat/

  • Valente P (2016) Using a lag-balance property to tighten tardiness bounds for global EDF. Real-Time Syst 52(4):486–561. https://doi.org/10.1007/s11241-015-9237-9

    Article  MATH  Google Scholar 

  • Valente P, Lipari G (2005) An upper bound to the lateness of soft real-time tasks scheduled by edf on multiprocessors. In: Proceedings of the IEEE 26th real-time systems symposium, pp 311–320. http://doi.ieeecomputersociety.org/10.1109/RTSS.2005.8

  • Ward BC, Erickson JP, Anderson JH (2013) A linear model for setting priority points in soft real-time systems. In: Proceedings of real-time systems: the past, the present, and the future, pp 192–205

  • Yang K, Anderson JH (2014) Optimal GEDF-based schedulers that allow intra-task parallelism on heterogeneous multiprocessors. In: Proceedings of the 2014 IEEE 12th symposium on embedded systems for real-time multimedia (ESTIMedia), pp 30–39. https://doi.org/10.1109/ESTIMedia.2014.6962343

  • Yun H, Yao G, Pellizzoni R, Caccamo M, Sha L (2013) Memguard: Memory bandwidth reservation system for efficient performance isolation in multi-core platforms. In: Proceedings of the 2013 IEEE 19th real-time and embedded technology and applications symposium (RTAS), pp 55–64 . https://doi.org/10.1109/RTAS.2013.6531079

Download references

Acknowledgements

Authors wish to thank Prof. Daniele Funaro for providing a compact proof of Lemma 3.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Manuela Montangero.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Leoncini, M., Montangero, M. & Valente, P. A parallel branch-and-bound algorithm to compute a tighter tardiness bound for preemptive global EDF. Real-Time Syst 55, 349–386 (2019). https://doi.org/10.1007/s11241-018-9319-6

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11241-018-9319-6

Keywords

Navigation