Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen EPOC – Embedded Performance Analysis for Organic Computing Steffen Stein , Moritz Neukirchner, Rolf Ernst, 08.10.2010
Outline • Project Reminder • Selected Topics of this year‘s work • Dissemination • Conclusion October 8, 2010 | Steffen Stein | Runtime Verification and Management of Real-time Applications | Folie 2
Reminder: Demonstrator October 8, 2010 | Steffen Stein | Runtime Verification and Management of Real-time Applications | Folie 3
Reminder - Contracting application 1 application n Software has to declare its behavior , request assert contract requirements and constraints The system verifies itself based on contracting interface software description and platform capabilities The system supervises adherence of the RTE software to its descriptions contracting interface ⇒ The system protects itself from infeasible configuration specification contract changes CPU CPU October 8, 2010 | Steffen Stein | Runtime Verification and Management of Real-time Applications | Folie 4
Architectural Approach Application code & model Contract interface Update contract Controller RTE code model Controller Task Task Controller Model-based Contract Task Task Optimization model Negotiation contract Contract configuration metrics Enforcement metrics contract model execution violation metrics Contract Model-based Repository Analysis Observer Contract contract Supervision Model domain Execution domain Observer October 8, 2010 | Steffen Stein | Runtime Verification and Management of Real-time Applications | Folie 5
Open Problems Testcase Generation Mode Application code & model Change Protocol Contract interface Update contract Controller RTE code Suitable Heuristics model Task Task Model-based Contract Task Task Optimization model Negotiation contract Contract configuration metrics Enforcement metrics contract model Bounded Time execution violation Algorithm metrics Contract Model-based Isolation Repository Analysis Contract contract Supervision Model domain Execution domain Convergence Detection October 8, 2010 | Steffen Stein | Runtime Verification and Management of Real-time Applications | Folie 6
1 2 Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Analysis in Bounded Time ECRTS'2010: "A polynomial time algorithm for computing response time bounds in static priority scheduling with convex event models"
Performance Analysis in Bounded Time • Based on Proof of Convergence • Analysis States form Discrete Chain • Bound on Reachable States Number of Analysis Steps Bounded • Bound Computational Time needed for each step • Last Year: Properties of Busy-Window Algorithms • This Year: Novel Polynomial Time Algorithm October 8, 2010 | Steffen Stein | Runtime Verification and Management of Real-time Applications | Folie 8
Schedulability in Polynomial Time Workload Bound 1 1 Inaccuracy C C 2 t C 1 d d Bound 2 C JC C t t C ( 1 ) T T T Δ t d T October 8, 2010 | Steffen Stein | Runtime Verification and Management of Real-time Applications | Folie 9
Novel Algorithm 1. Aggregate Workload Bounds + + = 3. Invert – Time needed for Service 2. Spare Capacity/Time - = 4. Response-Time = Time Needed for Service – Minimum Interarrival Time Maximum through Candidates - = October 8, 2010 | Steffen Stein | Runtime Verification and Management of Real-time Applications | Folie 10
Results Prior Art This Algorithm October 8, 2010 | Steffen Stein | Runtime Verification and Management of Real-time Applications | Folie 11
Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Mode Change Protocols SORT'2010: "Consistency Challenges in Self-Organizing Distributed Hard Real-Time Systems"
The Problem of Dependant Tasks (Echo Effect) Echo Effect described by Henia et al. (RTSS 2007) CPU 2 Consider Removal of Red Task 1. WCRT of lower priority tasks decrease 2. Output Jitter of T2 decreases 3. Output Jittter of T1 decreases 4. WCRT of T0 decreases J W T0 T1 J Potential Cyclic Dependencies W T2 Settling time Unknown CPU 3 W CPU 1 October 8, 2010 | Steffen Stein | Runtime Verification and Management of Real-time Applications | Folie 13
Mode Changes – Identified Open Challenges Before During After Global Asynchronous/ Locally Asynchronous (GALA) Tasks may be started at any time Easy to Implement Load Peaks Globally Synchronous/ Locally Synchronous (GSLS) Before During After Wait for Effects on System Timing to cease before starting tasks No Load Peaks Requires state Synchronization Globally Asynchronous/ Locally Synchronous (GALS) Wait for Effects on Local Timing to cease before Before During After starting tasks Tradeoff between GALA/GALS?
Protocol Analysis: GALA WCRT CPU 2 Settle? Protocol WCRT trans WCRT steady,2 CPU 3 WCRT steady,1 CPU 1 t sw,start t sw,end t t steady October 8, 2010 | Steffen Stein | Runtime Verification and Management of Real-time Applications | Folie 15
Solution: ModeWaves See DFG Project "Szenarien in vernetzten Multicore-Systemen – Analyse und Optimierung" (ER 168/23-1)
1 0,8 DCS DCS DCS Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen 0,6 0,4 0,2 DPA DPA DPA 0 0.00 0.05 0.10 0.15 0.20 0.25 0.30 0.35 0.40 0.45 0.50 0.55 0.60 0.65 0.70 0.75 0.80 0.85 0.90 0.95 1.00 1 Heuristic Distributed Self-Configuration
Heuristic Distributed Self-Configuration Objective: Find a priority assignment on all processors and busses, such that all end-to-end path latency constraints are satisfied. Constraint: No resource has a complete view of the system model. τ 4 τ 3 τ 4 τ 3 Comm. τ 2 τ 1 τ 2 τ 1 Proc. 2 Proc. 1 Proc. 2 Proc. 1 Priorities? Priorities? October 8, 2010 | Steffen Stein | Runtime Verification and Management of Real-time Applications | Folie 18
Heuristic Distributed Self-Configuration Approach: Extend each instance of the Distributed Performance Analysis Algorithm with an instance of a heuristic distributed constraint solver Distributed Constraint Solver (DCS) DCS DCS DCS instance instance instance Worst-case New Priority Timing Assignment Information DPA DPA DPA instance instance instance Distributed Performance Analysis (DPA) October 8, 2010 | Steffen Stein | Runtime Verification and Management of Real-time Applications | Folie 19
Heuristic Distributed Self-Configuration • Heuristic based on gradient search • Metric based on path constraint violation and task worst-case response time ⇒ No explicit communication required between DCS instances • Oscillations in exploration process can occur in distributed concurrent execution τ 4 τ 3 τ 2 τ 1 Proc. 2 Proc. 1 October 8, 2010 | Steffen Stein | Runtime Verification and Management of Real-time Applications | Folie 20
Heuristic Distributed Self-Configuration • Analysis shows that oscillation is indeed an issue Search Space Coverage histogram 1 0,9 0,8 0,7 Frequency 0,6 0,5 0,4 0,3 0,2 0,1 0 0.00 0.05 0.10 0.15 0.20 0.25 0.30 0.35 0.40 0.45 0.50 0.55 0.60 0.65 0.70 0.75 0.80 0.85 0.90 0.95 1.00 1 Unique Configurations/Analyzed Configurations • Introduction of a lazy threshold that prevents execution of single DCS instances to break loop of oscillations October 8, 2010 | Steffen Stein | Runtime Verification and Management of Real-time Applications | Folie 21
Heuristic Distributed Self-Configuration • Comparison to a design-time genetic algorithm as benchmark Number of solvable testcases solved 0% 25% 50% 75% 100% Small Systems Large Systems Search Space Coverage Histogram Runtime relative to genetic algorithm 0,5 1 0,9 avg. 7.35 0,4 0,8 0,7 Frequency Frequency 0,3 0,6 0,5 0,4 0,2 0,3 0,2 0,1 0,1 0 0 1 0.00 0.05 0.10 0.15 0.20 0.25 0.30 0.35 0.40 0.45 0.50 0.55 0.60 0.65 0.70 0.75 0.80 0.85 0.90 0.95 1.00 -1000 -100 -10 - equal 10 100 1000 1 1 Unique Configurations/Analyzed Configurations Improvement w.r.t. # of analysis runs vs. GA October 8, 2010 | Steffen Stein | Runtime Verification and Management of Real-time Applications | Folie 22
Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen System Models For Free: SMFF Available soon on sourceforge.net
System Models For Free: SMFF • When evaluating heuristic optimization algorithms a large number of testcases is required. • Testcase system models are not available for distributed realtime systems • SMFF: Tool for pseudo-random generation of testcase system models Structural Definition Real-Time Property Definition Platform Model Generation Application Model Generation Constraint Definition Assignment of Timing Application Mapping Constraints Assignment of Scheduling Assignment of Timing Parameters Properties October 8, 2010 | Steffen Stein | Runtime Verification and Management of Real-time Applications | Folie 24
Recommend
More recommend