110 likes | 245 Views
An On-line Approach to Reduce Delay Variations on Real-Time Operating Systems. Shengyan Hong. Problem. Reduce Delay Variations of Tasks. Why Important?. Delay Variations degrade hardware performance, e.g. sluggish response, erroneous behavior. Task Model.
E N D
An On-line Approach to Reduce Delay Variations on Real-Time Operating Systems Shengyan Hong
Problem • Reduce Delay Variations of Tasks
Why Important? • Delay Variations degrade hardware performance, e.g. sluggish response, erroneous behavior.
Task Model • Original Task Model (Ci, Di, Pi) • IMF Task Model • initial subtask (Cii, Dii, Pi, Oii=0) • mandatory subtask (Cim, Dim, Pi, Oim=0) • final subtask (Cif, Dif, Pi, Oif) • ADR Task Model • initial subtask (Cii, Diinew, Piinew=Pi/Mi) • mandatory subtask (Cimnew, Dimnew, Pi) • C* represents execution time, D* represents deadline, P* represents period, O* represents release time.
A Trick in Problem • Suppose we have a task in original model, how to split mandatory subtask in IMF model to form ADR model? • Example, a task (Ci=5000,Di=27000,Pi=27000), and Cii and Cif consumes 10% of Ci, • The optimal scheme is to cut 8 splits from the mandatory subtask in IMF model. The constraints (1), (2) and (3) help us get it. (1) (2) (3)
Quadratic Programming Problem Objective Function: (4) ,where each term is an approximation of . (5) Schedulability Constraint or Constraints (5), (6), (7) guarantees the correct running of Real-Time Operating Systems. (6) Deadline Constraints (7)
ADR Algorithm Flow Adjust deadlines of mandatory subtasks, and search a new solution, and the process is repeated until the algorithm converges. Search an initial feasible solution with optimal model transformation. For any fixed deadlines of mandatory subtasks, compute an updated feasible solution, i.e. deadlines of initial subtasks.
Initial Results • A custom simulator by C running on Linux • A task set with first two tasks decomposable • Compare results with original Delay Variations, and two representative methods • The smaller DV, the better the method is. • When workload changes, see which method can adapt to it.
The Road Ahead • If initial subtask and final subtask do not have the same execution time, what to do? • If mandatory subtask can not be divided, what to do? • Test more task sets in the simulator. • Show the performance of the proposed approach and the existing methods.
Second Trick in Problem • Deadline constraints (6) and (7) incorporate the subtask dependencies to schedulability test without being overly pessimistic. • From (6), we can derive another constraint for Mi . (6) (7) (8)