Improved EDF schedulability analysis of EDF on
Download
Report
Transcript Improved EDF schedulability analysis of EDF on
Real-Time Scheduling Analysis
for
Multiprocessor Platforms
Marko Bertogna
PhD dissertation
Scuola Superiore S.Anna,
Pisa, Italy
Overview
The Multicore Revolution
Real-Time Multiprocessor Systems: existing
results
Schedulability Analysis for global schedulers
Experimental evaluation
Conclusions
Other research activities
19/05/2008
Marko Bertogna - PhD dissertation
2
Main Contributions
Systematization of existing results for RT
scheduling and schedulability analysis on MP
Polynomial and pseudo-polynomial
schedulability tests for
Work-conserving schedulers
FP
EDF
EDZL
Experimental comparison of existing
techniques
19/05/2008
Marko Bertogna - PhD dissertation
3
Real-Time Systems
Solid theory of single processor systems
Much less results for multiprocessors
Optimal schedulers, tight schedulability tests,
shared resource protocols, bandwidth reservation
schemes, hierarchical schedulers, OS, etc.
Many NP-hard problems, few optimal results,
heuristic approaches, simplified task models, only
sufficient schedulability tests, etc.
Do we really need to investigate MultiProcessors Real-Time Systems?
19/05/2008
Marko Bertogna - PhD dissertation
4
As Moore’s law goes on…
Number of transistor/chip doubles every 18 to 24 mm
months
19/05/2008
Marko Bertogna - PhD dissertation
5
…heating becomes a problem
P V f: Clock speed limited to less than 4 GHz
Pentium Tejas
cancelled!
Power (W)
1000
P3
100
P4
Pentium P2
P1
10
286 486
8086 386
8085
8080
1
8008
4004
Nuclear
Reactor
STOP
Hot-plate
Power
0,1
71
19/05/2008
74
78
85
92
00
04
Marko Bertogna - PhD dissertation
08
Year
6
Solution
Use a higher number of slower logic gates
Denser chips with transistor operating at lower
frequencies
MULTICORE SYSTEMS
19/05/2008
Marko Bertogna - PhD dissertation
7
The Multicore invasion
Intel’s Core2, Itanium, Xeon: 2, 4 cores
AMD’s Opteron, Athlon 64 X2, Phenom: 2, 4 cores
IBM-Toshiba-Sony Cell processor: 8 cores (PSX3)
Microsoft’s Xenon: 3 cores (Xbox 360)
ARM’s MPCore: 4 cores
Sun’s Niagara UltraSPARC: 8 cores
Tilera’s TILE64: 64-core
Nios II: x soft Cores
TI, Freescale, Atmel, Broadcom,Picochip (picoArray
up to 300 DSP cores), ...
19/05/2008
Marko Bertogna - PhD dissertation
8
Identical vs heterogenous cores
ARM’s MPCore
• 4 identical ARMv6 cores
19/05/2008
STI’s Cell Processor
• One Power Processor Element (PPE)
• 8 Synergistic Processing Element (SPE)
Marko Bertogna - PhD dissertation
9
System model
Platform with m identical processors
Task set t with n periodic or sporadic tasks ti
Period or minimum inter-arrival time Ti
Worst-case execution time Ci
Deadline Di
Utilization Ui=Ci/Ti, density li=Ci/min(Di,Ti)
19/05/2008
Marko Bertogna - PhD dissertation
10
Problems addressed
Run-time scheduling problem
Schedulability problem
t1
CPU1
t2
t3
?
CPU2
t4
t5
19/05/2008
CPU3
Marko Bertogna - PhD dissertation
11
Assumptions
Independent tasks
Job-level parallelism prohibited
Preemption and Migration support
the same job cannot be contemporarily executed
on more than one processor
a preempted task can resume its execution on a
different processor
Cost of preemption/migration integrated into
task WCET
19/05/2008
Marko Bertogna - PhD dissertation
12
Global vs partitioned scheduling
Single system-wide queue or multiple perprocessor queues:
Global scheduler
t5
t4
t3
19/05/2008
t2
t1
Partitioned scheduler
CPU1
t1
t5 t4 t1
CPU1
t1
CPU2
t2
t3 t2
CPU2
t2
CPU3
t3
Marko Bertogna - PhD dissertation
CPU3
13
Partitioned Scheduling
The scheduling problem reduces to:
Bin-packing
problem
NP-hard in the
strong sense
+
Uniprocessor
scheduling
problem
t2
t3
t4
t5
Well known
Various heuristics used:
FF, NF, BF, FFDU, BFDD, etc.
t1
EDF
Utot ≤ 1
RM
(RTA)
...
Global (work-conserving) and partitioned
approaches are incomparable
19/05/2008
Marko Bertogna - PhD dissertation
14
Global scheduling
The m highest priority ready jobs are always
the one executing
Work-conserving scheduler
No processor is ever idled when a task is ready to
execute.
t5
19/05/2008
t4
t3
t2
t1
CPU1
t1
CPU2
t2
CPU3
t3
Marko Bertogna - PhD dissertation
15
Global scheduling: advantages
Load automatically balanced
Easier re-scheduling (dynamic loads, selective
shutdown, etc.)
Lower average response time (see queueing theory)
More efficient reclaiming and overload management
Number of preemptions
Migration cost: can be mitigated by proper HW (e.g.,
MPCore’s Direct Data Intervention)
Few schedulability tests Further research needed
19/05/2008
Marko Bertogna - PhD dissertation
16
Uniprocessor scheduling
EDF optimal for arbitrary job collections
Exact schedulability conditions
Optimal priority assignments for sporadic and
synchronous periodic task systems
linear test for implicit deadlines: Utot ≤ 1
Pseudo-polynomial test for constrained and arbitrary
deadlines [Baruah et al. 90]
RM for implicit deadlines
DM for constrained deadlines
Exact pseudo-polynomial schedulability test for FP
Response Time Analysis (RTA)
19/05/2008
Marko Bertogna - PhD dissertation
17
Global Scheduling
No optimal scheduler known for general task models
Pfair optimal for implicit deadlines: Utot ≤ m
preemption and synchronization issues
Classic schedulers are not optimal (Dhall’s effect):
m light tasks
1 heavy task
Utot1
Hybrid schedulers: EDF-US, RM-US, DM-DS, AdaptiveTkC,
fpEDF, EDF(k), EDZL, …
19/05/2008
Marko Bertogna - PhD dissertation
18
Global scheduling: main results
Only sufficient schedulability tests
Utilization-based tests (implicit deadlines)
Polynomial tests
EDF Goossens et al.: Utot ≤ m(1-Umax)+Umax
fpEDF Baruah: Utot ≤ (m+1)/2
RM-US Andersson et al.: Utot ≤ m2/(3m-2)
EDF, FP Baker: O(n2) and O(n3) tests
EDZL Cirinei,Baker: O(n2) test
Pseudo-polynomial tests
EDF, FP Fisher,Baruah: load-based tests
19/05/2008
Marko Bertogna - PhD dissertation
19
Density-based tests
EDF:
ltot ≤ m(1-lmax)+lmax
EDF-DS[1/2]: ltot ≤ (m+1)/2
[ECRTS’05]
Gives highest priority to (at most m-1) tasks
having lt ≥ 1/2, and schedules the
remaining ones with EDF
DM:
ltot ≤ m(1–lmax)/2+lmax
DM-DS[1/3]: ltot ≤ (m+1)/3
[OPODIS’05]
Gives highest priority to (at most m-1) tasks
having lt ≥ 1/3, and schedules the remaining
ones with DM (only constrained deadlines)
19/05/2008
Marko Bertogna - PhD dissertation
20
Critical instant
A particular configuration of releases that leads to
the largest possible response time of a task.
Possible to derive exact schedulability tests
analyzing just the critical instant situation.
Uniprocessor FP and EDF: a critical instant is when
all tasks arrive synchronously
all jobs are released as soon as permitted
Response Time Analysis for uniprocessors
FP the response time of task k is given by the fixed
point of Rk in the iteration
Rk
Rk Ck Ci
t i hp Ti
19/05/2008
Marko Bertogna - PhD dissertation
21
Multiprocessor anomaly
Synchronous periodic arrival of jobs is not a
critical instant for multiprocessors:
t1 = (1,1,2)
t2 = (1,1,3)
t3 = (5,6,6)
Second job periodic
of t2
Synchronous
delayed
situation
by one unit
from [Bar07]
Need to find pessimistic situations to
derive sufficient schedulability tests
19/05/2008
Marko Bertogna - PhD dissertation
22
Introducing the interference
Ik = Total interference suffered by task tk
Iki = Interference of task ti on task tk
CPU3
CPU2
CPU1
rk
tk
Ik3
Ik2
Ik4
Ik1
Ik5
Ik3
tk
Ik3
Ik6
Ik5
Ik2
Ik7 Ik8
I ki ( Rk )
I k ( Rk )
m
tk
rk+Rk
1
i
Rk Ck I k ( Rk ) Ck I k ( Rk )
m i k
19/05/2008
Marko Bertogna - PhD dissertation
23
Limiting the interference
It is sufficient to consider at most the portion (Rk-Ck+1)
of each term Iik in the sum
CPU3
CPU2
CPU1
tk
Ik3
Ik2
Ik4
Ik1
Ik5
Ik3
tk
Ik3
Ik6
Ik5
Ik2
Ik7 Ik8
tk
rk+Rk
rk
I (Rk ) I k (Rk ) Rk Ck 1
i
k
It can be proved that WCRTk is given by the fixed point of:
1
i
Rk Ck min(I k ( Rk ), Rk Ck 1)
m i k
19/05/2008
Marko Bertogna - PhD dissertation
24
Bounding the interference
Exactly computing the interference is complex
1.
Pessimistic assumptions:
Bound the interference of a task with the
workload:
I ( Rk ) Wi ( Rk )
i
k
2.
Use an upper bound on the workload.
19/05/2008
Marko Bertogna - PhD dissertation
25
Bounding the workload
Consider a situation in which:
The first job executes as close as possible to its deadline
Successive jobs execute as soon as possible
Di
ti
Ci
Ti
Ci
Ci
εi
Ci
L
Wi ( L) wi ( L) Ni ( L)Ci i ( L)
where:
19/05/2008
L Di Ci (# jobs excluded the last one)
N i ( L)
T
i
i ( L) min(Ci , Li Di Ci Ni ( L)Ti ) (last job)
Marko Bertogna - PhD dissertation
26
RTA for generic global schedulers
An upper bound on the WCRT of task k is given
by the fixed point of Rk in the iteration:
1
Rk Ck min(wi ( Rk ), Rk Ck 1)
m i k
Rk
Sk
The slack of task k is at least:
19/05/2008
Sk Dk Rk
Marko Bertogna - PhD dissertation
27
Improvement using slack values
Consider a situation in which:
The first job executes as close as possible to its deadline
Successive jobs execute as soon as possible
Di
ti
Ci
Ti
Ci
Ci
εi
Ci
L
Wi ( L) wi ( L) Ni ( L)Ci i ( L)
where:
19/05/2008
L Di Ci (# jobs excluded the last one)
N i ( L)
T
i
(last job)
i ( L) min(Ci , Li Di Ci Ni ( L)Ti )
Marko Bertogna - PhD dissertation
28
Improvement using slack values
Consider a situation in which:
The first job executes as close as possible to its deadline
Successive jobs execute as soon as possible
ti
Si
Ci
Di
Ti
Ci
Ci
Ci
L
Wi ( L) wi ( L, Si ) Ni ( L, Si )Ci i ( L, Si )
where:
19/05/2008
L Di Ci Si
N i ( L, Si )
T
i
i (L, Si ) min(Ci , Li Di Ci Si Ni ( L, Si )Ti )
Marko Bertogna - PhD dissertation
29
RTA for generic global schedulers
An upper bound on the WCRT of task k is given
by the fixed point of Rk in the iteration:
1.
2.
1
Rk Ck min(wi ( Rk , Si ), Rk Ck 1)
m i k
Sk Dk Rk
If a fixed point Rk ≤ Dk is reached for every task k in the
system, the task set is schedulable with any workconserving global scheduler.
19/05/2008
Marko Bertogna - PhD dissertation
30
Iterative schedulability test
1.
2.
All slacks initialized to zero
Compute slack lower bound for tasks 1,…,n
3.
4.
5.
if higher than old value update slack bound
If lower, do nothing
If all tasks have a positive slack lower bound
return success
If no slack has been updated for tasks 1,…,n
return fail
Otherwise, return to point 2
19/05/2008
Marko Bertogna - PhD dissertation
31
RTA refinement for Fixed Priority
The interference on higher priority tasks is
always null:
I ( Rk ) 0, i k
i
k
1.
2.
An upper bound on the WCRT of task k can
be given by the fixed point of Rk in the
iteration:
1
Rk Ck min(wi ( Rk , Si ), Rk Ck 1)
m i k
Sk Dk Rk
19/05/2008
Marko Bertogna - PhD dissertation
32
RTA refinement for EDF
A different bound can be derived analyzing the
worst-case workload in a situation in which:
The interfering and interfered tasks have a common deadline
All jobs execute as late as possible
I (Rk ) wi(Rk , Si )
i
k
An upper bound on the WCRT of task k is given
by the fixed point of Rk in the iteration:
1
1. Rk Ck min(wi ( Rk , Si ), wi( Dk , Si ), Rk Ck 1)
m i k
2.
Sk Dk Rk
19/05/2008
Marko Bertogna - PhD dissertation
33
Complexity
Pseudo-polynomial complexity
Fast average behavior
Lower complexity for Fixed Priority systems
We verified the schedulability of millions of task sets
in a few minutes on a normal device.
at most one slack update per task, if slacks are
updated in decreasing priority order.
Possible to reduce complexity limiting the
number of rounds
19/05/2008
Marko Bertogna - PhD dissertation
34
Polynomial complexity test
A simpler test can be derived avoiding the
iterations on the response times
A lower bound on the slack of tk is given by:
The iteration on the slack values is the same
Performances comparable to RTA-based test
Complexity down to O(n2)
19/05/2008
Marko Bertogna - PhD dissertation
35
Experimental results for EDF
task sets
Total task sets
I-BCL EDF
Goossens et al.’03
Baker et al.’07
Bertogna et al.’05
generated • 2 processors
task sets
• Constrained
deadlines
our test
• 1.000.000
task sets
generated
Improvement over
existing solutions
19/05/2008
Bertogna - PhD dissertation
TaskMarko
set utilization
• Our test is
constantly
superior at all
utilizations
36
Experimental results for FP
task sets
Total task sets
I-BCL FP
Bertogna et al.’05
Baker et al.’07
Density bound
generated • 2 processors
task sets
• Constrained
deadlines
our test
• 1.000.000
task sets
generated
• Our test is
constantly
superior at all
utilizations
19/05/2008
Bertogna - PhD dissertation
TaskMarko
set utilization
37
FP vs EDF
task sets
Total task sets
I-BCL FP
Baker et al.’07
I-BCL EDF
Goossens et al.’03
generated • 4 processors
task sets
• Constrained
deadlines
our FP test
our EDF test
• 1.000.000
task sets
generated
• our FP test is
constantly
superior to all
tests at every
utilization
19/05/2008
Bertogna - PhD dissertation
TaskMarko
set utilization
38
Conclusions
Multiprocessor Real-Time systems are a
promising field to explore.
Still few existing results far from tight conditions.
We contributed filling this gap.
Future work:
Find tighter schedulability tests.
Use our techniques to analyze the efficiency of other
scheduling algorithms (EDZL, EDF-US, FP-DS, etc).
Take into account exclusive resources access.
Integrate into Resource Reservation framework.
19/05/2008
Marko Bertogna - PhD dissertation
39
The end
19/05/2008
Marko Bertogna - PhD dissertation
40
Other research activities
Limited-preemption EDF
Reducing Resource Holding Times
Shared resources and open
environments
19/05/2008
Marko Bertogna - PhD dissertation
41
ARM’s MPcore
19/05/2008
Marko Bertogna - PhD dissertation
42
Frequency and power
f = operating frequency
V = supply voltage (V~=0.3+0.7 f)
Ileak = leakage current (becomes non-negligible)
P = Pdynamic + Pstatic = power consumed
Reducing the voltage causes a higher frequency
reduction
Pdynamic ACV2f (main contributor until hundreds nm)
Pstatic VIleak (always present, due to subthreshold and
gate-oxide leakage)
Reducing V allows a quadratic reduction of Pdynamic
19/05/2008
Marko Bertogna - PhD dissertation
43
Power density
Power Density (W/cm2)
10000
Rocke
tNozzle
1000
Nuclear
Reactor
100
8086
10 4004
Hot Plate
P6
8008 8085
Pentium® proc
386
286
486
8080
1
1970
19/05/2008
1980
1990
Year
2000
Marko Bertogna - PhD dissertation
2010
44
How many cores in the future?
Intel’s 80 core prototype already available
19/05/2008
Able to transfers a TB of data/s (Core 2 Duo reaches
1.66GB data/s)
To be released in 5 years
Marko Bertogna - PhD dissertation
45
Beyond 2 billion transistors/chip
Intel’s Tukwila
Itanium based
2.046 B FET
Quad-core
65 nm technology
2 GHz on 170W
30 MB cache
2 SMT 8 threads/ck
19/05/2008
Marko Bertogna - PhD dissertation
46
Intel’s timeline
Year
1971
1972
1974
1978
1979
1982
1985
1989
1993
1995
1997
1999
2000
2002
2005
2006
2007
2008
19/05/2008
Processor
4004
8008
8080
8086
8088
286
386
486
Pentium
Pentium Pro
Pentium II
Pentium III
Pentium 4
Pentium M
Pentium D
Core 2 Duo
Core 2 Quad
Core 2 Quad X
Manufacturing
Frequency
Technology
108 kHz
10 m
800 kHz
10 m
2 MHz
6 m
5 MHz
3 m
5 MHz
3 m
6 MHz
1,5 m
16 MHz
1,5 m
25 MHz
1 m
66 MHz
0,8 m
200 MHz
0,6 m
300 MHz
0,25 m
500 MHz
0,18 m
1,5 GHz
0,18 m
1,7 GHz
90 nm
3,2 GHz
65 nm
2,93 GHz
65 nm
2,66 GHz
65 nm
>3 GHz
45 nm
Marko Bertogna - PhD dissertation
Number of
transistors
2300
3500
4500
29000
29000
134000
275000
1200000
3100000
5500000
7500000
9500000
42000000
55000000
291000000
291000000
582000000
820000000
47
From 4004 (1971) to Pentium D (2005):
10 um 65 nm :
100kHz 3 GHz:
2.300291.000.000:
0.2W100W:
150 x
25000 x
125.000 x
500 x
Vdd reduced (from 5V to ~1V)
Not all MOS change state
Tech:
f:
# MOS:
P:
Great part of chip occupied by cache
f Vdd-Vtt
Ileak Vdd, 1/Vtt
19/05/2008
Marko Bertogna - PhD dissertation
48
Intel 4004 (1971)
19/05/2008
Intel Pentium IV (2000)
Marko Bertogna - PhD dissertation
49
Itanium temperature plot
19/05/2008
Marko Bertogna - PhD dissertation
50
Problems addressed
Run-time scheduling problem
Schedulability problem
t1
?
t2
t3
CPU1
CPU2
t4
CPU3
t5
19/05/2008
Marko Bertogna - PhD dissertation
51
Incandescent light bulb: 25-100 W
Compact fluorescent lights: 5-30 W
Typical car: 25 kW
Human climbing stairs: 200 W
1 kWh = 1 kW constantly supplied
for 1 h
ENEL: 0.13-0.18 €/kWh
19/05/2008
Device
Lavastoviglie
Asciuga
Biancheria
Forno Elettrico
Power
2000 W
2000 W
2000 W
Friggitrice
Elettrica
Lavatrice
Asciugacapelli
1800 W
1600 W
1300 W
Ferro da stiro
1200 W
Aspirapolvere
Forno a
microonde
1100 W
Tostapane
Robot da
cucina
800 W
Frigorifero
160 W
Televisore
50 W
Marko Bertogna - PhD dissertation
800 W
500 W
52
Density and utilization bounds
19/05/2008
Marko Bertogna - PhD dissertation
53
Uniprocessor feasibility
Deadline model
Task model
Implicit
Constrained or Arbitrary
Sporadic or
Synchronous Periodic
Linear test:
Utot ≤ 1
Unknown complexity;
Pseudo-polynomial test if Utot< 1:
EDF until Utot/(1- Utot) · max(Ti-Di)
Asynchronous Periodic
Linear test:
Utot ≤ 1
19/05/2008
Strong NP-hard;
Exponential test: EDF until 2H+Dmax+rmax
Marko Bertogna - PhD dissertation
54
Uniprocessor static priority runtime scheduling
Deadline model
Task model
Implicit
Constrained
Arbitrary
Sporadic or
Synchronous Periodic
RM
optimality
DM
optimality
Unknown complexity;
Audsley’s bottom-up algorithm
(exponential complexity)
Asynchronous
Periodic
19/05/2008
Unknown complexity;
Audsley’s bottom-up algorithm (exponential complexity)
Marko Bertogna - PhD dissertation
55
Uniprocessor static priority
feasibility
Deadline model
Task model
Implicit
Constrained
Arbitrary
Sporadic or
Synchronous
Periodic
Pseudo-polynomial
test: RM until Tmax
or RTA
Pseudo-polynomial
test: DM until Dmax
or RTA
Unknown complexity;
Audsley’s bottom-up
algorithm (exponential)
Asynchronous
Periodic
19/05/2008
Unknown
complexity
Strong NP-hard
Audsley’s bottom-up algorithm (exponential)
Marko Bertogna - PhD dissertation
56
Uniprocessor static priority
schedulability
Deadline model
Task model
Sporadic or
Synchronous Periodic
Asynchronous
Periodic
19/05/2008
Implicit
Constrained
Arbitrary
Pseudo-polynomial
simulation until Tmax
or RTA
Pseudo-polynomial
simulation until Dmax
or RTA
Unknown
complexity;
Lehoczky’s test
(exponential)
Strong NP-hard;
Simulation until 2H+rmax or other exponential tests
Marko Bertogna - PhD dissertation
57
Multiprocessor feasibility
Deadline model
Task model
Implicit
Asynchronous Periodic
19/05/2008
Arbitrary
Unknown complexity;
Synchronous periodic not a critical instant
Sporadic
Synchronous Periodic
Constrained
Linear test:
Utot ≤ m
Unknown complexity;
Horn’s algorithm in (0,H]
Unknown
complexity
Strong NP-hard
Marko Bertogna - PhD dissertation
58
Multiprocessor run-time
scheduling
Deadline model
Task model
Implicit
Sporadic
P-fair, GPS
Synchronous Periodic
Asynchronous Periodic
19/05/2008
P-fair, GPS,
LLREF, EKG, BF
Constrained
Arbitrary
Requires clairvoyance
Unknown complexity;
Clairvoyance not needed;
Horn’s algorithm in (0,H]
Unknown
complexity;
Clairvoyance
not needed
Unknown complexity;
Clairvoyance not needed
Marko Bertogna - PhD dissertation
59
Utot > m
load > m
load* > m
Not feasible
Feasibility conditions
Sufficient feasibility and
schedulability tests
Σi Ci /min(Di,Ti) ≤ m
19/05/2008
Marko Bertogna - PhD dissertation
Feasible
???
60
Multiprocessor static job priority
feasibility
Deadline model
Task model
Implicit
Sporadic
Unknown complexity
Synchronous
Periodic
Asynchronous
Periodic
19/05/2008
Constrained
Unknown complexity;
Synchronous periodic not a critical instant
Unknown complexity;
Simulation until hyperperiod for all N! job
priority assignments
Unknown complexity
Arbitrary
Unknown complexity
Strong NP-hard
Marko Bertogna - PhD dissertation
61
Multiprocessor static job priority
schedulability
Deadline model
Task model
Implicit
Sporadic
Unknown complexity
Synchronous
Periodic
Asynchronous
Periodic
19/05/2008
Constrained
Arbitrary
Unknown complexity;
Synchronous periodic not a critical instant
Unknown complexity;
Simulation until hyperperiod
Unknown complexity
Strong NP-hard
Marko Bertogna - PhD dissertation
62
Multiprocessor static priority runtime scheduling
Deadline model
Task model
Implicit
Constrained
Arbitrary
Periodic
(synchronous or
asynchronous)
Unknown complexity;
Cucu’s optimal priority assignment
Sporadic
Unknown complexity;
19/05/2008
Marko Bertogna - PhD dissertation
63
Multiprocessor static priority feasibility
Deadline model
Task model
Implicit
Constrained
Arbitrary
Sporadic
Unknown complexity;
Synchronous periodic not a critical instant
Synchronous
Periodic
Strong NP-hard;
Simulation until hyperperiod for all n! priority assignments
Asynchronous
Periodic
Strong NP-hard;
Simulation on exponential feasibility interval for all n! priority
assignments
19/05/2008
Marko Bertogna - PhD dissertation
64
Multiprocessor static priority
schedulability
Deadline model
Task model
Implicit
Constrained
Arbitrary
Sporadic
Unknown complexity;
Synchronous periodic not a critical instant
Synchronous
Periodic
Unknown complexity;
Simulation until hyperperiod
Asynchronous
Periodic
Strong NP-hard;
Simulation on exponential feasibility interval
19/05/2008
Marko Bertogna - PhD dissertation
65
RTA for Uniprocessors
For FP, the worst-case response time of a
task is given by the first instance released at
a critical instant
For EDF, it is given by an instance in a busy
interval starting with a critical instant
With these observations it is possible to
compute the WCRT of all tasks. Example: for
FP, the WCRT of a task k is given by the fixed
Rk
point of: Rk Ck
Ci
t
i hp
19/05/2008
Ti
Marko Bertogna - PhD dissertation
66
RTA refinement for EDF
i
I
Still valid the bound: k ( Rk ) wi ( Rk , Si )
A different bound can be derived analyzing the
worst-case workload in a situation in which:
The interfering and interfered tasks have a common deadline
All jobs execute as late as possible
Sii
ti
with:
and:
Ci
Di
Ti
I k (Rk ) wi(Rk , Si )
Ci
t kw( D , S ) DBF minD C , D
i
k
i
k
i
k
i Dk Di i
DBF k k
k 1Cik
i
k
19/05/2008
i
I (R ) I (D ) w
Ti
k
Ci
Ti
Si
DBF
Ci 0
EDF
i
i
k
(Dk , Si )
Marko Bertogna - PhD dissertation
67
RTA refinement for EDF
A different bound can be derived analyzing the
worst-case workload in a situation in which:
The interfering and interfered tasks have a common deadline
All jobs execute as late as possible
I ki (Rk ) wi(RSk i, Si )
ti
with:
and:
t
Di
Ti
Ci
Ci
Ci
T
i
i
i
Ci , Dk DBFk
Si
( Dk , Si ) DBFk min
w
D
i
k
k
Ci 0
Dk Di
EDF
DBF i
i 1Ci
I k(RkT)i I k (Dk ) wi (Dk , Si )
i
k
19/05/2008
Marko Bertogna - PhD dissertation
68
Polynomial complexity test
A lower bound on the slack of tk is given by:
For EDF:
For FP:
19/05/2008
Marko Bertogna - PhD dissertation
69
Limiting the number of iterations
19/05/2008
Marko Bertogna - PhD dissertation
70