Presentation is loading. Please wait.

Presentation is loading. Please wait.

Flexible Scheduling of Software with Logical Execution Time Constraints* Stefan Resmerita and Patricia Derler University of Salzburg, Austria *UC Berkeley,

Similar presentations


Presentation on theme: "Flexible Scheduling of Software with Logical Execution Time Constraints* Stefan Resmerita and Patricia Derler University of Salzburg, Austria *UC Berkeley,"— Presentation transcript:

1 Flexible Scheduling of Software with Logical Execution Time Constraints* Stefan Resmerita and Patricia Derler University of Salzburg, Austria *UC Berkeley, USA

2 RePP: Flexible Scheduling of LET Software October 14, Introduction Scope: Embedded software aplications –Set of periodic tasks with predictable timing behavior –Preemptive scheduling –Event-triggered tasks Problem: Predictability is achieved by restricting the set of feasible schedules Aim: Relax scheduling restrictions while preserving predictability

3 RePP: Flexible Scheduling of LET Software October 14, The LET Programming Model Specification of logical execution times for tasks –Giotto, TDL, HTL, xGiotto, FTOS Implementation –Dedicated runtime system

4 RePP: Flexible Scheduling of LET Software October 14, Main Runtime Operations 1.Update outputs at LET end 2.Invoke task at LET start a)Update inputs b)Release task for execution

5 RePP: Flexible Scheduling of LET Software October 14, Scheduling High-level: scheduling of operations –Static schedule compiled into a „timing program“ –Platform independent Low-level: scheduling of task executions –Platform dependent –May use any policy (e.g., FPS, EDF) –Schedulability test uses WCET information What if the system is not schedulable?

6 RePP: Flexible Scheduling of LET Software October 14, Trade-offs Increased predictability –Separation of timing from functionality –Separation of reactivity from scheduling Platform independence –Portable timing program Performance costs –Application performance (response time) –Platform requirements (memory/time) –Processor utilization (idle time)

7 RePP: Flexible Scheduling of LET Software October 14, This Work Provides a methodology for obtaining more flexible high-level schedules Keep predictability Increase processor utilization Cost: Portability is reduced –Provide tool support

8 RePP: Flexible Scheduling of LET Software October 14, Enlarging Scheduling Margins Use more information about –Execution times of tasks –Predictability of inputs –Low-level scheduling

9 RePP: Flexible Scheduling of LET Software October 14, Common Task Structures Shared memory Internal dispatching Offsets Example (Two tasks) –Periods: 4 and 8 –Offsets: 2 and PowerOn8ms_A8ms_B16ms4ms

10 RePP: Flexible Scheduling of LET Software October 14, Case 1: Reading from Sensors Internal port p is connected to a sensor The variable p is updated at t Ls (T) δ(T,p): minimun execution time of T up to accessing p Task T can be started at time t r = t Ls (T) – δ(T,p)

11 RePP: Flexible Scheduling of LET Software October 14, Case 2: Reading from LET-Based Tasks Ports p 1 and p 2 are updated from tasks T 1 and T 2, respectively, at the end of their LETs t r =max{t Le (T 1 ) – δ(T,p 1 ), t Le (T 2 ) – δ(T,p 2 )}

12 RePP: Flexible Scheduling of LET Software October 14, Modified Operational Requirements (O1) Update task outputs at LET end (O2) Update inputs connected to sensors at LET start (O3) Update input ports connected to LET tasks at the end of the source task‘s LET (O4) Release task T at time t r  t Ls (T) such that No input port connected to a sensor is accessed before t Ls (T) Every port that is accessed before t Ls (T) has a constant value between the moment of the access and t Ls (T)

13 RePP: Flexible Scheduling of LET Software October 14, Computation of Early Release Times Formally: (1)

14 RePP: Flexible Scheduling of LET Software October 14, Main Result

15 RePP: Flexible Scheduling of LET Software October 14, Schedulability Assumption: The system with classical release times is schedulable. Question: Is the system with release margins schedulable? Answer: Depends on the underlying scheduling algorithm

16 RePP: Flexible Scheduling of LET Software October 14, Scheduling with Earliest Deadline First

17 RePP: Flexible Scheduling of LET Software October 14, Fixed-Priority Scheduling Counter-example (T 1 has higher priority): Conservative solution: use only the minimum margin Classical case: No missed deadline Early release of T 1 leads to a missed deadline for T 2

18 RePP: Flexible Scheduling of LET Software October 14, Our Approach: Dual-Priority Scheduling Assign a dual priority to each LET-based task –All dual priorities are lower than all nominal ones A task is scheduled by FPS: –With nominal priority inside its LET –With dual priority outside its LET Effect: a task is executed outside its LET only if the CPU would be otherwise idle! DP scheduling is as predictable as FPS

19 RePP: Flexible Scheduling of LET Software October 14, Mixing Events in DPS can be used in systems containing also event- triggered tasks Event-triggered tasks are always scheduled with nominal priorities Theorem 3: If event triggered tasks have lower priorities than LET-based tasks, then their response times remain the same or decrease when using release margins with DPS instead of classical release times with FPS.

20 RePP: Flexible Scheduling of LET Software October 14, Application Example Inverted pendulum:

21 RePP: Flexible Scheduling of LET Software October 14, Evaluation of DPS

22 RePP: Flexible Scheduling of LET Software October 14, Conclusions Approach for relaxed scheduling contraints Usage of execution time information beyond just WCET Employ timing predictability offered by LET to improve scheduling of the application Static scheduling, fully automatic Further work: dynamic scheduling, evaluation

23 Thank you!


Download ppt "Flexible Scheduling of Software with Logical Execution Time Constraints* Stefan Resmerita and Patricia Derler University of Salzburg, Austria *UC Berkeley,"

Similar presentations


Ads by Google