EPOC Embedded Performance Analysis for Organic Computing Steffen - - PowerPoint PPT Presentation
EPOC Embedded Performance Analysis for Organic Computing Steffen - - PowerPoint PPT Presentation
Platzhalter fr 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
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
- Software has to declare its behavior,
requirements and constraints
- The system verifies itself based on
software description and platform capabilities
- The system supervises adherence of the
software to its descriptions ⇒The system protects itself from infeasible changes
RTE
CPU CPU
contracting interface
application 1 application n
request assert
contract
contracting interface configuration specification
contract
October 8, 2010 | Steffen Stein | Runtime Verification and Management of Real-time Applications | Folie 4
Architectural Approach
Execution domain
code contract
Contract Supervision Task Task Task Task
contract violation configuration execution metrics
Contract Enforcement
Model domain
Model-based Optimization Model-based Analysis
model model metrics metrics
Contract Negotiation Update Controller
Application code & model model contract contract
Contract interface
RTE
Contract Repository
Observer Controller Observer Controller
October 8, 2010 | Steffen Stein | Runtime Verification and Management of Real-time Applications | Folie 5
October 8, 2010 | Steffen Stein | Runtime Verification and Management of Real-time Applications | Folie 6
Open Problems
Execution domain
code contract
Contract Supervision Task Task Task Task
contract violation configuration execution metrics
Contract Enforcement
Model domain
Model-based Optimization Model-based Analysis
model model metrics metrics
Contract Negotiation Update Controller
Application code & model model contract contract
Contract interface
RTE
Contract Repository
Bounded Time Algorithm Suitable Heuristics Mode Change Protocol Convergence Detection Isolation Testcase Generation
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" 1 2
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
Δt
Workload d T 1 2 Inaccuracy
) 1 ( T C C t T JC t T C
Bound 1 Bound 2
d C C t d C 1
October 8, 2010 | Steffen Stein | Runtime Verification and Management of Real-time Applications | Folie 9
Novel Algorithm
+ + =
- 1. Aggregate Workload Bounds
- 2. Spare Capacity/Time
- =
- 3. Invert – Time needed for Service
- 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) 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
Potential Cyclic Dependencies Settling time Unknown
T1
CPU 1
T0 T2
CPU 3 CPU 2
J J W W W
October 8, 2010 | Steffen Stein | Runtime Verification and Management of Real-time Applications | Folie 13
Mode Changes – Identified Open Challenges
Global Asynchronous/ Locally Asynchronous (GALA)
- Tasks may be started at any time
- Easy to Implement
- Load Peaks
Globally Synchronous/ Locally Synchronous (GSLS)
- 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
starting tasks
- Tradeoff between GALA/GALS?
Before During After Before During After Before During After
Protocol Analysis: GALA
t WCRT WCRTsteady,2 WCRTsteady,1 tsw,start tsteady tsw,end WCRTtrans Protocol
Settle?
CPU 1 CPU 3 CPU 2
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)
Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen
Heuristic Distributed Self-Configuration
0,2 0,4 0,6 0,8 1 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
DCS DPA DCS DCS DPA DPA
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.
- Proc. 2
Comm.
- Proc. 1
τ2 τ1 τ3 τ4
- Proc. 2
- Proc. 1
τ2 τ1 τ3 τ4
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
- f a heuristic distributed constraint solver
Distributed Performance Analysis (DPA) Distributed Constraint Solver (DCS)
DCS instance DPA instance
New Priority Assignment Worst-case Timing Information
DCS instance DCS instance DPA instance DPA instance
October 8, 2010 | Steffen Stein | Runtime Verification and Management of Real-time Applications | Folie 19
- Proc. 2
- Proc. 1
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
τ3 τ4 τ2 τ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
- Introduction of a lazy threshold that prevents execution of single DCS instances to
break loop of oscillations
0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9 1 1
Frequency Unique Configurations/Analyzed Configurations
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
Search Space Coverage histogram
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
0% 25% 50% 75% 100% Small Systems Large Systems 0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9 1 1 Frequency
Unique Configurations/Analyzed Configurations
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 0,1 0,2 0,3 0,4 0,5 1 Frequency Improvement w.r.t. # of analysis runs vs. GA
- 1000
1000 equal 1
- 10
- 10
- 100
100
- avg. 7.35
Number of solvable testcases solved Search Space Coverage Histogram Runtime relative to genetic algorithm
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
Platform Model Generation Application Model Generation Application Mapping Assignment of Scheduling Parameters Assignment of Timing Properties Assignment of Timing Constraints Structural Definition Real-Time Property Definition Constraint Definition
October 8, 2010 | Steffen Stein | Runtime Verification and Management of Real-time Applications | Folie 24
System Models For Free: SMFF
- Modular and flexible implementation:
- Each step of testcase generation can be exchanged by custom algorithm
- System model can be extended with data extension objects
- Comes with various Export Capabilities:
- XML that is able to reflect custom data extensions
- Graph Export for visualization
- Interface to Performance verification tool SymTA/S
- Soon: Export to cycle-accurate system simulator CoMET + EPOC Framework
October 8, 2010 | Steffen Stein | Runtime Verification and Management of Real-time Applications | Folie 25
System Models For Free: SMFF
October 8, 2010 | Steffen Stein | Runtime Verification and Management of Real-time Applications | Folie 26
System Models For Free: SMFF
October 8, 2010 | Steffen Stein | Runtime Verification and Management of Real-time Applications | Folie 27
Conclusion
- Solved outstanding issues towards practical usability
- Extension towards Adaptivity/ Evolution
- Presented in this talk
- Analysis in Bounded Time
- The Challenge of Mode Changes
- Distributed Heuristic Self-Configuration
- System Models for Free (SMFF)
Thank you for your attention
October 1, 2010 | Moritz Neukirchner | Runtime Verification and Management of Real-time Applications | Folie 28
Dissemination
Papers presented in 2010
- Steffen Stein, Matthias Ivers, Jonas Diemer, und Rolf Ernst, "A polynomial time algorithm for
computing response time bounds in static priority scheduling with convex event models," in Euromicro Conference on Real-Time Systems (ECRTS'10), July 2010
- Moritz Neukirchner, Steffen Stein, Harald Schrom, und Rolf Ernst, "A Software Update Service with
Self-Protection Capabilities," in Proc. of Design, Automation, and Test in Europe (DATE‘10), (Dresden, Germany), March 2010
- Steffen Stein, Moritz Neukirchner, Harald Schrom, und Rolf Ernst, "Consistency Challenges in Self-
Organizing Distributed Hard Real-Time Systems," in Workshop on Self-Organizing Real-Time Systems – SORT‘2010, 2010 Selected Presentations with interested Industry Partners
- Symtavision Newsconference (70% Industry)
- Daimler Research (on request)
- Toyota-ITC (on request)