PhD thesis presentation - Algorithmic Research Group

advertisement
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
Utot1

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 ki ( Rk )  I k ( Rk )  Rk  Ck  1
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
S k  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

1. Rk  Ck    min( wi ( Rk , Si ), Rk  Ck  1)
 m i k

2.
S k  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

An upper bound on the WCRT of task k can
be given by the fixed point of Rk in the
iteration:
1

1. Rk  Ck    min( wi ( Rk , Si ), Rk  Ck  1)
 m i k

2. S k  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.
S k  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.300291.000.000:
0.2W100W:
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
 Ti 
i hp
19/05/2008
Marko Bertogna - PhD dissertation
66
RTA refinement for EDF


Still valid the bound: I ( Rk )  wi ( Rk , Si )
A different bound can be derived analyzing the
worst-case workload in a situation in which:
i
k


The interfering and interfered tasks have a common deadline
All jobs execute as late as possible
Sii
ti
with:
and:
Ci
Di
I k ( Rk )  wi( Rk , Si )
t kw( D , S )  DBF
i
DBF
k
i
k
19/05/2008
Ti
i
Ci
i
k
Dk


i Ti 
  Si 
 min Ci ,  Dk  DBFk


C
i


0


i  D  D  i 
i
k  kk
 k 1Cik
I (R )  I (D )  w

Ti

Ci

EDF
i
( 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
  Si 
( Dk , Si )  DBFk  minDk Ci ,  Dk  DBFk
w
i
k


  Dk  Di  
DBF i 
i 1Ci

I k(RkT)i  I k (Dk )
i
k
19/05/2008


w
EDF
i
Ci  0

( Dk , Si )
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
Download