Flexible scheduling of software with logical execution time constraints
Download
1 / 23

Flexible Scheduling of Software with Logical Execution Time Constraints* - PowerPoint PPT Presentation


  • 104 Views
  • Uploaded on

Flexible Scheduling of Software with Logical Execution Time Constraints*. Stefan Resmerita and Patricia Derler University of Salzburg, Austria *UC Berkeley, USA. Introduction. Scope: Embedded software aplications Set of periodic tasks with predictable timing behavior Preemptive scheduling

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Flexible Scheduling of Software with Logical Execution Time Constraints*' - ehren


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Flexible scheduling of software with logical execution time constraints

Flexible Scheduling of Software with Logical Execution Time Constraints*

Stefan Resmerita and Patricia Derler

University of Salzburg, Austria

*UC Berkeley, USA


Introduction
Introduction Constraints*

  • 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

2


The let programming model
The LET Programming Model Constraints*

  • Specification of logical execution times for tasks

    • Giotto, TDL, HTL, xGiotto, FTOS

  • Implementation

    • Dedicated runtime system

3


Main runtime operations
Main Runtime Operations Constraints*

  • Update outputs at LET end

  • Invoke task at LET start

    • Update inputs

    • Release task for execution

4


Scheduling
Scheduling Constraints*

  • 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?

5


Trade offs
Trade-offs Constraints*

  • 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)

6


This work
This Work Constraints*

  • Provides a methodology for obtaining more flexible high-level schedules

  • Keep predictability

  • Increase processor utilization

  • Cost: Portability is reduced

    • Provide tool support

7


Enlarging scheduling margins
Enlarging Scheduling Margins Constraints*

  • Use more information about

    • Execution times of tasks

    • Predictability of inputs

    • Low-level scheduling

8


Common task structures

PowerOn Constraints*

4ms

8ms_A

8ms_B

16ms

Common Task Structures

  • Shared memory

  • Internal dispatching

  • Offsets

  • Example (Two tasks)

    • Periods: 4 and 8

    • Offsets: 2 and 4

0

2

4

6

8

10

12

9


Case 1 reading from sensors
Case 1: Reading from Sensors Constraints*

  • Internal port p is connected to a sensor

  • The variable p is updated at tLs(T)

  • δ(T,p): minimun execution time of T

    up to accessing p

  • Task T can be started at time

    tr = tLs(T) – δ(T,p)

10


Case 2 reading from let based tasks
Case 2: Reading from LET-Based Tasks Constraints*

  • Ports p1 and p2 are updated from tasks T1 and T2, respectively, at the end of their LETs

    tr =max{tLe(T1) – δ(T,p1), tLe(T2) – δ(T,p2)}

11


Modified operational requirements
Modified Operational Requirements Constraints*

(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 tr tLs(T) such that

  • No input port connected to a sensor is accessed before tLs(T)

  • Every port that is accessed before tLs(T) has a constant value between the moment of the access and tLs(T)

12


Computation of early release times
Computation of Early Release Times Constraints*

  • Formally:

(1)

13


Main result
Main Result Constraints*

14


Schedulability
Schedulability Constraints*

  • Assumption:

    The system with classical release times is schedulable.

  • Question:

    Is the system with release margins schedulable?

  • Answer:

    Depends on the underlying scheduling algorithm

15



Fixed priority scheduling
Fixed-Priority Scheduling Constraints*

  • Counter-example (T1 has higher priority):

  • Conservative solution: use only the minimum margin

Classical case: No missed deadline

Early release of T1 leads to a missed deadline for T2

17


Our approach dual priority scheduling
Our Approach: Dual-Priority Scheduling Constraints*

  • 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

18


Mixing events in
Mixing Events in Constraints*

  • 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.

19


Application example
Application Example Constraints*

Inverted pendulum:

20


Evaluation of dps
Evaluation of DPS Constraints*

21


Conclusions
Conclusions Constraints*

  • 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

22


Thank you

Thank you! Constraints*


ad