Download presentation
Presentation is loading. Please wait.
1
Timed Simulation with Multiple Resource Schedulability Analysis Yang Zhao and Slobodan Matic University of California, BerkeleyDec 10, 2004
2
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
3
Motivating Example [KHM03] Advanced automotive control applications with end-to-end deadlines
4
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
5
Schedulability Analysis [CCLL95] Mixed-integer programming techniques Branch and Bound global scheduling multiple processors + no intertask communication single processor + intertask communication multiple processors + intertask communication topological order in linear time NP-complete [BKS99]
6
set of periodic events A 8 a 2 A. p(a)=T time function : A ! [0,T) span constraint S: interval D=[d -,d + ], integer k event pair (a 1,a 2 ) satisfies S if d - · (a 2 ) - (a 1 ) + kT · d + T=12, D=[5,7] PESP instance T 2 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) PESP solution : A ! [0,T), k:E ! Z k=0 k=1
7
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 a 1,a 2. 8 r 2 R. r(a 1 )=r(a 2 ) t(a 1 ) · (a 2 )- (a 1 )+k(a 1,a 2 )T · T-t(a 2 ) precedence constraint for each path of task graph t(a i ) · (a i+1 )- (a i )+k(a i,a i+1 )T · t(a i )+D, D=T- i=1: n t(a i ) t(a n ) · (a 1 )- (a n )+(1- i=1: n-1 k(a i,a i+1 ))T · t(a n )+D Multi-rate solution: Deadline less than period:D=deadline - i=1:n t(a i ) Multiple (exclusive) resources
8
Static TM Demo This demo uses a TMController to control a Car model to drive at the Cruise Speed. The TM model contains tasks periodically 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.
9
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: L i = [D i - j=1:n t(a j )]/n Assign deadlines whenever composite actor is triggered Use Earliest Deadline First strategy on each resource Dynamic TM Model Scheduling
10
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 is triggered 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
11
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
12
> Sceduler +GenerateSchedule() +Schedule() PESPScheduler SimpleScheduler TMDirector EDFScheduler > Resource +available() ComputingResource TM with Multi-Resources in Ptolemy +execute() AtomicActor
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.