Tests for global EDF schedulability analysis
Introduction
Scheduling and schedulability analysis of multiprocessor systems with migration support has recently been receiving increasing attention in the real-time research community. Recent advancements in multiprocessor and multicore technology are reducing the migration-related penalties of global scheduling algorithms, rendering more likely the adoption of such kind of schedulers in actual systems.
From a real-time system design perspective, it is not only important to have a test that is able to detect the schedulability of a given task set, but also to do that in a reasonable amount of time. In this paper we compare, both theoretically and experimentally, the performances of the main existing schedulability tests for sporadic task systems with hard real-time requirements, scheduled with global Earliest Deadline First (edf) on an identical multiprocessor platform. In particular, we report on an exhaustive set of simulations which analyze which test is able to detect the larger number of schedulable task sets, for different randomly generated distributions of task set parameters. We identify dominance and incomparability relationships among the different tests. (A schedulability test dominates another if all task systems identified as being schedulable by one are also so identified by the other; two tests are incomparable if there are task systems identified as schedulable by each that the other fails to identify as being so.)
Based on this comparison, we present observations regarding the practical application of the considered tests. We propose a specific order in which a subset of the tests – those that dominate all other considered tests – be applied, such that the likelihood of identifying schedulable systems with relatively small computational effort is increased, while ensuring (i) that the entire suite of tests is together able to identify all schedulable task systems that are identified by any considered test; and (ii) the theoretical performance of the suite of tests, as quantified by its processor speedup factor, is the best possible.
This recommended suite of tests has, as its final test (i.e., the one to be applied if none of the prior tests is able to determine that the system being tested is EDF schedulable), a recently-proposed test that is based on the notion of forced-forward demand bound function (FFDBF) [10]. The inclusion of this test is necessary in order to retain the optimality property (on the processor speedup factor); however, prior implementations of this test have tended to be relatively inefficient. We propose here a means of speeding up the run-time of this test by incorporating ideas from the Quick convergence Processor-demand Analysis (QPA) test, proposed by Zhang and Burns [25] in the context of uniprocessor EDF schedulability analysis.
Organization: The remainder of this paper is organized as follows. In Section 2, we briefly describe the task and machine model that we use, and provide notation and additional definitions that will be used in the remainder of the paper. We also discuss the notions of predictability, sustainability, and processor speedup factors, which are used as metrics for comparing the effectiveness of different suficient EDF schedulability tests. In Section 3, we describe (Sections 3.1, 3.2, 3.3, 3.4, 3.5, 3.6, 3.7) the previously-proposed global EDF schedulability tests that we will be comparing in this research, and (in Section 3.8) the new and improved one that we propose as an improvement over prior tests. We also present the salient features of each test. In Section 4 we draw some informal conclusions from our survey of all these tests, and exploit these conclusions to propose a combined suite of tests that, we believe, provides the best features of these tests in a practically applicable manner. In Section 5 we describe the array of experiments that we have conducted in order to test the different schedulability tests, present the data generated by some of these tests, and draw more concrete conclusions about their relative effectiveness.
Section snippets
System model
We consider a set τ of n sporadic tasks [12] to be scheduled on m identical processors using global edf. Each task is characterized by a three-tuple composed by a worst-case computation time , a relative deadline , and a period, or minimum inter-arrival time, . In this paper, we will consider only constrained deadline systems, for which .
A task is composed by a sequence of jobs , where each job is characterized by an arrival time , a finishing time
Schedulability tests for global edf
We now survey the main existing results in the schedulability analysis of sporadic task systems scheduled with global edf. We omit existing works that are generalized by the results described below.
Cucu and Goossens showed in [19] that to check the edf-schedulability of a synchronous periodic task set, it is sufficient to verify if any deadline is missed in the generated schedule until the hyperperiod, i.e., the least common multiple of all tasks periods. However, since the synchronous periodic
Considerations
Only few dominance results can be claimed for the presented schedulability tests. Namely, it is possible to analytically prove that (i) FFDBF dominates GFB, and (ii) RTA dominates BCL. All other pairs of tests are incomparable, meaning that it is possible to find schedulable task sets that are detected by only one of the test, and vice-versa (differently from what is claimed in some of the related papers). We hereafter try to outline the main features that uniquely characterize each test. The
Experimental results
In this section, we show the results of the simulations we performed computing the number of schedulable task sets, among a randomly generated distribution, that are detected by each one of the analyzed schedulability tests; namely: GFB, BAK, BAR, LOAD, BCL, RTA, FFDBF and COMP.
To properly compare the schedulability tests described throughout this work, a first problem is how to generate a distribution of task sets that is representative of the general behavior of a real-time system. Using the
Conclusions
We presented a detailed description, with a homogenous notation, of the main existing schedulability tests for global edf scheduling on an identical multiprocessor platform, considering sporadic task sets with constrained deadlines. The performances of all tests have been compared by means of exhaustive simulations as well as of analytical considerations, taking into account dominance relations, processor speedup factors, run-time complexities, sustainability issues, and average performances
Marko Bertogna is assistant professor at the Scuola Superiore S. Anna, Pisa. He got a Ph.D. in Computer Sciences in 2008 with a dissertation on Real-Time Systems for Multicore Platforms. He graduated magna cum laude in Telecommunication Engineering at the University of Bologna in 2002. In 2006 he visited the University of North Carolina at Chapel Hill, working with prof. Sanjoy Baruah on scheduling algorithms for single and multicore real-time systems. His research interests include scheduling
References (25)
- et al.
Sustainable multiprocessor scheduling of sporadic task systems
Multiprocessor EDF and deadline monotonic schedulability analysis
An analysis of EDF schedulability on a multiprocessor
IEEE Transactions on Parallel and Distributed Systems
(2005)- et al.
An analysis of global EDF schedulability for arbitrary sporadic task systems
Real-Time Systems: The International Journal of Time-Critical Computing
(2009) - Theodore P. Baker, Michele Cirinei, A necessary and sometimes sufficient condition for the feasibility of sets of...
- Theodore P. Baker, Michele Cirinei, A unified analysis of global EDF and fixed-task-priority schedulability of sporadic...
- Sanjoy Baruah, Techniques for mutliprocessor global schedulability analysis, in: Proceedings of the IEEE Real-time...
- et al.
Global EDF schedulability analysis of arbitrary sporadic task systems
- et al.
Schedulability analysis of global EDF
Real-Time Systems: The International Journal of Time-Critical Computing
(2008) - Sanjoy Baruah, Vincenzo Bonifaci, Alberto Marchetti-Spaccamela, Sebastian Stiller, Implementation of a speedup-optimal...
Cited by (63)
Tight necessary feasibility analysis for recurring real-time tasks on a multiprocessor
2023, Journal of Systems ArchitectureAn enhanced deadline constraint based task scheduling mechanism for cloud environment
2022, Journal of King Saud University - Computer and Information SciencesCitation Excerpt :Anderson et al. (2008) discussed a model for the concurrent modeling of conditional execution of the individual task, along with intra-task parallelism. ( Bertogna and Baruah, 2011) and Chwa et al. (2017) analyzed GEDF for synchronous parallel tasks on multicore platforms. Kato and Yamasaki (2011) discussed GEDF based scheduling mechanism with laxity-driven priority in a uniprocessor system.
Pessimism in multicore global schedulability analysis
2019, Journal of Systems ArchitectureIntelligent Agents Model with JADE for Scheduling Analysis and Correction of Real-Time Systems
2023, International Journal of Communication Networks and Information Security
Marko Bertogna is assistant professor at the Scuola Superiore S. Anna, Pisa. He got a Ph.D. in Computer Sciences in 2008 with a dissertation on Real-Time Systems for Multicore Platforms. He graduated magna cum laude in Telecommunication Engineering at the University of Bologna in 2002. In 2006 he visited the University of North Carolina at Chapel Hill, working with prof. Sanjoy Baruah on scheduling algorithms for single and multicore real-time systems. His research interests include scheduling and schedulability analysis of real-time multiprocessor systems, protocols for the exclusive access to shared resources, resource reservation algorithms and reconfigurable devices.
Sanjoy Baruah is a professor in the Department of Computer Science at the University of North Carolina at Chapel Hill. He received his Ph.D. from the University of Texas at Austin in 1993. His research and teaching interests are in scheduling theory, real-time and safety-critical system design, and resource-allocation and sharing in distributed computing environments.