EPOC Embedded Performance Analysis for Organic Computing Steffen - - PowerPoint PPT Presentation

epoc embedded performance analysis for organic computing
SMART_READER_LITE
LIVE PREVIEW

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


slide-1
SLIDE 1

Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen

Steffen Stein, Moritz Neukirchner, Rolf Ernst, 08.10.2010

EPOC – Embedded Performance Analysis for Organic Computing

slide-2
SLIDE 2

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

slide-3
SLIDE 3

Reminder: Demonstrator

October 8, 2010 | Steffen Stein | Runtime Verification and Management of Real-time Applications | Folie 3

slide-4
SLIDE 4

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

slide-5
SLIDE 5

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

slide-6
SLIDE 6

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

slide-7
SLIDE 7

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

slide-8
SLIDE 8

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

slide-9
SLIDE 9

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

slide-10
SLIDE 10

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

slide-11
SLIDE 11

Results

Prior Art This Algorithm

October 8, 2010 | Steffen Stein | Runtime Verification and Management of Real-time Applications | Folie 11

slide-12
SLIDE 12

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"

slide-13
SLIDE 13

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

slide-14
SLIDE 14

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

slide-15
SLIDE 15

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

slide-16
SLIDE 16

Solution: ModeWaves

See DFG Project "Szenarien in vernetzten Multicore-Systemen – Analyse und Optimierung" (ER 168/23-1)

slide-17
SLIDE 17

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

slide-18
SLIDE 18

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

slide-19
SLIDE 19

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

slide-20
SLIDE 20
  • 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

slide-21
SLIDE 21

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

slide-22
SLIDE 22

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

slide-23
SLIDE 23

Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen

System Models For Free: SMFF

Available soon on sourceforge.net

slide-24
SLIDE 24

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

slide-25
SLIDE 25

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

slide-26
SLIDE 26

System Models For Free: SMFF

October 8, 2010 | Steffen Stein | Runtime Verification and Management of Real-time Applications | Folie 26

slide-27
SLIDE 27

System Models For Free: SMFF

October 8, 2010 | Steffen Stein | Runtime Verification and Management of Real-time Applications | Folie 27

slide-28
SLIDE 28

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

slide-29
SLIDE 29

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)