280 likes | 460 Views
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
E N D
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:
Multiprocessor DM CPU1 t1 Global queue (ordered by relative deadline) CPU2 t2 t5 t4 t3 t2 t1 CPU3 t3 The first m tasks are scheduled upon the m CPUs
t5 t4 t3 t2 t1 Multiprocessor DM CPU1 t1 Global queue (ordered by relative deadline) CPU2 t2 t5 t4 t3 t2 t1 CPU3 t3 t4 When a task finishes its execution, the next one in the queue is scheduled on the available CPU
t5 t4 t3 t2 t1 t5 t3 t4 t2 t1 Multiprocessor DM CPU1 t1 Global queue (ordered by relative deadline) CPU2 t2 t3 t3 CPU3 t4 t3 When a higher priority task arrives, it preempts the task with highest deadline among the executing tasks
t5 t4 t3 t3 t2 Multiprocessor DM CPU1 t1 t4 Global queue (ordered by relative deadline) CPU2 t2 t5 t4 t4 t3 t3 t2 t1 Task t4“migrated” from CPU3 to CPU1 CPU3 t3 t4 When another task ends its execution, the preempted task can resume its execution
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 • Efficient implementations • Good performances on average • Schedulability tests (sufficient conditions): • Andersson, Baruah, Jonsson (2002) ABJ test • Baker (2003) BAK test
T Dhall’s effect Example: m processors, n=m+1 tasks, Di = Ti t1 ,…, tm = (1,T-1) tm+1 = (T,T) DEADLINE MISS RM can fail at very low utilizations
Total utilization The ABJ test • For implicit deadline systems (Di = Ti) using RM • Linear complexity A task set is schedulable with RM on a platform with m identical processors if:
The BAK test • For constrained deadline systems (Di £Ti) • Quadratic complexity A task set is schedulable with EDF on a platform with m identical processors if: bi = f(ti ,tk) lk = Ck /Dk
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
I3,k I6,k I3,k I1,k DEADLINE MISS I2,k I5,k I5,k I2,k I7,k I4,k I3,k I8,k CPU3 tk CPU2 tk tk CPU1 rk+Dk rk Ik > (Dk-Ck) Can BAK be improved? Ik= Total interference suffered by task tk Ii,k = Interference of task ti on task tk
I3,k I6,k I3,k I1,k DEADLINE MISS I2,k I5,k I5,k I2,k I7,k I4,k I3,k I8,k CPU3 tk CPU2 tk tk CPU1 rk+Dk rk SIi,k > m(Dk-Ck) The BCL test for all i,k: Ii,k ≤ Ik IDEA: It is sufficient to consider at most the portion Dk-Ck of each term Ii,k in the sum
The BCL test for DM A task set is schedulable with DM on m processors if and only if, for every task tk : • Computing each Ii,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
bi = f(ti ,Dk) lk = Ck /Dk The BCL test for DM A task set is schedulable with DM on m processors if, for every task tk : Complexity is O(n2)
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[Uth] • if (Ui>Uth) 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 implicit deadlines is schedulable with RM-US[1/3] on m ≥ 2 identical processors if: A task set with constrained deadlines is schedulable with DM-DS[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: marko@sssup.it Michele: cirnei@gandalf.sssup.it Peppe: lipari@sssup.it