Uniprocessor scheduling of mixed-criticality implicit-deadline - - PowerPoint PPT Presentation

uniprocessor scheduling of mixed criticality implicit
SMART_READER_LITE
LIVE PREVIEW

Uniprocessor scheduling of mixed-criticality implicit-deadline - - PowerPoint PPT Presentation

Uniprocessor scheduling of mixed-criticality implicit-deadline sporadic task systems with K levels Sanjoy Baruah 1 Vincenzo Bonifaci 2 Gianlorenzo DAngelo 3 Haohan Li 6 Alberto Marchetti-Spaccamela 4 Suzanne Van Der Ster 5 Leen Stougie 5 1 The


slide-1
SLIDE 1

Uniprocessor scheduling of mixed-criticality implicit-deadline sporadic task systems with K levels

Sanjoy Baruah1 Vincenzo Bonifaci2 Gianlorenzo D’Angelo3 Haohan Li6 Alberto Marchetti-Spaccamela4 Suzanne Van Der Ster5 Leen Stougie5

1The University of North Carolina, Chapel Hill, USA. 2IASI — CNR, Italy. 3GSSI, L’Aquila, Italy. 4Sapienza University of Rome, Italy. 5Vrije Universiteit, The Netherlands. 6Google Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 1 / 28

slide-2
SLIDE 2

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

slide-3
SLIDE 3

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

slide-4
SLIDE 4

Sporadic Task Systems

A Sporadic Task System consists of a set of tasks τ1, τ2, . . . , τn A task τi = (ci, di, pi) generates a potentially infinite sequence of jobs, where: ci is the execution requirement di is the relative deadline: time between a job’s arrival and its deadline pi is the period: minimum time between two successive arrivals of jobs from this task We consider implicit-deadline tasks system (i.e. di = pi 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

slide-5
SLIDE 5

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, < ci(1), ci(2), . . . ci(χi) >, Ti) generates a potentially infinite sequence of jobs, where: χi ∈ {1, K} is the criticality level ci(h) is the execution requirement at level h, h = 1, 2, . . . , χi Ti is the relative deadline and period We assume ci(h) ≤ ci(h + 1)

Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 5 / 28

slide-6
SLIDE 6

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

slide-7
SLIDE 7

Utilization

For x, y ∈ {1, K}, Uy

x =

  • χi≥x

ci(y) Ti For example, U1

2 is the utilization of criticality 2 tasks, assuming a level-1

behavior Similarly U4

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

slide-8
SLIDE 8

Example, 2 levels

τi ci(LO) ci(HI) Ti χi ULO UHI τ1 2 2 4 1 1/2 τ2 1 5 6 2 1/6 5/6 Total 2/3 5/6

τ1 τ2 20 18 16 14 12 10 8 6 4 2

Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 8 / 28

slide-9
SLIDE 9

Example, 2 levels

τi ci(LO) ci(HI) Ti χi ULO UHI τ1 2 2 4 1 1/2 τ2 1 5 6 2 1/6 5/6 Total 2/3 5/6

τ1 τ2 20 18 16 14 12 10 8 6 4 2

LO-criticality behavior

Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 9 / 28

slide-10
SLIDE 10

Example, 2 levels

Usual we denote level 1 with LO and level 2 as HI τi ci(LO) ci(HI) Ti χi ULO UHI τ1 2 2 4 1 1/2 τ2 1 5 6 2 1/6 5/6 Total 2/3 5/6

τ1 τ2 20 18 16 14 12 10 8 6 4 2

HI-criticality behavior

Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 10 / 28

slide-11
SLIDE 11

Example

τi ci(LO) ci(HI) Ti χi ULO UHI τ1 2 2 4 1 1/2 τ2 1 5 6 2 1/6 5/6 Total 2/3 5/6

τ1 τ2 20 18 16 14 12 10 8 6 4 2

HI-criticality behavior

Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 11 / 28

slide-12
SLIDE 12

Example

τi ci(LO) ci(HI) Ti χi ULO UHI τ1 2 2 4 1 1/2 τ2 1 5 6 2 1/6 5/6 Total 2/3 5/6

τ1 τ2 20 18 16 14 12 10 8 6 4 2

HI-criticality behavior

Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 12 / 28

slide-13
SLIDE 13

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

slide-14
SLIDE 14

Overview of the Algorithm EDF-VD - 2 criticality levels

  • 1. Preprocessing (off line)

1 Compute x as (note that x < 1): x ←

ULO

HI

1−ULO

LO 2 If

  • xULO

LO + UHI HI ≤ 1

  • then declare success and compute modified

period ˆ Ti ˆ Ti ← xTi for each τi s.t. χi = HI ˆ Ti ← Ti 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 ˆ Ti

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

slide-15
SLIDE 15

Example

τi ci(LO) ci(HI) Ti χi ULO UHI τ1 2 2 4 1 1/2 τ2 1 5 6 2 1/6 5/6 Total 2/3 5/6 x = ULO

HI

1 − ULO

LO

= 1/6 1 − 1/2 = 1 3 xULO

LO + UHI HI = 1

3 · 1 2 + 5 6 = 1

τ1 τ2 20 18 16 14 12 10 8 6 4 2

Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 15 / 28

slide-16
SLIDE 16

Example

τ1 τ2 20 18 16 14 12 10 8 6 4 2 τ1 τ2 20 18 16 14 12 10 8 6 4 2

Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 16 / 28

slide-17
SLIDE 17

Example

τ1 τ2 20 18 16 14 12 10 8 6 4 2 τ1 τ2 20 18 16 14 12 10 8 6 4 2

Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 17 / 28

slide-18
SLIDE 18

Example

τ1 τ2 20 18 16 14 12 10 8 6 4 2 τ1 τ2 20 18 16 14 12 10 8 6 4 2

Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 18 / 28

slide-19
SLIDE 19

Correctness EDF-VD, 2 levels

Theorem

The following conditions are sufficient for ensuring that EDF-VD successfully schedules all criticality behaviors: either x ≥ ULO

HI

1 − ULO

LO

  • r

xULO

LO + UHI HI ≤ 1

Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 19 / 28

slide-20
SLIDE 20

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

slide-21
SLIDE 21

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

slide-22
SLIDE 22

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 ˆ Ti ˆ Ti ← xTi for each τi s.t. χi > k ˆ Ti ← Ti 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 ˆ Ti

2 If the system is at level h, h > k schedule according to EDF tasks τi,

s.t. χi ≥ h, assuming original period Ti

Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 22 / 28

slide-23
SLIDE 23

Overview of the Algorithm EDF-VD - K criticality levels

  • 1. Preprocessing

1 if K

l=1 Ul(l) ≤ 1 then declare success with original deadlines

2 else compute x and k, k = 1, 2, . . . , K, such that:

K

  • l=k+1

Ul(k) 1 −

k

  • l=1

Ul(l) ≤ x ≤ 1 −

K

  • l=k+1

Ul(l)

k

  • l=1

Ul(l)

◮ if such k and x exists then declare success and compute virtual

deadlines ˆ Ti as follows if χi ≤ k then ˆ Ti ← di else ˆ Ti ← x · di

◮ if such k and x does not exists then declare failure and exit Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 23 / 28

slide-24
SLIDE 24

Overview of the Algorithm EDF-VD - K levels

current-level is the level exhibited by the scenario in so far if current-level= h, then there is a job of task τi of criticality h with execution time greater than ci(h − 1) and no job of any task of criticality greater than h has experienced execution time greater than ci(h) all jobs of tasks with criticality χi < h are discarded

  • 2. Run-time

1 If current-level= h ≤ k then schedule according to EDF tasks τi

with χi ≥ h using modified period ˆ Ti

2 If current-level> k then schedule according to EDF tasks τi with

χi ≥ h using original period Ti

Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 24 / 28

slide-25
SLIDE 25

Correctness of EF-VD, K levels

Theorem

The following conditions are sufficient for ensuring that EDF-VD successfully schedules: either K

l=1 Ul(l) ≤ 1

  • r

exists x and k, k = 1, 2, . . . , K, such that:

K

  • l=k+1

Ul(k) 1 −

k

  • l=1

Ul(l) ≤ x ≤ 1 −

K

  • l=k+1

Ul(l)

k

  • l=1

Ul(l)

Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 25 / 28

slide-26
SLIDE 26

Speed-up bounds EDF-VD - K levels

Find the largest q, (q ≤ 1) such that the following implication holds for all Ul(k), k = 1, 2, . . . , K, l = k, k + 1, . . . , K: K

l=k Ul(k) ≤ q

∀k = 1, 2, . . . , K ⇒ either K

l=1 Ul(l) ≤ 1

  • r

∃k ∈ {1, 2, . . . , K − 1} s.t.                  1 − k

l=1 Ul(l) > 0

and

K

  • l=k+1

Ul(k) 1 −

k

  • l=1

Ul(l) ≤ 1 −

K

  • l=k+1

Ul(l)

k

  • l=1

Ul(l) . If the largest such value of q is q∗, the speedup factor is then fK = 1/q∗.

Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 26 / 28

slide-27
SLIDE 27

Speed-up bounds EDF-VD - K levels

Nonlinear optimization problem. Luckily there are solvers that find solution (up to K = 13) Number of levels K Speedup factor fK 2 1.3333 3 2.0000 4 2.6180 5 3.0811 6 3.7321 7 4.2361 8 4.7913 9 5.3723 10 5.8551 11 6.4641 12 6.9487 13 7.5311

Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 27 / 28

slide-28
SLIDE 28

Conclusion

We analyzed algorithm EDF-VD: EDF-VD can be used for any number of criticality levels (Vestal’s model) we have derived speed up bounds (up to 13 criticality levels) tools form other communities (e.g. solvers for non linear programs) might be useful

Thank you for your attention!

Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 28 / 28

slide-29
SLIDE 29

Conclusion

We analyzed algorithm EDF-VD: EDF-VD can be used for any number of criticality levels (Vestal’s model) we have derived speed up bounds (up to 13 criticality levels) tools form other communities (e.g. solvers for non linear programs) might be useful

Thank you for your attention!

Alberto Marchetti-Spaccamela (The University of North Carolina, Chapel Hill, USA., IASI — CNR, Italy Dagsuthl 28 / 28