Upload
carl
View
38
Download
0
Embed Size (px)
DESCRIPTION
Timed Simulation with Multiple Resource Schedulability Analysis. Yang Zhao and Slobodan Matic University of California, BerkeleyDec 10, 2004. Introduction. Embedded software for control determinism both in value and time multiple resources Simulation environment timing constraints - PowerPoint PPT Presentation
Citation preview
Timed Simulation with Multiple Resource Schedulability Analysis
Yang Zhao and Slobodan Matic
University of California, Berkeley Dec 10, 2004
Introduction
Embedded software for control determinism both in value and time multiple resources
Simulation environment timing constraints resource utilization component interactions
Multi-domain timed simulation Discreteness of software in CT domain Timed Multitasking Ptolemy domain [LL03]
Simulink RTWorkshop Model: periodic multi-rate patterns
• no fast reaction to external triggers Code: rate-monotonic schedule (almost)
• no specification and analysis of timing constraints
Motivating Example
[KHM03]
Advanced automotivecontrol applications withend-to-end deadlines
TM Software Architecture Concurrent interaction in TM actors
Atomic actors (tasks):• Task execution times (estimates)• Resource(s)
Composite actors: • Task graph• Deadline• Invocation trigger condition (pattern)
set of TM composite actors in other domain
Schedulers Static table-based
• Schedulability analysis• schedule generation off-, dispatching on-
line Dynamic priority EDF-based
• No schedulability analysis• scheduling and dispatching on-line
Schedulability Analysis
[CCLL95] Mixed-integer programming techniques Branch and Bound global scheduling
h
multiple
processors
h1
h2
h1
h2
+ no intertask
communication
1)(
)(
i i
i
tperiod
twcet
single
processor+
intertask
communication
multiple
processors
+ intertask
communication
topological order
in linear time
NP-complete
[BKS99]
set of periodic events A 8 a2 A . p(a)=T
time function :A![0,T) span constraint S: interval D=[d-,d+], integer k
event pair (a1,a2) satisfies S if d- · (a2) - (a1) + kT · d+
T=12, D=[5,7]
PESP instanceT2 R , (A,E), d+,d-:E![0,T)
PESP algorithm [SU89] find minimum spanning tree of (A,E) successively satisfy constraints on each chord of the tree
• otherwise find blocking cycle with tight constraints
Periodic Event Scheduling Problem (PESP)
2
0
3
76
9
5
1
PESP solution
:A![0,T), k:E! Z
20
3
76
9
5
1
k=0 k=1
Static TM Model Scheduling
Invocation pattern known All release times known and periodic
t(a) execution time, r(a) resource ! (a) start time in [0,T)
two types of span constraints mutual exclusion: 8 a1,a2. 8 r2 R. r(a1)=r(a2)
• t(a1) · (a2)-(a1)+k(a1,a2)T· T-t(a2)
precedence constraint for each path of task graph • t(ai) · (ai+1)-(ai)+k(ai,ai+1)T· t(ai)+D, D=T-i=1: nt(ai)
• t(an) · (a1)-(an)+(1-i=1: n-1k(ai,ai+1))T· t(an)+D
Multi-rate solution:
Deadline less than period: D=deadline - i=1:nt(ai) Multiple (exclusive) resources
],[ ba],[ ba ],[ ba
],[ TT
],[ TT
T T2
Static TM Demo
This demo uses a TMController to control a Car model to drive at the Cruise Speed. The TM model contains tasksperiodically execute on a set of computing resources (processes). A PESPScheduler is used to statically check whether the TM model is schedulable for a given period and schedule the execution of these tasks.
Invocation pattern unknown task release times determined by model execution task execution order dynamic and suboptimal
• deadline miss detection
Composite end-to-end deadline Deadline assignment (distribution) for intermediate tasks
Maximize minimal laxity: Li = [Di - j=1:n t(aj)]/n
Assign deadlines whenever composite actor is triggeredUse Earliest Deadline First strategy on each resource
Dynamic TM Model Scheduling
1T250
2T200
3T150
4T150
5T200
2000D
1T250
2T200
3T150
4T150
5T200
550
1050
1500
2000
1T250
2T200
3T150
4T150
5T200
550
1050
1500
2000
1050
Some tasks are preempted
Compare to the periodic demo, the TM model here is not periodically executed: some input happens randomlly. The TM model is executed when it istriggered by an event. When it is triggered, it calcultes deadlines for related tasks. In this case, a task is released when it receives an event and an EDF scheduler is used to schedule the released tasks on the computing resource.
Dynamic TM Demo
TM with Multi-Resources in Ptolemy
Several scheduling algorithm is implemented.
Support modeling and simulation with multi-resources (processes).
Refactor the Director to several modules:
Director
Scheduler
Resource
ExecutionTime Estimator
XXX
<<Interface>>
Sceduler
+GenerateSchedule()
+Schedule()
PESPScheduler
SimpleSchedulerTMDirector
EDFScheduler<<Interface>>
Resource
+available()
ComputingResource
TM with Multi-Resources in Ptolemy
+execute()
AtomicActor