New Schedulability Tests for Real- Time task sets scheduled by Deadline Monotonic on Multiprocessors Marko Bertogna, Michele Cirinei, Giuseppe Lipari Scuola S.Anna, Pisa, Italy
Overview Real-time multiprocessing Deadline-Monotonic (DM) for multiprocessors Existing schedulability tests for RM/DM An improved test for DM Existing schedulability bounds Improving the bound for fixed priority global scheduling
Real-time scheduling for multiprocessor platforms Platform: identical, uniform or heterogeneous Migration and priorities: MIGRATION PRIORITY FullAt job boundariesNot allowed (partitioning) StaticRM-global, DM-global, … RM-global, DM-global, … RM-FFDU, DM-WFIU, … Job-level dynamicEDF-global, fpEDF, … EDF, fpEDF, … EDF-FFDU, EDF-WFIU … Unrestricted dynamic pfair algorithms, LLF, … not useful
Multiprocessor DM CPU1 CPU2 CPU3 Global queue (ordered by relative deadline) The first m tasks are scheduled upon the m CPUs
Multiprocessor DM CPU1 CPU2 CPU3 Global queue (ordered by relative deadline) When a task finishes its execution, the next one in the queue is scheduled on the available CPU
Multiprocessor DM CPU1 CPU2 CPU3 Global queue (ordered by relative deadline) When a higher priority task arrives, it preempts the task with highest deadline among the executing tasks
Multiprocessor DM CPU1 CPU2 CPU3 Global queue (ordered by relative deadline) When another task ends its execution, the preempted task can resume its execution Task “migrated” from CPU3 to CPU1
Why fixed priority global scheduling? Advantages: Load balancing Number of preemptions Simple implementation Easy rescheduling Reclaiming Disadvantages: Cache affinity: HW mitigates migration cost Utilization bound lower than pfair algorithms
RM for uniprocessor systems Optimality among fixed priority systems Bounded number of preemptions Efficient implementations Easy sufficient schedulability test:
RM uniprocessor: necessary and sufficient test Response Time Analysis: Repeat: Until: Pseudopolynomial complexity
RM on multiprocessors Low utilization bound (Dhall ’ s effect) Bounded number of preemptions/migrations Good performances on average Schedulability tests (sufficient conditions): Andersson, Baruah, Jonsson (2002) ABJ test Baker (2003) BAK test Efficient implementations
T Dhall ’ s effect Example: m processors, n=m+1 tasks, D i = T i 1,…, m = (1,T-1) m+1 = (T,T) RM can fail at very low utilizations DEADLINE MISS
The ABJ test For implicit deadline systems (D i = T i ) using RM Linear complexity A task set is schedulable with RM on a platform with m identical processors if: Total utilization
The BAK test For constrained deadline systems (D i T i ) Quadratic complexity A task set is schedulable with EDF on a platform with m identical processors if: i = f( i, k ) k = C k /D k
Toward a better schedulability test for RM/DM Improve BAK when heavy tasks are considered Extend the ABJ test: for arbitrary task utilizations for constrained deadline systems
Can BAK be improved? I k > (D k -C k ) kk kk kk DEADLINE MISS CPU1 CPU2 CPU3 rkrk r k +D k I k = Total interference suffered by task k I 2,k I 1,k I 2,k I 3,k I 4,k I 5,k I 6,k I 8,k I 5,k I 3,k I 7,k I 3,k I i,k = Interference of task i on task k
The BCL test I i,k > m(D k -C k ) kk kk kk DEADLINE MISS CPU1 CPU2 CPU3 rkrk r k +D k I 2,k I 1,k I 2,k I 3,k I 4,k I 5,k I 6,k I 8,k I 5,k I 3,k I 7,k I 3,k IDEA: It is sufficient to consider at most the portion D k -C k of each term I i,k in the sum for all i,k: I i,k ≤ I k
The BCL test for DM A task set is schedulable with DM on m processors if and only if, for every task k : Computing each I i,k requires exponential time To reduce the complexity: bound the interference with the load give an upper bound on the load Derive a sufficient condition to be checked for every task
The BCL test for DM i = f( i,D k ) k = C k /D k Complexity is O(n 2 ) A task set is schedulable with DM on m processors if, for every task k :
Can ABJ be improved? New analysis for constrained deadline systems and priorities according to DM Improvement over ABJ: Preperiod deadline systems Arbitrary individual task utilization Higher global utilization Introduce to a better schedulability bound for the fixed priority global scheduling class of algorithms
Density and utilization based test for RM/DM A task set with constrained deadlines is schedulable with DM on m ≥ 2 identical processors if: A task set with implicit deadlines is schedulable with RM on m ≥ 2 identical processors if:
Improvement over existing bounds Bound more general than ABJ: taking we have as ABJ. Corrected (and extended) Baker ’ s bound [RTSS ’ 03]
Existing schedulability bounds for SMPs M=number of processors U=worst-case total utilization [Carpenter, Funk, Holman, Srinivasan, Anderson, Baruah]
Hybrid algorithms Treat differently heavy and light tasks Allow to overcome Dhall ’ s effect ALGORITHM RM-US[U th ] - if (U i >U th ) task has maximum priority - else task has priority according to RM ALGORITHM DM-DS[λ th ] - if (λ i >λ th ) task has maximum priority - else task has priority according to DM
RM-US[1/3] and DM-DS[1/3] A task set with constrained deadlines is schedulable with DM-DS[1/3] on m ≥ 2 identical processors if: A task set with implicit deadlines is schedulable with RM-US[1/3] on m ≥ 2 identical processors if:
Existing schedulability bounds for SMPs M=number of processors U=worst-case total utilization [Carpenter, Funk, Holman, Srinivasan, Anderson, Baruah]
Conclusions Extended BAK test for DM: BCL test that better behaves with heavy tasks Improved ABJ test: generalized to constrained deadline systems extended to arbitrary task utilizations/densities increased the schedulability bound for RM/DM Proposed hybrid algorithms (RM-US, DM-DS): improved the schedulability bound of the fixed priority global scheduling class of algorithms
THE END Marko: Michele: Peppe: