1 / 30

Scheduling and Communication Synthesis for Distributed Real-Time Systems

Scheduling and Communication Synthesis for Distributed Real-Time Systems. Paul Pop. Department of Computer and Information Science Linköpings universitet. Outline. Motivation System Model and Architecture

kat
Download Presentation

Scheduling and Communication Synthesis for Distributed Real-Time Systems

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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Scheduling and Communication Synthesis for Distributed Real-Time Systems Paul Pop Department of Computer and Information ScienceLinköpings universitet

  2. Outline • Motivation • System Model and Architecture • Scheduling and Communication Synthesis Time Driven Systems Event Driven Systems • Real Life Example • Conclusions

  3. Embedded Systems General purpose systems Embedded systems Microprocessor market shares in 1999

  4. Distributed Real-Time Systems • Safety critical applications (e.g. Drive-by-Wire):  timing constraints, data and control dependencies. • Communication protocols: Time Triggered Protocol (TTP), Controller Area Network (CAN). • Scheduling of processes and communication of messages: guaranteeing timing constraints.

  5. Hardware/Software Codesign Goals of the thesis: • Scheduling... Scheduling of processes and messages for distributed hard real-time applications with control and data dependencies in the context of a given communication protocol. • Communication synthesis... Optimization of the parameters of the communication protocol so that the overall system performance is increased and the imposed timing constraints are satisfied. SystemSpecification Architecture Selection Partitioning Scheduling Hardware Synthesis Software Synthesis Integration

  6. Related Work • Scheduling: Static cyclic non-preemptive scheduling:P. Eles, G. Fohler, D. D. Gajski, H. Kasahara, H. Kopetz, K. Kuchcinski, J. Madsen, J. Xu. Fixed priority preemptive scheduling:J. Axelsson, S. Baruah, A. Burns, J. W. Layland, C. L. Liu, K. Tindell, J. A. Stankovic, , W. Wolf , T. Y. Yen. • Communication synthesis:G. Borriello, R. Ernst, H. Hansson, J. Madsen, R. B. Ortega, K. Tindell.

  7. Characteristics and Message • Distributed hard real-time applications. • Heterogeneous system architectures. • Systems with data and control dependencies. • Scheduling of processes: Time triggered: Static cyclic non-preemptive scheduling, Event triggered: Fixed priority preemptive scheduling. • Communications using the time-triggered protocol (TPP). • The performance of the system can be significantly improved by considering the communication protocol and the control dependencies during scheduling.

  8. Outline • Motivation • System Model and Architecture • Scheduling and Communication Synthesis Time Driven Systems Event Driven Systems • Real Life Example • Conclusions

  9. Subgraph corresponding to DCK P0 P1 P11 P2 P3 K C D C P12 P6 P14 P16 P8 P9 P17 P10 P18 Conditional Process Graph (CPG) P0 P1 P11 D P2 P3 C P12 P13 P6 K P4 P5 P14 P16 P8 P9 P15 P7 P17 P10 First processorSecond processorASIC P18

  10. I/O Interface RAM ROM CPU ASIC TTP Controller Node Hardware Architecture  Hard real-time distributed systems.  Nodes interconnected by a broadcast communication channel.  Nodes consisting of: TTP controller, CPU, RAM, ROM, I/O interface.  Communication between nodes is based on the time-triggered protocol.

  11. I/O Interface RAM ROM CPU ASIC TTP Controller Node • Bus access scheme: time-division multiple-access (TDMA). • Schedule table located in each TTP controller: message descriptor list (MEDL). S0 S1 S2 S3 S0 S1 S2 S3 Slot TDMA Round Cycle of two rounds Time Triggered Protocol • H. Kopetz, Technical University of Vienna. • Intended for distributed real-time control applications that require high degree of dependability and predictability. • Recommended by the X-by-Wire Consortium for use in safety critical applications in vehicles. • Integrates all the services required in the design of fault-tolerant distributed real-time systems.

  12. Outline • Motivation • System Model and Architecture • Scheduling and Communication Synthesis Time Driven Systems Event Driven Systems • Real Life Example • Conclusions

  13. Time Triggered Processes Problem Formulation • Input • Safety-critical application with several operating modes. • Each operating mode is modelled by a CPG. • The system architecture and mapping of processes to nodes are given. • The worst case delay of each process is known. • Output • Local schedule tables for each node and the MEDL for the TTP controllers. • Delay on the system execution time for each operating mode, so that this delay is as small as possible. • Note • Processes scheduled with static cyclic non-preemptive scheduling, and messages according to the TTP.

  14. P1 P4 24 ms P3 P2 m3 m4 P1 S1 S0 m1 m2 Round 1 Round 2 Round 3 Round 4 Round 5 m1 m2 P1 P4 P3 P2 22 ms P2 P3 m3 m4 m1 S0 S1 m2 Round 1 Round 2 Round 3 Round 4 m3 m4 P4 P4 P1 20 ms P3 P2 m3 m4 m1 m2 S0 S1 Round 1 Round 2 Round 3 Scheduling Example

  15. Scheduling Strategy 1. The scheduling algorithm has to take into consideration the TTP.  Priority function for the list scheduling. 2. The optimization of the TTP parameters is driven by the scheduling.  Sequence and lengths of the slots in a TDMA round are determined to reduce the delay.  Two approaches: Greedy heuristic, Simulated Annealing (SA).  Two variants: Greedy 1 tries all possible slot lengths, Greedy 2 uses feedback from the scheduling algorithm.  SA parameters are set to guarantee near-optimal solutions in a reasonable time.

  16. Experimental Results Deviations from the near-optimal schedule lengths obtained by SA: Average Percentage Deviation [%] Number of processes

  17. Outline • Motivation • System Model and Architecture • Scheduling and Communication Synthesis Time Driven Systems Event Driven Systems • Real Life Example • Conclusions

  18. Event Triggered Processes Problem Formulation • Input • An application modelled using conditional process graphs. • Each process has an execution time, a period, a deadline, and a priority. • The system architecture and mapping of processes are given. • Output • Schedulability analysis for systems modelled using CPGs. • Schedulability analysis for the time-triggered protocol. • The MEDL for the TTP controllers so that the process set is schedulable on an as cheap (slow) as possible processor set. • Note • Processes scheduled with fixed priority preemptive scheduling, and messages according to the TTP.

  19. P0 P1 27 P9 C P6 30 C P2 30 P3 25 P11 P10 25 32 24 P4 P7 22 P12 19 P5 G2: 150 P8 G1: 200 Example Deadline: 110

  20. Ignoring Conditions Conditions Separation Relaxed Tightness 1 Relaxed Tightness 2 Brute Force Experimental Results Cost function: degree of schedulability 100 80 60 Average Percentage Deviation [%] 40 20 0 80 160 240 320 400 Number of processes

  21. Experimental Results (Cont.) 450 Brute Force 360 270 Average execution time [s] 180 Ignoring Conditions 90 Relaxed Tightness 2 Conditions Separation Relaxed Tightness 1 0 80 160 240 320 400 Number of processes

  22. Scheduling of Messages over TTP messages are dynamically produced by the processes frames are statically determined by the MEDL m1 m2 m3 m4 m5 S0 S1 Round 1 Round 2 Round 3 1. Single message per frame, allocated statically: Static Single Message Allocation (SM) 2. Several messages per frame, allocated statically: Static Multiple Message Allocation (MM) 3. Several messages per frame, allocated dynamically: Dynamic Message Allocation (DM) 4. Several messages per frame, split into packets, allocated dynamically Dynamic Packets Allocation (DP)

  23. Ad-hoc Single Message Dynamic Message Dynamic Packets Multiple Messages Experimental Results Cost function: degree of schedulability 16 12 Average Percentage Deviation [%] 8 4 0 80 160 240 320 400 Number of processes

  24. Process p2 misses its deadline! Swapping m1 with m2:all processes meet their deadlines. p1 p1 p2 p2 p3 p3 Putting m1 and m2 in the same slot:all processes meet their deadline,the communication delays are reduced. m1 m1 m2 m2 Optimizing Bus Access (SM and MM) p1 p2 p3 m1 m2

  25. Initialization:the size of a slot in a TDMA roundhas to accommodate the largestmessage sent by the corresponding node. Greedy heuristic: finds the local optimum for each slot. Local optimum:find the best size for this slot,the size that leads to the“best so far” cost function. OptimizeDM OptimizeDM for each node Nido MinSizeSi = max(size of messages mj sent by node Ni) end for for each slot Si BestSizeSi = MinSizeSi for each SlotSize in [MinSizeSi...MaxSize] do calculate the CostFunction if the CostFunction is best so far then BestSizeSi = SlotSizeSi end if end for sizeSi = BestSizeSi end for end OptimizeDM OptimizeDM: Find the slot sizes that maximize the “degree of schedulability” for each node Nido MinSizeSi = max(size of messages mj sent by node Ni) end for for each slot Si BestSizeSi = MinSizeSi for each SlotSize in [MinSizeSi...MaxSize] do calculate the CostFunction if the CostFunction is best so far then BestSizeSi = SlotSizeSi end if end for sizeSi = BestSizeSi end for end OptimizeDM

  26. Average percentage deviations [%] Number of processes Experimental Results The quality of the greedy optimization heuristics:

  27. Outline • Motivation • System Model and Architecture • Scheduling and Communication Synthesis Time Driven Systems Event Driven System • Real Life Example • Conclusions

  28. Vehicle cruise controller. • Modelled with a CPG of 32 processes and two conditions. • Mapped on 5 nodes: CEM, ABS, ETM, ECM, TCM. Real Life Example • Time triggered processes: (deadline 400 ms) Ad-hoc: 429 ms Greedy 1: 314 ms Greedy 2: 323 ms SA: 302 ms • Event triggered processes: (no messages, deadline 130 ms) Ignoring Conditions: 138 ms Conditions Separation: 132 ms Relaxed Tightness 1, 2: 124 ms Brute Force: 124 ms

  29. Conclusions and Future Work Time triggered processes: • Extension to static scheduling for CPGs to handle TTP. • Improved schedule quality by using new priority function that considers the time triggered protocol. • Significant performance improvements can be obtained by optimizing the access to the communication channel. Event triggered processes: • Schedulability analysis with the TTP: four message scheduling approaches compared based on the issue of schedulability. • Significant improvements to the “degree of schedulability” through the optimization of the bus access scheme. • The pessimism of the analysis can be drastically reduced by considering the conditions. Mapping of processes and architecture selection.

  30. Contributions Time triggered processes: • Static scheduling strategy for systems with both control and data dependencies. • Optimization strategies for the synthesis of the bus access scheme. Event triggered processes: • Less pessimistic schedulability analysis for hard real-time systems with both control and data dependencies • Schedulability analysis for the time-triggered protocol. • Optimization strategies for the synthesis of the bus access scheme.

More Related