270 likes | 291 Views
Improving the Schedulability and Quality of Service for Federated Scheduling of Parallel Mixed-Criticality Tasks on Multiprocessors. Risat Pathan Chalmers University of Technology, Sweden. Outline. Background State-of-the-art and its limitations Improving Schedulability Improving QoS
E N D
Improving the Schedulability and Quality of Service for Federated Scheduling of Parallel Mixed-Criticality Tasks on Multiprocessors Risat Pathan Chalmers University of Technology, Sweden
Outline • Background • State-of-the-art and its limitations • Improving Schedulability • Improving QoS • Results and Conclusion J. Li, D. Ferry, S. Ahuja, K. Agrawal, C. Gill, and C. Lu. Mixed-criticality federated scheduling for parallel real-time tasks. In Proc. of RTAS, April 2016. J. Li, J. J. Chen, K. Agrawal, C. Lu, C. Gill, and A. Saifullah. Mixed-criticality federated scheduling for parallel real-time tasks. Real-Time Systems, Sep 2017.
3 Background: Parallel non-MC Tasks (DAG) A sequential task with WCET C = 10 Period T = 20 A parallel task with Total work C=12 Length of longest path L=10 Period T=20
Background: Federated Scheduling of non-MC parallel tasks 3 3 Phase 1: Assigning processors to the tasks Phase 2: Scheduling Algorithm 8 10 • Each task is either a heavy task or a light task • Each heavy task is assigned a number of dedicated processors • Nodes of each heavy task are scheduled using some greedy scheduleronly on its dedicated processors • All the light tasks are assigned to the remaining (shared) processors • Light tasks are executed sequentially • Partitioned scheduling of sequential tasks A heavy task Total work C=24 Period T=20 Utilization U=1.2 A light task Total work C=12 Period T=20 Utilization U=0.6
Example: Federated Scheduling of non-MC parallel tasks 30 3 5 3 10 C=25 T =100 U=0.25 C=50 T =40 U=1.25 Light Task 5 14 5 2 10 C=8 T=16 U=0.5 Heavy Task C=60 T =30 U=2.0 Light Task Heavy Task 10 Analysis Analysis Analysis 10 1 1 M3 = 1 M1 = 3 M2 = 4 Sched Test: IfM1+M2+M3 <=P, then all deadlines are met. whereP=# of processors
3 Parallel Mixed-Critical (MC) Tasks A parallel MC task with Total work CN=12 Length (longest path) LN=10 Period T=15 CO=20 LO=14 A sequential MC task with WCET CN = 10 CO=12 Period T = 20 Dual-Criticality System Each task is either a high (HI) or a low (LO) critical task Nominal WCET Overloaded WCET Nominal work and critical path length Overloaded Work and critical path length
MC Parallel Task Model • We consider n implicit-deadline parallel MC sporadic tasks • Task i (Zi, Ti, Ci, Li) where Zi {LO, HI} and Ti= period (also deadline) • If Zi=HI, thenCi = <CN , CO> where CN ≤ CO Li = <LN , LO> where LN ≤ LO • If Zi=LO, thenCi = CN and Li=LN • Each task is also assigned a virtual deadline Vi
Federated Scheduling of MC tasks • Phase 1: Assigning processors to MC tasks • Phase 2: Runtime MC scheduling
States/CriticalityBehaviors Typical State Critical State Only HI-crit tasks execute Task do not overrun LiHIand CiHI Both LO and HI-crit tasks execute No task overrun its virtual deadline Some task does not signal completion by its virtual deadline STATE SWITCHES AT (t+s) t+s starts at time t LO-crit tasks are dropped at time (t+s) to provide more processors to high critical tasks
Example: Processors Assignment to Tasks (Federated Scheduling of MC tasks) 30 5 3 3 UN=0.25 10 UN=0.25 UO=0.5 Light, LowCrit UN=1.25 2 5 5 14 Light, HighCrit 10 Heavy, LowCrit UN=1.0 UO=2.0 Heavy, HighCrit Analysis Analysis Analysis 10 1 10 1 MN =1 MO =1 MN =2 MO =0 MN =3 MO =8 Each task iis also assigned its virtual deadline Vi
Federated MC Scheduling (Runtime) • The system starts in typical state • All the light MC tasks execute on Mlight processors • Partitioned MC scheduling of sequential tasks • Each heavy taski executes on MiN dedicated processors based on greedy scheduling • If some task does not complete by its virtual deadline, then state switches to critical state • The heavy task inow executes on MiO dedicated processors • The additional (MiO-MiN) processors are taken by dropping some LO-criticality tasks
State-of-the-art Test: Federated Scheduling of MC tasks Consider P=8 Processors ΣMN=2+3+1=6 (Success in Typical State) ΣMO=0+8+1=9 (Failure in Critical State) 3 3 30 5 LightLowCrit 10 LightHighCrit Heavy LowCrit 2 5 5 14 10 Heavy HighCrit Analysis Analysis Analysis 10 10 1 1 MN =1 MO =1 MN =3 MO =8 MN =2 MO =0 Schedulability Test If ΣMN <= P, then all the deadlines are met in typical state If ΣMO <= P, then all the deadlines are met in critical state
State-of-the-art Test: Federated Scheduling of MC tasks Consider P=8 processors ΣMN=2+3+1=6 (Success in Typical State) ΣMO=0+8+1=9 (Failure in Critical State) 30 5 3 3 LightLowCrit 10 LightHighCrit Heavy LowCrit 5 5 2 14 10 Heavy HighCrit Analysis Analysis Analysis 10 1 1 10 MN =1 MO =1 MN =3 MO =8 MN =2 MO =0 Do we have some other assignment of processors such that the task set is schedulable? Schedulability Test If ΣMN <= P, then all the deadlines are met in typical state If ΣMO <= P, then all the deadlines are met in critical state
Improving the Schedulability and Quality of Service for Federated Scheduling of Parallel Mixed-Criticality Tasks on Multiprocessors
The main contribution A new schedulability test for each heavy MC task i is proposed TEST(MN, MO, i)= True and False For MN=1 to P For MO=1 to P if TEST(MN, MO, i)==TRUE “Valid alternative (MN, MO) for i” We select one (MN, MO) form all the alternatives such that the overall task set is schedulable
Improving Schedulability: Federated Scheduling of MC tasks Consider P=8 processors ΣMN=2+4+1=7 (Success) ΣMO=0+6+1=7 (Success) Consider P=8 processors ΣMN=2+3+1=6 (Success) ΣMO=0+8+1=9 (Failure) Consider P=8 processors ΣMN=2+3+1=6 (Success) ΣMO=0+8+1=9 (Failure) 30 5 3 3 LightLowCrit 10 LightHighCrit Heavy LowCrit 5 14 2 5 10 Heavy HighCrit Analysis Analysis Analysis 10 10 1 1 MN =1 MO =1 MN =3 MO =8 MN =2 MO =0 MN =4 MO =6 Schedulability Test If ΣMN <= P, then typical ok If ΣMO <= P, then critical ok
Improving QoS: Federated Scheduling of MC tasks Consider P=8 processors ΣMN=2+5+1=8 (Success) ΣMO=2+5+1=8 (Success) Although schedulable, the low-crit heavy task is dropped. Do we have some other assignment of processors to the heavy tasks such that the LO-crit task is not dropped? Consider P=8 processors ΣMN=2+4+1=7 (Success) ΣMO=0+6+1=7 (Success) 30 3 3 5 LightLowCrit 10 LightHighCrit Heavy LowCrit 5 14 5 2 10 Heavy HighCrit LO Critical (Heavy) High Critical (Heavy) LO and HI critical (Light) Analysis Analysis Analysis 10 1 1 10 MN =1 MO =1 MN =3 MO =8 MN =2 MO =0 MN =4 MO =6 Schedulability Test If ΣMN <= P, then typical ok If ΣMO <= P, then critical ok MN =2 MO =2 MN =5 MO =5
Other Contributions • Each task may have O(P) possible ways of assigning processors (MN, MO) • N tasks may have O(PN) possible ways of selecting the alternative • A dynamic programming algorithm is proposed to find the allocation of the processors to the tasks in polynomial time • There may be multiple valid ways to allocate the processors to the tasks • By selecting the allocation that requires the minimum number of processors during the critical state, we see that some LO crit tasks are not dropped. • An ILP is formulated to maximize the number of LO-crittaskshat are never dropped • Simulation shows better QoS w.r.t. the state of the art
Simulation • Randomly generated task sets are evaluated • Our-MCF test are compared with MCFS-Improve [RTAS16, RTJ17] test
QoSmetric: Averagefractionof LO-crit tasks thatare never dropped • For each schedulable task set, • The fraction of LO-crit tasks that are never dropped is computed • For example, if 2 out of 10 LO-crit tasks are never dropped, then this fraction is 20% • Metric: Average fraction of LO-crit tasks that are never dropped
Conclusion • A new way to assign the processors to MC parallel tasks for federated scheduling • Improves the schedulability and the QoS of the system • Future work: Greedy vs. other scheduler
ThankYou risat@chalmers.se