PerformanceAnalysisof EmbeddedSystems - PowerPoint PPT Presentation

1 / 48
About This Presentation
Title:

PerformanceAnalysisof EmbeddedSystems

Description:

Linear System Theory [Baccelli, Cohen, Olsder, Quadrat 1992] ... Applicable methods: minimum cycle mean [Karp], periodic graphs [Cohen, Dubois, Quadrat] ... – PowerPoint PPT presentation

Number of Views:59
Avg rating:3.0/5.0
Slides: 49
Provided by: downloadI
Category:

less

Transcript and Presenter's Notes

Title: PerformanceAnalysisof EmbeddedSystems


1
Performance Analysis of Embedded Systems
  • Lothar Thiele
  • ETH Zurich

2
Overview
  • Review of General Aspects
  • Modular Performance Analysis
  • Real-Time Calculus
  • Modeling
  • Application Scenarios

3
System Composition
4
Role of Performance Estimation
  • Design validation
  • equivalence of specification and implementation
  • validation of non-functional aspects (power
    consumption, throughput, delay)
  • Prerequisite for design space exploration
  • part of feedback cycle in design
  • Performance estimation methods
  • use of simulation, trace-based estimation and
    analytic methods

5
Design Space Exploration
Takes place on several levels of abstraction
6
Why Is Estimation Difficult ?
  • Non-determinism
  • Uncertain system environment (different load
    scenarios, unknown (worst case) input patterns).
  • Data dependent functional behavior.
  • Analyzability
  • Complex hardware and software interactions in
    processing nodes, communication components,
    scheduling and arbitration policies.
  • Use of abstractions in analysis -gt
    non-determinism.
  • Interference
  • Internal data streams interact on computing and
    communication resources.
  • This interference determines stream
    characteristics (cyclic dependency).

7
Why is Estimation Difficult ?
applicationstructure
EPU
EPU
hardwareplatform
EPU
EPU
8
Bounds, Guarantees and Predictability
9
Overview
  • Review of General Aspects
  • Composable Performance Analysis
  • Real-Time Calculus
  • Modeling
  • Application Scenarios

10
A Four-Step Approach
  • Abstraction Build abstract models for first
    class citizensevent streams -gt abstract
    event streamsarchitecture elements -gt resource
    modulesapplication processes -gt performance
    modules
  • Performance Components Combine performance
    modules using resource sharing information
  • Performance Network Combine all models to a
    network that represents the performance aspects
  • Analysis

11
The Big Picture
Application Specification
T1
T2
T3
loadscenarios
Abstract Application
mapping relations
performancecomponents
Performance Network
resourcemodules
Abstract Architecture
architectureelements
ARM9
DSP
Architecture Specification
12
Step 1 Abstract Application Model
  • From a functional model

event stream
applicationprocess (e.g. StateCharts )
13
Step 1 Abstract Functional Units
  • to an abstract application model

How do we calculate with abstract event streams
and resources units?
abstractresource stream
performancemodule
abstractevent stream
We use Real-Time Calculus! (min-max algebra)
14
Step 2 Build Performance Components
How do we do scheduling?
15
Step 2 Scheduling I
Fixed Priority (FP)
16
Step 2 Scheduling II
Performance component of a combined HW/SW/OS
module exposes performance properties but hides
implementation
share
Generalized Processor Sharing (GPS)
S
17
Step 3 and 4 Compose and Analyze
How can we compose performance modules ?
How can we add a new application?
How can we estimate the load on resources?
How can we estimate delay and memory?
ARM9
DSP2
Bus
DSP1
18
Dynamic Analytic Models
formalspecification
datasheets
programanalysis
model ofcomponents
inputtraces
model of environment
systemmodel
formalspecific.
analysis
estimationresults
19
Overview
  • Review of General Aspects
  • Modular Performance Analysis
  • Real-Time Calculus
  • Modeling
  • Application Scenarios

20
Scheduling Abstraction
  • Idea
  • unified view of task scheduling, arbitration and
    output scheduling in networks
  • methods
  • queueing theory (statistical bounds, Markov
    chains)
  • real-time calculus (worst case bounds, min-max
    algebra)

21
Foundations of Real-Time-Calculus
  • Linear System Theory Baccelli, Cohen, Olsder,
    Quadrat 1992
  • Calculus for Networks Le Boudec 1998, 2001,
    Cruz 1991
  • Adversarial Queuing Theory Andrews, Borodin,
    Kleinberg, Leighton, 1996
  • End-to-end deadlines Parekh, Gallager 1994

22
Event and Resource Models
How do we describe uncertain event streams and
resources?
23
Arrival and Service Curves
24
Event Resource Models
  • Use arrival curves to capture packet streams

of packets
max 2 packets min 0 packets
max 3 packets min 1 packet
max 1 packet min 0 packets
3
2
1
D
time t
0
1
2
25
Arrival Curves
  • Use the concept of arrival curves !

How do we describe uncertain input streams ?
maximum/minimum number of packets in any interval
of length 4
number of packets in time interval 0,4
26
Service Curves
  • Use the concept of service curves !

How do we describe uncertain resources ?
maximum/minimum computing power in any interval
of length 2
computing power in time interval 0,2
27
Arrival and Service Curves
  • What else
  • sub- and super-additivity
  • relation to max- algebra
  • operations correspond to convolution

28
Transformation of Curves by Modules
29
Performance Modules
30
Compose and Analyze
I/O
mP
bus
DSP
prop.share
fixedprio.
fixedprio.
fixedprio.
31
Compose and Analyze
32
Everything Together
application structure
performancememory delay
App. Model
inputstreammodel
AllocationBindingScheduling
PerformanceNetwork
resourcemodel
Architecture Model
TDMA
WFQ
fixedpriority
33
Overview
  • Review of General Aspects
  • Modular Performance Analysis
  • Real-Time Calculus
  • Modeling
  • Application Scenarios

34
Open Questions
  • How do we model different event types and
    correlation in event streams ?
  • How do we model type-dependent processing
    (different modes of operation, example MPEG
    coding and decoding) ?
  • How do we model caches ?

Use more involved abstractions, for example
finite state automata
35
Refined Abstractions using FSMs
36
Event Stream Model
events vs. time interval
order of events
37
Functional Unit Model
input_event/resource_demand/output_event
  • FSM can model
  • architecture details
  • program flow
  • scheduling policies
  • type-dependent behavior
  • Improvement in estimation quality in several
    application studies.

38
Additional Analysis Methods
  • Analyze timed FSMs with respect to their timing
    properties.
  • For example
  • Applicable methods minimum cycle mean Karp,
    periodic graphs Cohen, Dubois, Quadrat

minimal and maximal accumulated
delay/demand/eventsfor n consecutive
transitions (and its inverse) in a
compact representation
39
Missing Link(s)
  • Link to lower layer analysis methods (like
    abstract interpretation)

model of computer architecture
assembler program
analysis
d,e,f,g
a,b,c
40
Overview
  • Review of General Aspects
  • Modular Performance Analysis
  • Real-Time Calculus
  • Modeling
  • Application Scenarios

41
Experiences
  • Network processor modeling (IBM)
  • Detailed study of a network processor
  • Good match between simulation and analytic
    methods (delay, memory)
  • Use of methodology in other projects and case
    studies
  • BridgeCo
  • Siemens
  • Netmodule
  • Implementation and integration into design space
    exploration

42
Application Model
  • Example of a simple stream processing task
    structure

43
Architecture Model
  • In general, we assume an arbitrary heterogeneous
    architecture consisting of computing resources,
    memory and communication resources.

44
Design Space Exploration Strategy
45
EXPO Tool architecture
MOSES
EXPO
SPEA 2
Exploration Cycle
46
EXPO - Tool
Tool available online http//www.tik.ee.ethz.ch/e
xpo/expo.html
47
Results
Performance for encryption/decryption
Performance for RT voice processing
48
Acknowledgement
  • The presentation contains contributions by
  • Samarjit Chakraborty
  • Matthias Dyer
  • Simon Künzli
  • Matthias Gries
  • Alexander Maxiaguine
Write a Comment
User Comments (0)
About PowerShow.com