Push Forward: Global Fixed-Priority Scheduling of Arbitrary-Deadline - - PowerPoint PPT Presentation

push forward global fixed priority scheduling of
SMART_READER_LITE
LIVE PREVIEW

Push Forward: Global Fixed-Priority Scheduling of Arbitrary-Deadline - - PowerPoint PPT Presentation

Push Forward: Global Fixed-Priority Scheduling of Arbitrary-Deadline Sporadic Task Systems Jian-Jia Chen, Georg von der Br uggen and Niklas Ueter TU Dortmund University, Germany 06.07.2018 at ECRTS Jian-Jia Chen et al. 1 / 23 Sporadic Task


slide-1
SLIDE 1

Push Forward: Global Fixed-Priority Scheduling

  • f Arbitrary-Deadline Sporadic Task Systems

Jian-Jia Chen, Georg von der Br¨ uggen and Niklas Ueter

TU Dortmund University, Germany

06.07.2018 at ECRTS

Jian-Jia Chen et al. 1 / 23

slide-2
SLIDE 2

Sporadic Task Model

τi(Ci, Di, Ti), Ui = Ci

Ti WCET τi Relative Deadline Period Utilization

Constrained Deadline: Di ≤ Ti, ∀τi

Jian-Jia Chen et al. 2 / 23

slide-3
SLIDE 3

Sporadic Task Model

τi(Ci, Di, Ti), Ui = Ci

Ti WCET τi Relative Deadline Period Utilization

Constrained Deadline: Di ≤ Ti, ∀τi Implicit Deadline: Di = Ti, ∀τi

Jian-Jia Chen et al. 2 / 23

slide-4
SLIDE 4

Sporadic Task Model

τi(Ci, Di, Ti), Ui = Ci

Ti WCET τi Relative Deadline Period Utilization

Constrained Deadline: Di ≤ Ti, ∀τi Implicit Deadline: Di = Ti, ∀τi Arbitrary Deadline: otherwise. The jobs of a task must be executed in the FCFS manner.

Jian-Jia Chen et al. 2 / 23

slide-5
SLIDE 5

Scheduling Model

  • M identical multiprocessors: all the processors have the same

characteristics

  • Global scheduling:
  • A job may execute on any processor
  • The system maintains a global ready queue
  • Execute the M highest-priority jobs in the ready queue
  • Basic Terms: EDF, FP, RM, DM
  • Global Scheduling: Global-EDF, Global-FP, Global-RM,

Global-DM

Jian-Jia Chen et al. 3 / 23

slide-6
SLIDE 6

Good News for Global Scheduling

For frame-based task systems, McNaughton’s wrap-around rule for P|pmtn|Cmax is optimal

D

split tasks unsplit tasks

  • R. McNaughton. Scheduling with deadlines and loss functions. Management Science,

6:1-12, 1959.

Jian-Jia Chen et al. 4 / 23

slide-7
SLIDE 7

Critical Instant?

  • Synchronous release of higher-priority tasks and as early as

possible for the following jobs

  • Example: M=2 and 3 tasks: (Ci, Di, Ti) are

τ1 = (1, 2, 2), τ2 = (1, 3, 3), τ3 = (5, 6, 6) Feasible for τ3. Infeasible for τ3.

Baruah in RTSS 2007.

Jian-Jia Chen et al. 5 / 23

slide-8
SLIDE 8

Identifying Interference for Constrained Deadlines

rk dk τi τi τi τi carry-in body tail

  • For contrapositive, assume that a job of task τk misses its

absolute deadline at time dk with release time rk

  • Problem window (interval) is defined in [rk, dk)

Jian-Jia Chen et al. 6 / 23

slide-9
SLIDE 9

Necessary Condition for Deadline Misses

rk dk τk τk τk

  • demand E(∆): high-priority computation executed in the interval of

length ∆.

  • If τk misses its deadline at time dk, then

E(Dk) > M × (Dk − Ck) + Ck

Jian-Jia Chen et al. 7 / 23

slide-10
SLIDE 10

Carry-In Demand

  • For contrapositive, assume that a job of task τk misses its

absolute deadline at time dk with release time rk.

time rk dk

Dk

Jian-Jia Chen et al. 8 / 23

slide-11
SLIDE 11

Carry-In Demand

  • For contrapositive, assume that a job of task τk misses its

absolute deadline at time dk with release time rk.

time rk dk

Dk

t0

some proc. idle

  • An innovative idea by Baruah in RTSS 2007 for Global-EDF,

extended by Guan et al. in RTSS 2009 for Global-FP

  • Let t0 be the earliest time instant such that the system

executes jobs on M processors from t0 to rk.

  • Prior to t0, at least one processor idles

Jian-Jia Chen et al. 8 / 23

slide-12
SLIDE 12

Carry-In Demand

  • For contrapositive, assume that a job of task τk misses its

absolute deadline at time dk with release time rk.

time rk dk

Dk

t0

some proc. idle

  • An innovative idea by Baruah in RTSS 2007 for Global-EDF,

extended by Guan et al. in RTSS 2009 for Global-FP

  • Let t0 be the earliest time instant such that the system

executes jobs on M processors from t0 to rk.

  • Prior to t0, at least one processor idles
  • For constrained-deadline systems, at most M-1 carry-in jobs

Jian-Jia Chen et al. 8 / 23

slide-13
SLIDE 13

Carry-In Demand

  • For contrapositive, assume that a job of task τk misses its

absolute deadline at time dk with release time rk.

time rk dk

Dk

t0

some proc. idle

  • An innovative idea by Baruah in RTSS 2007 for Global-EDF,

extended by Guan et al. in RTSS 2009 for Global-FP

  • Let t0 be the earliest time instant such that the system

executes jobs on M processors from t0 to rk.

  • Prior to t0, at least one processor idles
  • For constrained-deadline systems, at most M-1 carry-in jobs
  • For arbitrary-deadline systems, at most M-1 carry-in tasks and

there may be multiple jobs in a carry-in task

Jian-Jia Chen et al. 8 / 23

slide-14
SLIDE 14

Global-FP: Arbitrary-Deadline

time t0

some proc. idle

rk rk + ?Dk

?Dk

  • Essential Problems
  • How to define the window of interest?
  • How many jobs should be considered in the window of interest?

Jian-Jia Chen et al. 9 / 23

slide-15
SLIDE 15

Global-FP: Arbitrary-Deadline

time t0

some proc. idle

rk rk + ?Dk

?Dk

  • Essential Problems
  • How to define the window of interest?
  • How many jobs should be considered in the window of interest?
  • Existing Results
  • Baker (RTSJ 2006): downward extension
  • Baruah and Fisher (OPODIS 2007, ICDCN 2008):

to-be-detailed later

  • Guan et al. (RTSS 2009): M-1 carry-in jobs (flawed)
  • Sun et al. (RTCSA 2014): complex carry-in workload functions
  • Huang and Chen (RTNS 2015): a more precise quantification

for the number of carry-in jobs

Jian-Jia Chen et al. 9 / 23

slide-16
SLIDE 16

Resource Augmentation

Speedup (resource augmentation) factor ρ (ρ ≥ 1):

If the task set (system) is schedulable (feasible), Algorithm A also returns a schedulable (feasible) answer when speeding up the system by a factor ρ.

Jian-Jia Chen et al. 10 / 23

slide-17
SLIDE 17

Resource Augmentation

Speedup (resource augmentation) factor ρ (ρ ≥ 1):

If the task set (system) is schedulable (feasible), Algorithm A also returns a schedulable (feasible) answer when speeding up the system by a factor ρ.

If Algorithm A does not return a schedulable (feasible) answer, the system is also unschedulable (infeasible) when slowing down by a factor ρ, i.e., at speed 1/ρ.

Jian-Jia Chen et al. 10 / 23

slide-18
SLIDE 18

Resource Augmentation of Global DM

implicit deadlines constrained deadlines arbitrary deadlines upper bounds 2.668 (Lundberg 2002) 3 − 1/M (Baruch et al. 2011)

2(M−1) 4M−1− √ 12M2−8M+1 ≤ 3.73

(Baruah and Fisher 2007) 2.823 (Chen et al. 2016) 3 − 1/M (Chen et al. 2016) lower bounds 2.668 (Lundberg 2002) 2.668 (Lundberg 2002) 2.668 (Lundberg 2002)

Jian-Jia Chen et al. 11 / 23

slide-19
SLIDE 19

Resource Augmentation of Global DM

implicit deadlines constrained deadlines arbitrary deadlines upper bounds 2.668 (Lundberg 2002) 3 − 1/M (Baruch et al. 2011)

2(M−1) 4M−1− √ 12M2−8M+1 ≤ 3.73

(Baruah and Fisher 2007) 2.823 (Chen et al. 2016) 3 − 1/M (Chen et al. 2016) 3 − 1

M

lower bounds 2.668 (Lundberg 2002) 2.668 (Lundberg 2002) 2.668 (Lundberg 2002) 3 −

3 M+1 Jian-Jia Chen et al. 11 / 23

slide-20
SLIDE 20

Outline

Introduction Some Details Conclusion

Jian-Jia Chen et al. 12 / 23

slide-21
SLIDE 21

Push Forward (Basic Idea from Baruah and Fisher)

deadline miss

time td ta ≥ (ℓ − 1)Tk + Dk = D′

k

t0

  • τk is continuously active from ta to td with deadline miss at td

Jian-Jia Chen et al. 13 / 23

slide-22
SLIDE 22

Push Forward (Basic Idea from Baruah and Fisher)

deadline miss

time td ta ≥ (ℓ − 1)Tk + Dk = D′

k

t0

  • τk is continuously active from ta to td with deadline miss at td
  • t0 is the smallest value of t ≤ ta such that Ω(t, td) ≥ µk
  • E(t, td): the amount of workload (sum of the execution times)
  • f the higher-priority jobs, i.e., from τ1, τ2, . . . , τk−1, executed

in the time interval [t, td)

  • C ∗

k : amount of time that task τk is executed from ta to td

  • ℓ-th job of task τk misses its deadline, i.e., C ∗

k < ℓCk = C ′ k

  • Ω(t, td) is C ∗

k +E(t,td)

td−t

Jian-Jia Chen et al. 13 / 23

slide-23
SLIDE 23

Push Forward (Basic Idea from Baruah and Fisher)

deadline miss

time td ta ≥ (ℓ − 1)Tk + Dk = D′

k

t0 ∆

  • τk is continuously active from ta to td with deadline miss at td
  • t0 is the smallest value of t ≤ ta such that Ω(t, td) ≥ µk
  • ∆ is td − t0
  • time instant ti is the arrival time of a higher-priority carry-in

task τi if τi is continuously active in time interval [ti, t0 + ε], where ti < t0 and ε > 0 is an arbitrarily small number

Jian-Jia Chen et al. 13 / 23

slide-24
SLIDE 24

Push Forward (Basic Idea from Baruah and Fisher)

deadline miss

time td ta ≥ (ℓ − 1)Tk + Dk = D′

k

t0 τi is active ti ∆

  • τk is continuously active from ta to td with deadline miss at td
  • t0 is the smallest value of t ≤ ta such that Ω(t, td) ≥ µk
  • ∆ is td − t0
  • time instant ti is the arrival time of a higher-priority carry-in

task τi if τi is continuously active in time interval [ti, t0 + ε], where ti < t0 and ε > 0 is an arbitrarily small number

Jian-Jia Chen et al. 13 / 23

slide-25
SLIDE 25

Properties of Pushing Forward

Suppose that µk = M − (M − 1)ρ for a certain ρ with 1 ≥ ρ ≥ C ′

k

D′

k .

Lemma

If τk misses its deadline at td, for any ρ with 1 ≥ ρ ≥ C ′

k

D′

k , the time

t0 always exists with Ω(t0, td) ≥ µk and t0 ≤ ta.

Jian-Jia Chen et al. 14 / 23

slide-26
SLIDE 26

Properties of Pushing Forward

Suppose that µk = M − (M − 1)ρ for a certain ρ with 1 ≥ ρ ≥ C ′

k

D′

k .

Lemma

If τk misses its deadline at td, for any ρ with 1 ≥ ρ ≥ C ′

k

D′

k , the time

t0 always exists with Ω(t0, td) ≥ µk and t0 ≤ ta. Definition A task τi is a carry-in task in the schedule S, if τi is continuously active in a time interval [ti, t0 + ε], for ti < t0 and an arbitrarily small ε > 0.

Jian-Jia Chen et al. 14 / 23

slide-27
SLIDE 27

Properties of Pushing Forward

Suppose that µk = M − (M − 1)ρ for a certain ρ with 1 ≥ ρ ≥ C ′

k

D′

k .

Lemma

If τk misses its deadline at td, for any ρ with 1 ≥ ρ ≥ C ′

k

D′

k , the time

t0 always exists with Ω(t0, td) ≥ µk and t0 ≤ ta. Definition A task τi is a carry-in task in the schedule S, if τi is continuously active in a time interval [ti, t0 + ε], for ti < t0 and an arbitrarily small ε > 0.

Lemma

For 1 ≥ ρ ≥ C ′

k

D′

k , there are at most ⌈M − (M − 1)ρ⌉ − 1 carry-in

tasks at t0 in schedule S.

Jian-Jia Chen et al. 14 / 23

slide-28
SLIDE 28

Necessary Condition for Deadline Misses

t0 td τk τk τk If task τk misses its deadline, then

  • ∃ a positive integer ℓ, i.e., ℓ-th job of τk (in a continuously actively

interval) misses its deadline

Jian-Jia Chen et al. 15 / 23

slide-29
SLIDE 29

Necessary Condition for Deadline Misses

t0 td τk τk τk If task τk misses its deadline, then

  • ∃ a positive integer ℓ, i.e., ℓ-th job of τk (in a continuously actively

interval) misses its deadline

  • ∀1 ≥ ρ ≥ C ′

k

D′

k ,

Jian-Jia Chen et al. 15 / 23

slide-30
SLIDE 30

Necessary Condition for Deadline Misses

t0 td τk τk τk ∆ If task τk misses its deadline, then

  • ∃ a positive integer ℓ, i.e., ℓ-th job of τk (in a continuously actively

interval) misses its deadline

  • ∀1 ≥ ρ ≥ C ′

k

D′

k , ∃∆ ≥ D′

k = (ℓ − 1)Tk + Dk

Jian-Jia Chen et al. 15 / 23

slide-31
SLIDE 31

Necessary Condition for Deadline Misses

t0 td τk τk τk ∆ If task τk misses its deadline, then

  • ∃ a positive integer ℓ, i.e., ℓ-th job of τk (in a continuously actively

interval) misses its deadline

  • ∀1 ≥ ρ ≥ C ′

k

D′

k , ∃∆ ≥ D′

k = (ℓ − 1)Tk + Dk

  • such that

ℓCk + E(∆) > (M − (M − 1)ρ)∆ E(∆): high-priority computation executed in interval length ∆.

Jian-Jia Chen et al. 15 / 23

slide-32
SLIDE 32

Sufficient Condition for τk

t0 td τk τk τk ∆ If task τk misses its deadline, then

  • ∃ a positive integer ℓ, i.e., ℓ-th job of τk (in a continuously actively

interval) misses its deadline

  • ∀1 ≥ ρ ≥ C ′

k

D′

k , ∃∆ ≥ D′

k = (ℓ − 1)Tk + Dk

  • such that

ℓCk + E(∆)>(M − (M − 1)ρ)∆ E(∆): high-priority computation executed in interval length ∆.

Jian-Jia Chen et al. 16 / 23

slide-33
SLIDE 33

Sufficient Condition for τk

t0 td τk τk τk ∆ Task τk always meets its deadline, if

  • ∃ a positive integer ℓ, i.e., ℓ-th job of τk (in a continuously actively

interval) misses its deadline

  • ∀1 ≥ ρ ≥ C ′

k

D′

k , ∃∆ ≥ D′

k = (ℓ − 1)Tk + Dk

  • such that

ℓCk + E(∆)>(M − (M − 1)ρ)∆ E(∆): high-priority computation executed in interval length ∆.

Jian-Jia Chen et al. 16 / 23

slide-34
SLIDE 34

Sufficient Condition for τk

t0 td τk τk τk ∆ Task τk always meets its deadline, if

  • ∀ positive integer ℓ, i.e., ℓ-th job of τk (in a continuously actively

interval) misses its deadline

  • ∀1 ≥ ρ ≥ C ′

k

D′

k , ∃∆ ≥ D′

k = (ℓ − 1)Tk + Dk

  • such that

ℓCk + E(∆)>(M − (M − 1)ρ)∆ E(∆): high-priority computation executed in interval length ∆.

Jian-Jia Chen et al. 16 / 23

slide-35
SLIDE 35

Sufficient Condition for τk

t0 td τk τk τk ∆ Task τk always meets its deadline, if

  • ∀ positive integer ℓ, i.e., ℓ-th job of τk (in a continuously actively

interval) misses its deadline

  • ∃1 ≥ ρ ≥ C ′

k

D′

k , ∃∆ ≥ D′

k = (ℓ − 1)Tk + Dk

  • such that

ℓCk + E(∆)>(M − (M − 1)ρ)∆ E(∆): high-priority computation executed in interval length ∆.

Jian-Jia Chen et al. 16 / 23

slide-36
SLIDE 36

Sufficient Condition for τk

t0 td τk τk τk ∆ Task τk always meets its deadline, if

  • ∀ positive integer ℓ, i.e., ℓ-th job of τk (in a continuously actively

interval) misses its deadline

  • ∃1 ≥ ρ ≥ C ′

k

D′

k , ∀∆ ≥ D′

k = (ℓ − 1)Tk + Dk

  • such that

ℓCk + E(∆)>(M − (M − 1)ρ)∆ E(∆): high-priority computation executed in interval length ∆.

Jian-Jia Chen et al. 16 / 23

slide-37
SLIDE 37

Sufficient Condition for τk

t0 td τk τk τk ∆ Task τk always meets its deadline, if

  • ∀ positive integer ℓ, i.e., ℓ-th job of τk (in a continuously actively

interval) misses its deadline

  • ∃1 ≥ ρ ≥ C ′

k

D′

k , ∀∆ ≥ D′

k = (ℓ − 1)Tk + Dk

  • such that

ℓCk + E(∆)≤(M − (M − 1)ρ)∆ E(∆): high-priority computation executed in interval length ∆.

Jian-Jia Chen et al. 16 / 23

slide-38
SLIDE 38

Baruah and Fisher’s Analysis for Global-DM

t0 td τk τk τk ∆ Task τk always meets its deadline, if

  • ∀ positive integer ℓ, i.e., ℓ-th job of τk (in a continuously actively

interval) misses its deadline

  • ∃1 ≥ ρ ≥ C ′

k

D′

k , ∀∆ ≥ D′

k = (ℓ − 1)Tk + Dk

  • such that

ℓCk + E(∆) ≤ M − (M − 1)ρ E(∆): high-priority computation executed in interval length ∆.

Jian-Jia Chen et al. 17 / 23

slide-39
SLIDE 39

Baruah and Fisher’s Analysis for Global-DM

t0 td τk τk τk ∆ Task τk always meets its deadline, if

  • ∀ positive integer ℓ, i.e., ℓ-th job of τk (in a continuously actively

interval) misses its deadline

  • for ρ = maxk

i { Ci Ti , Ci Di }, ∀∆ ≥ D′ k = (ℓ − 1)Tk + Dk

  • such that

ℓCk + E(∆) ≤ M − (M − 1)ρ E(∆): high-priority computation executed in interval length ∆.

Jian-Jia Chen et al. 17 / 23

slide-40
SLIDE 40

Baruah and Fisher’s Analysis for Global-DM

t0 td τk τk τk ∆ Task τk always meets its deadline, if

  • ∀ positive integer ℓ, i.e., ℓ-th job of τk (in a continuously actively

interval) misses its deadline

  • for ρ = maxk

i { Ci Ti , Ci Di }, ∀∆ ≥ D′ k = (ℓ − 1)Tk + Dk

  • such that

ℓCk+(⌈M − (M − 1)ρ⌉ − 1) ρ∆+ k−1

  • i=1

dbfi(∆ + Di)

  • ≤ (M−(M−1)ρ)∆

Jian-Jia Chen et al. 17 / 23

slide-41
SLIDE 41

Baruah and Fisher’s Analysis for Global-DM

t0 td τk τk τk ∆ Task τk always meets its deadline, if

  • ∀ positive integer ℓ, i.e., ℓ-th job of τk (in a continuously actively

interval) misses its deadline

  • for ρ = maxk

i { Ci Ti , Ci Di }, ∀∆ ≥ D′ k = (ℓ − 1)Tk + Dk

  • such that

(⌈M − (M − 1)ρ⌉ − 1) ρ∆ +

k

  • i=1

2×dbfi(∆) ≤ (M − (M − 1)ρ)∆ since Di ≤ ∆

Jian-Jia Chen et al. 17 / 23

slide-42
SLIDE 42

Baruah and Fisher’s Analysis for Global-DM

t0 td τk τk τk ∆ Task τk always meets its deadline, if

  • ∀ positive integer ℓ, i.e., ℓ-th job of τk (in a continuously actively

interval) misses its deadline

  • for ρ = maxk

i { Ci Ti , Ci Di }, ∀∆ ≥ D′ k = (ℓ − 1)Tk + Dk

  • such that

(⌈M − (M − 1)ρ⌉ − 1) ρ + 2×

k

  • i=1

dbfi(∆) ∆ ≤ (M − (M − 1)ρ) since Di ≤ ∆

Jian-Jia Chen et al. 17 / 23

slide-43
SLIDE 43

Enforcement Techniques (My Slide at ECRTS’17)

  • Strong and/or early-design/analytical enforcements
  • simplify the analysis

Jian-Jia Chen et al. 18 / 23

slide-44
SLIDE 44

Enforcement Techniques (My Slide at ECRTS’17)

  • Strong and/or early-design/analytical enforcements
  • simplify the analysis
  • at the expense of poor performance in practical settings when

compared to other algorithms or tests

Jian-Jia Chen et al. 18 / 23

slide-45
SLIDE 45

Enforcement Techniques (My Slide at ECRTS’17)

  • Strong and/or early-design/analytical enforcements
  • simplify the analysis
  • at the expense of poor performance in practical settings when

compared to other algorithms or tests

Observation 6

Adding enforcements tailoring the design of a scheduling algorithm

  • r test to facilitate the derivation of a bounded speedup factor can

be counterproductive; it may severely compromise performance in practical settings.

Jian-Jia Chen et al. 18 / 23

slide-46
SLIDE 46

Workload Upper Bounds

Ti = 10, Ci = 3

∆ 5 10 15 20 25 30 35 40 45 50 55 60 2 4 6 8 10 12 14 16 18 20

worki(∆) (dotted)

  • Executed workload of a non-carry-in task τi from t0 to td = t0 + ∆ is at

most worki(∆)

  • Executed workload of a carry-in task τi from t0 to td = t0 + ∆ is at most

worki(∆ + Di)

Jian-Jia Chen et al. 19 / 23

slide-47
SLIDE 47

Workload Upper Bounds

Ti = 10, Ci = 3

∆ 5 10 15 20 25 30 35 40 45 50 55 60 2 4 6 8 10 12 14 16 18 20

worki(∆) (dotted)

  • Executed workload of a non-carry-in task τi from t0 to td = t0 + ∆ is at

most worki(∆)

  • Executed workload of a carry-in task τi from t0 to td = t0 + ∆ is at most

ωheavy

i

(∆) = worki(∆ + Di) if Ui > ρ

Jian-Jia Chen et al. 19 / 23

slide-48
SLIDE 48

Workload Upper Bounds

Ti = 10, Ci = 3

p2 = ⌈(∆ − Ci)/Ti⌉ − 1, q2 = ∆ − Ci − p2Ti ∆ 5 10 15 20 25 30 35 40 45 50 55 60 2 4 6 8 10 12 14 16 18 20

ωlight

i

(∆) = (p2 + 1)Ci + max{0, Ci − ρ(Ti − q2)} (solid) worki(∆) (dotted)

  • Executed workload of a non-carry-in task τi from t0 to td = t0 + ∆ is at

most worki(∆)

  • Executed workload of a carry-in task τi from t0 to td = t0 + ∆ is at most

ωheavy

i

(∆) = worki(∆ + Di) if Ui > ρ

  • Executed workload of a carry-in task τi from t0 to td = t0 + ∆ is at most

ωlight

i

(∆) if Ui ≤ ρ

Jian-Jia Chen et al. 19 / 23

slide-49
SLIDE 49

Workload Upper Bounds

Ti = 10, Ci = 3

p2 = ⌈(∆ − Ci)/Ti⌉ − 1, q2 = ∆ − Ci − p2Ti ∆ 5 10 15 20 25 30 35 40 45 50 55 60 2 4 6 8 10 12 14 16 18 20

ωlight

i

(∆) = (p2 + 1)Ci + max{0, Ci − ρ(Ti − q2)} (solid) worki(∆) (dotted) safe approximation of ωlight

i

(∆) (dashed)

  • Executed workload of a non-carry-in task τi from t0 to td = t0 + ∆ is at

most worki(∆) ≤ (Ci − UiDi) + Ui∆

  • Executed workload of a carry-in task τi from t0 to td = t0 + ∆ is at most

ωheavy

i

(∆) = worki(∆ + Di)≤ (Ci − UiDi) + Ui∆ + UiDi if Ui > ρ

  • Executed workload of a carry-in task τi from t0 to td = t0 + ∆ is at most

ωlight

i

(∆) ≤ (Ci − UiDi) + Ui∆ if Ui ≤ ρ

Jian-Jia Chen et al. 19 / 23

slide-50
SLIDE 50

Putting Them Together (Theorem 4.4)

Task τk is schedulable by the given Global FP if ∀ℓ ∈ N, ∃1 ≥ ρ ≥ ℓCk/((ℓ − 1)Tk + Dk), ∀∆ ≥ D′

k = (ℓ − 1)Tk + Dk,

ℓCk +

  • τi∈Tcarry−approx

γiUiDi +

k−1

  • i=1

(Ci − CiUi + Ui∆) ≤ µk∆ where µk = M − (M − 1)ρ, γi =

  • 1

if Ui > ρ if Ui ≤ ρ and Tcarry−approx is the set of the ⌈µk⌉ − 1 tasks among the k − 1 higher-priority tasks with the largest values of γiUiDi.

Jian-Jia Chen et al. 20 / 23

slide-51
SLIDE 51

Putting Them Together (Theorem 4.4)

Task τk is schedulable by the given Global FP if ∀ℓ ∈ N, ∃1 ≥ ρ ≥ ℓCk/((ℓ − 1)Tk + Dk), ∀∆ ≥ D′

k = (ℓ − 1)Tk + Dk,

ℓCk +

  • τi∈Tcarry−approx

γiUiDi +

k−1

  • i=1

(Ci − CiUi + Ui∆) ≤ µk∆ where µk = M − (M − 1)ρ, γi =

  • 1

if Ui > ρ if Ui ≤ ρ and Tcarry−approx is the set of the ⌈µk⌉ − 1 tasks among the k − 1 higher-priority tasks with the largest values of γiUiDi. The worst case of ∆ happens when ∆ = D′

k

Jian-Jia Chen et al. 20 / 23

slide-52
SLIDE 52

Further Approximations

  • Which ρ? (Theorem 4.6)

Task τk is schedulable by the given Global-FP if ∀ℓ ∈ N, ℓCk D′

k

+

k−1

  • i=1

Ci − CiUi D′

k

+ Ui

  • ≤ (M − (M − 1)Umax

δ,k )

D′

k is (ℓ − 1)Tk + Dk and Umax δ,k

= max{maxk−1

i=1 Ui, Ck Tk , Ck Dk }

Jian-Jia Chen et al. 21 / 23

slide-53
SLIDE 53

Further Approximations

  • Which ρ? (Theorem 4.6)

Task τk is schedulable by the given Global-FP if ∀ℓ ∈ N, ℓCk D′

k

+

k−1

  • i=1

Ci − CiUi D′

k

+ Ui

  • ≤ (M − (M − 1)Umax

δ,k )

D′

k is (ℓ − 1)Tk + Dk and Umax δ,k

= max{maxk−1

i=1 Ui, Ck Tk , Ck Dk }

  • Which ℓ? (Theorem 4.7)

Task τk is schedulable by the given Global-FP if max Ck Tk , Ck Dk

  • +

k−1

  • i=1

Ci − CiUi Dk + Ui

  • ≤ M − (M − 1)Umax

δ,k

Jian-Jia Chen et al. 21 / 23

slide-54
SLIDE 54

Conclusion

  • We prove that Sanjoy’s idea can yield a speedup factor of 3

for Global-DM

Jian-Jia Chen et al. 22 / 23

slide-55
SLIDE 55

Conclusion

  • We prove that Sanjoy’s idea can yield a speedup factor of 3

for Global-DM

Future work

  • Priority assignment: OPA-Compatible
  • Proofs for the speedup bound of the optimal Global-FP
  • Soft real-time tasks

Jian-Jia Chen et al. 22 / 23

slide-56
SLIDE 56

(Have you seen Sanjoy during the talk?)

More materials: (links are in the paper)

  • Impl. of Thm. 4.4 in O(N log N) for

testing whether τk meets its deadline

  • Evaluation results with many figures

0.0 0.2 0.4 0.6 0.8 1.0

Utilization / M (%)

0.0 0.2 0.4 0.6 0.8 1.0

Acceptance Ratio (%) 20 40 60 80 100 20 40 60 80 100 (a) Period ∈ [1ms,10ms] BAK LOAD HC OUR-4.4 OUR-4.6 OUR-4.7 ALL 20 40 60 80 100 20 40 60 80 100 (b) Period ∈ [1ms,100ms] 20 40 60 80 100 20 40 60 80 100 (c) Period ∈ [1ms,1000ms]

Figure: Global-DM, M = 8, N = 40, Di

Ti ∈ [0.8, 2].

Jian-Jia Chen et al. 23 / 23