Uniprocessor scheduling of mixed-criticality implicit-deadline sporadic task systems with K levels Sanjoy Baruah 1 Vincenzo Bonifaci 2 Gianlorenzo D’Angelo 3 Haohan Li 6 Alberto Marchetti-Spaccamela 4 Suzanne Van Der Ster 5 Leen Stougie 5 1 The University of North Carolina, Chapel Hill, USA. 2 IASI — CNR, Italy. 3 GSSI, L’Aquila, Italy. 4 Sapienza University of Rome, Italy. 5 Vrije Universiteit, The Netherlands. 6 Google Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 1 / 28
This Talk We consider the EDF-VD (Earliest Deadline First with Virtual Deadlines) for scheduling mixed-criticality task systems EDF-VD one processor, implicit deadline 2 and 3 criticality levels: experimental analysis and analysis using speed-up bounds [Baruah et al, ESA 2011, Baruah et al, ECRTS 2012]. we show how to extend EDF-VD to any number of criticality levels we derive speed up bounds up to K = 13 criticality levels Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 2 / 28
Outline 1 Model 2 Algorithm EDF-VD, 2 levels 3 Algorithm EDF-VD, K levels Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 3 / 28
Sporadic Task Systems A Sporadic Task System consists of a set of tasks τ 1 , τ 2 , . . . , τ n A task τ i = ( c i , d i , p i ) generates a potentially infinite sequence of jobs, where: c i is the execution requirement d i is the relative deadline: time between a job’s arrival and its deadline p i is the period: minimum time between two successive arrivals of jobs from this task We consider implicit-deadline tasks system (i.e. d i = p i for all tasks) to be executed on a single processor Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 4 / 28
Mixed-Criticality Sporadic Task Systems A Mixed-Criticality Sporadic Task System with K levels consists of a set of tasks τ 1 , τ 2 , . . . , τ n Each task τ i = ( χ i , < c i (1) , c i (2) , . . . c i ( χ i ) >, T i ) generates a potentially infinite sequence of jobs, where: χ i ∈ { 1 , K } is the criticality level c i ( h ) is the execution requirement at level h , h = 1 , 2 , . . . , χ i T i is the relative deadline and period We assume c i ( h ) ≤ c i ( h + 1) Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 5 / 28
Mixed-Criticality Sporadic Task Systems The amount of execution time a that job of task τ i needs is not known, but discovered by executing the job until it signals completion. A collection of realized values for the execution time is called a behavior By executing the tasks, we learn in which level the system is. This may change over time When the system is in level χ i we need to process only the tasks that are of criticality level ≥ χ i . the tasks of criticality level < χ i are not considered Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 6 / 28
Utilization For x , y ∈ { 1 , K } , c i ( y ) U y � x = T i χ i ≥ x For example, U 1 2 is the utilization of criticality 2 tasks, assuming a level-1 behavior Similarly U 4 4 is the utilization of criticality 4 tasks, assuming a level-4 behavior Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 7 / 28
Example, 2 levels U LO U HI τ i c i ( LO ) c i ( HI ) T i χ i τ 1 2 2 4 1 1/2 τ 2 1 5 6 2 1/6 5/6 Total 2/3 5/6 τ 1 τ 2 0 2 4 6 8 10 12 14 16 18 20 Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 8 / 28
Example, 2 levels U LO U HI τ i c i ( LO ) c i ( HI ) χ i T i τ 1 2 2 4 1 1/2 τ 2 1 5 6 2 1/6 5/6 Total 2/3 5/6 τ 1 τ 2 0 2 4 6 8 10 12 14 16 18 20 LO -criticality behavior Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 9 / 28
Example, 2 levels Usual we denote level 1 with LO and level 2 as HI U LO U HI τ i c i ( LO ) c i ( HI ) χ i T i τ 1 2 2 4 1 1/2 τ 2 1 5 6 2 1/6 5/6 Total 2/3 5/6 τ 1 τ 2 0 2 4 6 8 10 12 14 16 18 20 HI -criticality behavior Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 10 / 28
Example U LO U HI τ i c i ( LO ) c i ( HI ) χ i T i τ 1 2 2 4 1 1/2 τ 2 1 5 6 2 1/6 5/6 Total 2/3 5/6 τ 1 τ 2 0 2 4 6 8 10 12 14 16 18 20 HI -criticality behavior Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 11 / 28
Example U LO U HI τ i c i ( LO ) c i ( HI ) χ i T i τ 1 2 2 4 1 1/2 τ 2 1 5 6 2 1/6 5/6 Total 2/3 5/6 τ 1 τ 2 0 2 4 6 8 10 12 14 16 18 20 HI -criticality behavior Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 12 / 28
Outline 1 Model 2 Algorithm EDF-VD, 2 levels 3 Algorithm EDF-VD, K levels Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 13 / 28
Overview of the Algorithm EDF-VD - 2 criticality levels 1. Preprocessing (off line) U LO 1 Compute x as (note that x < 1): x ← HI 1 − U LO LO 2 If xU LO LO + U HI � � HI ≤ 1 then declare success and compute modified period ˆ T i ˆ T i ← xT i for each τ i s.t. χ i = HI ˆ T i ← T i for each τ i s.t. χ i = LO 3 else declare failure and exit 2. Run-time 1 If the system is at level LO schedule according to EDF where HI criticality tasks τ i have period ˆ T i 2 If some job executes beyond its LO -criticality WCET: ◮ discard all LO -criticality jobs ◮ schedule HI -criticality tasks according to EDF with actual periods Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 14 / 28
Example U LO U HI τ i c i ( LO ) c i ( HI ) χ i T i τ 1 2 2 4 1 1/2 τ 2 1 5 6 2 1/6 5/6 Total 2/3 5/6 U LO 1 − 1 / 2 = 1 1 / 6 HI x = = 1 − U LO 3 LO HI = 1 3 · 1 2 + 5 xU LO LO + U HI 6 = 1 τ 1 τ 2 0 2 4 6 8 10 12 14 16 18 20 Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 15 / 28
Example τ 1 τ 2 0 2 4 6 8 10 12 14 16 18 20 τ 1 τ 2 0 2 4 6 8 10 12 14 16 18 20 Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 16 / 28
Example τ 1 τ 2 0 2 4 6 8 10 12 14 16 18 20 τ 1 τ 2 0 2 4 6 8 10 12 14 16 18 20 Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 17 / 28
Example τ 1 τ 2 0 2 4 6 8 10 12 14 16 18 20 τ 1 τ 2 0 2 4 6 8 10 12 14 16 18 20 Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 18 / 28
Correctness EDF-VD, 2 levels Theorem The following conditions are sufficient for ensuring that EDF-VD successfully schedules all criticality behaviors: U LO HI xU LO LO + U HI either x ≥ or HI ≤ 1 1 − U LO LO Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 19 / 28
Speed-up bounds, 2 levels The Speed-up factor of an algorithm A is the smallest real number f such that any task system that is clairvoyantly schedulable on a unit speed processor is schedulable by A on a f -speed processor Theorem The speed-up factor of EDF-VD is 4 3 Theorem No non-clairvoyant algorithm for scheduling dual-criticality systems can have a speed-up factor smaller than 4 3 Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 20 / 28
Outline 1 Model 2 Algorithm EDF-VD, 2 levels 3 Algorithm EDF-VD, K levels Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 21 / 28
Overview of the Algorithm EDF-VD - K levels 1. Preprocessing 1 Compute x and k that verifiy a suitable inequality (next slide) 2 If such x and k exist then declare success and compute modified period and compute modified period ˆ T i ˆ T i ← xT i for each τ i s.t. χ i > k ˆ T i ← T i for each τ i s.t. χ i ≤ k 3 else declare failure and exit 2. Run-time 1 If the system is at level h , h ≤ k , schedule according to EDF tasks τ i , s.t. χ i ≥ h , assuming modified period ˆ T i 2 If the system is at level h , h > k schedule according to EDF tasks τ i , s.t. χ i ≥ h , assuming original period T i Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 22 / 28
Recommend
More recommend