10. performance analysis of distributed embedded systems · performance model processing model...

59
Hardware-Software Codesign 10 - 1 10. Performance Analysis of Distributed Embedded Systems Lothar Thiele

Upload: others

Post on 31-Oct-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Hardware-Software Codesign

10 - 1

10. Performance Analysis of Distributed Embedded Systems

Lothar Thiele

Page 2: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 2

SW-Compilation HW-Synthesis

System DesignSpecification

System Synthesis

Machine Code Net lists

Estimation

Instruction Set

IntellectualProp. Block

IntellectualProp. Code

Page 3: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 3

ContentsOverview

Real-Time Calculus

Modular Performance Analysis

Examples

Page 4: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 4

Formal Analysis vs. Simulation e.g. delay

Real System Simulation Formal analysis

Best-Case

Worst-Caseupper bound

lower bound

Page 5: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 5

Analysis and Design

Embedded System = Computation + Communication + Resource Interaction

Analysis: Infer system properties from subsystem properties.

Design: Build a system from subsystems while meeting requirements.

Page 6: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 6

Modular Performance Analysis

Load Model(Environment)

Service Model(Resources)

PerformanceModel

Processing Model(Tasks & Scheduling)

Analysis

Analysis Results

Input traces

Formalspecification

System Model

Application Architecture

MappingScheduling

Task graphs architecturediagrams

Formalspecification

WCETAnalysis

Measure-ments

Data sheets

Page 7: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 7

Abstract Models for Performance Analysis

ProcessorTask

InputStream

ServiceModel

LoadModel

Concrete InstanceAbstract Representation

ProcessingModel

Page 8: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 8

Modular System CompositionCPU BUS DSP

RM TDMA

GPC GPC

GPC GPC

GPC GSC

TDMA

Page 9: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 9

Overview

Page 10: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 10

ContentsOverview

Real-Time Calculus

Modular Performance Analysis

Examples

Page 11: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 11

FoundationReal-Time Calculus can be regarded as a worst-case/best-case variant of classical queuing theory. It is a formal method for the analysis of distributed real-time embedded systems.

Related Work: Min-Plus Algebra: F. Baccelli, G. Cohen, G. J. Olster, and J.

P. Quadrat, Synchronization and Linearity --- An Algebra for Discrete Event Systems, Wiley, New York, 1992.

Network Calculus: J.-Y. Le Boudec and P. Thiran, Network Calculus - A Theory of Deterministic Queuing Systems for the Internet, Lecture Notes in Computer Science, vol. 2050, Springer Verlag, 2001.

Page 12: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 12

Comparison of Algebraic StructuresAlgebraic structure set of elements one or more operators defined on elements of this set

Algebraic structures with two operators plus-times: min-plus:

Infimum: The infimum of a subset of some set is the greatest element,

not necessarily in the subset, that is less than or equal to all other elements of the subset.

Page 13: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 13

Comparison of Algebraic StructuresJoint properties :

Example: plus-times: min-plus:

Page 14: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 14

Comparison of Algebraic StructuresJoint properties :

Differences : plus-times: Existence of a negative element for :

min-plus: Idempotency of :

Page 15: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 15

Comparison of System TheoriesPlus-times system theory signals, impulse response, convolution, time-domain

Min-plus system theory streams, variability curves, time-interval domain, convolution

Page 16: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 16

Abstract Models for Performance Analysis

ProcessorTask

InputStream

ServiceModel

LoadModel

Concrete InstanceAbstract Representation

ProcessingModel

R(t) R’(t)

C(t)

α(Δ)

β(Δ)

Page 17: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 17

From Streams to Cumulative FunctionsData streams: R(t) = number of events in [0, t)Resource stream: C(t) = available resource in [0, t)

R(t)C(t)

Page 18: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 18

From Event Streams to Arrival Curves

t [ms]

events

maximum / minimumarriving events in anyinterval of length 2.5 ms

2.5

events

Δ [ms] 2.5

number of events in in t=[0 .. 2.5] ms

αl

αu

t

Δ

Event Stream

Arrival Curves α = [αl, αu]

Page 19: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 19

From Resources to Service Curves

t [ms]

availability

maximum/minimumavailable service in anyinterval of length 2.5 ms

available service in t=[0 .. 2.5] ms

2.5

βu

βlservice

Δ [ms] 2.5

t

Δ

Resource Availability

Service Curves β = [βl, βu]

Page 20: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 20

Example 1: Periodic with JitterA common event pattern that is used in literature can be specified by the parameter triple (p, j, d), where p denotes the period, j the jitter, and d the minimum inter-arrival distance of events in the modeled stream.

periodic

p

periodicjitter

p j ≥ d

Page 21: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 21

Example 1: Periodic with Jitter

periodic periodic with jitter

Page 22: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 22

Example 1: Periodic with JitterArrival curves:

Page 23: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 23

Example 2: TDMA ResourceConsider a real-time system consisting of n applicationsthat are executed on a resource with bandwidth B that controls resource access using a TDMA policy. Analogously, we could consider a distributed system with n communicating nodes, that communicate via a shared bus with bandwidth B, with a bus arbitrator that implements a TDMA policy.TDMA policy: In every TDMA cycle of length , one single resource slot of length si is assigned to application i.

c

c

c

appl.1 appl.2 appl. n appl.1 appl.2 appl. n

sn

... ...

Page 24: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 24

Example 2: TDMA ResourceService curves available to the applications / node i:

B si

csi c-si c2

Page 25: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 25

Greedy Processing Component (GPC)

remainingresources

Examples: computation (event – task instance, resource – computing

resource [tasks/second]) communication (event – data packet, resource – bandwidth

[packets/second])

FIFO bufferinputevent

stream

outputevent

stream

availableresources

GPC

Page 26: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 26

Greedy Processing Component

GPC

• Component is triggered by incoming events.

• A fully preemptable task is instantiated at every event arrival to process the incoming event.

• Active tasks are processed in a greedy fashion in FIFO order.

• Processing is restricted by the availability of resources.

Behavioral Description

Page 27: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 27

Greedy Processing Component (GPC)

R(t)

C(t)

R’(t)

C’(t)t

C(t)

R(t)

R’(t)

Conservation Laws

GPC

Page 28: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 28

Greedy ProcessingFor all times u ≤ t we have R’(u) ≤ R(u) (conservation law).We also have R’(t) ≤ R’(u)+C(t)–C(u) as the output can not be larger than the available resources. Combining both statements yields R’(t) ≤ R(u) + C(t) – C(u).Let us suppose that u* is the last time before t with an empty buffer. We have R(u*) = R’(u*) at u* and also R’(t) = R’(u*) + C(t) – C(u*) as all available resources are used to produce output. Therefore, R’(t) = R(u*) + C(t) – C(u*). As a result, we obtain

tu*

B(t)

Page 29: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 29

Abstract Models for Performance Analysis

ProcessorTask

InputStream

ServiceModel

LoadModel

Concrete InstanceAbstract Representation

ProcessingModel

R(t) R’(t)

C(t)

α(Δ)

β(Δ)

Page 30: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 30

Abstraction

time domaincumulative functions

time-interval domainvariability curves

GPC GPC

Page 31: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 31

Some Definitions and Relations is called min-plus convolution

is called min-plus de-convolution

For max-plus convolution and de-convolution:

Relation between convolution and deconvolution

Page 32: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 32

Arrival and Service Curve

We can determine valid variability curves from cumulative functions as follows:

One proof:

Page 33: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 33

Abstraction

time domaincumulative functions

time-interval domainvariability curves

GPC GPC

Page 34: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 34

The Most Simple RelationsThe output stream of a component satisfies:

The output upper arrival curve of a component satisfies:

The remaining lower service curve of a component satisfies:

Page 35: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 35

Two Sample Proofs

Page 36: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 36

Tighter Bounds

Without proof ... .

[αl, αu]

[βl, βu]

[βl’, βu’]

[αl’, αu’]

GPC

Page 37: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 37

Delay and Backlog

maximum delay D

maximumbacklog B

βl

αu[αl, αu]

[βl, βu]

[βl’, βu’]

[αl’, αu’]GPC

Page 38: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 38

Proof of Backlog Bound

Page 39: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 39

ContentsOverview

Real-Time Calculus

Modular Performance Analysis

Examples

Page 40: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 40

System CompositionCPU BUS DSP

GPC GPC

GPC GPC

GPC

How to inter-connect service?

RM TDMA

Scheduling!

Page 41: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 41

FP/RM EDF RR

TDMAGPS

Scheduling and Arbitration

GPC

GPC

GPC

GPC

EDF RR

sum

share

GPC

GPC

TDMA

Page 42: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 42

Complete System CompositionCPU BUS DSP

RM TDMA

GPC GPC

GPC GPC

GPC

TDMA

Page 43: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 43

Extending the Framework

• New HW behavior• New SW behavior• New scheduling scheme• ...

αβ

β’

α’RTC

• Find new relations:

This is the hard part…!

Page 44: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 44

ContentsOverview

Real-Time Calculus

Modular Performance Analysis

Examples

Page 45: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 45

Case Study

ECU1

BUS

CC1

ECU2 CC2

ECU3CC3

S1

S2

S3

S4

S5

6 Real-Time Input Streams- with jitter- with bursts- deadline > period

3 ECU’s with own CC’s

13 Tasks & 7 Messages- with different WCET

2 Scheduling Policies- Earliest Deadline First (ECU’s)- Fixed Priority (ECU’s & CC’s)

Hierarchical Scheduling- Static & Dynamic Polling Servers

Bus with TDMA- 4 time slots with different lengths

(#1,#3 for CC1, #2 for CC3, #4 for CC3)

Total Utilization:- ECU1 59 %- ECU2 87 %- ECU3 67 %- BUS 56 %

S6

Page 46: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 46

Specification Data

Page 47: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 47

The Distributed Embedded System...ECU1 BUS

(TDMA)

C1.1

C1.2

C2.1

C3.1

C4.1

C5.1

C3.2

T1.1

T1.3T2.1

T3.1

T3.3

PS

FPFPCC1

ECU2

T4.1

T5.1

FPCC2

ECU3

T1.2

FP FPCC3

T3.2

FP

EDF

T2.2

PS

T4.2

PS

T5.2

S1

S2

S3

S4

S5

S1

S3

T6.1S6

S6

Page 48: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 48

... and its MPA Model

S5

S4

S1

S2

S3

T1.1

T1.3

C4.1

C5.1

CPU

T2.1

T3.1

CPU

T4.1

T5.1

CPU

PS

T1.2

EDF

PS

T3.2

C1.2

C3.2

C2.1

C3.1

C1.1

T5.2

T4.2

T2.2

PS

ECU1

ECU2

ECU3BUS

CC1

CC2

CC3

T6.1S6

T3.3

TDMA

Page 49: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 49

Buffer & Delay Guarantees

S5

S4

S1

S2

S3

T1.1

T1.3

C4.1

C5.1

CPU

T2.1

T3.1

CPU

T4.1

T5.1

CPU

PS

T1.2

EDF

PS

T3.2

C1.2

C3.2

C2.1

C3.1

C1.1

T5.2

T4.2

T2.2

PS

ECU1

ECU2

ECU3BUS

CC1

CC2

CC3

T6.1S6

T3.3

2

62

2

57 1

313

5

5

1

4

5

6

5

5.30

7.12

3.69

d

b

1.80

0.50

0.70

TDMA

Page 50: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 50

Available & Remaining Service of ECU1

S5

S4

S1

S2

S3

T1.1

T1.3

C4.1

C5.1

TDMACPU

T2.1

T3.1

T3.3

CPU

T4.1

T5.1

CPU

PS

T1.2

EDF

PS

T3.2

C1.2

C3.2

C2.1

C3.1

C1.1

T5.2

T4.2

T2.2

PS

ECU1

ECU2

ECU3BUS

CC1

CC2

CC3

Page 51: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 51

Input of Stream 3

S5

S4

S1

S2

S3

T1.1

T1.3

C4.1

C5.1

CPU

T2.1

T3.1

CPU

T4.1

T5.1

CPU

PS

T1.2

EDF

PS

T3.2

C1.2

C3.2

C2.1

C3.1

C1.1

T5.2

T4.2

T2.2

PS

ECU1

ECU2

ECU3BUS

CC1

CC2

CC3

T6.1S6

T3.3

TDMA

Page 52: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 52

Output of Stream 3

S5

S4

S1

S2

S3

T1.1

T1.3

C4.1

C5.1

CPU

T2.1

T3.1

CPU

T4.1

T5.1

CPU

PS

T1.2

EDF

PS

T3.2

C1.2

C3.2

C2.1

C3.1

C1.1

T5.2

T4.2

T2.2

PS

ECU1

ECU2

ECU3BUS

CC1

CC2

CC3

T6.1S6

T3.3

TDMA

Page 53: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 53

Automated Design Space Exploration

Application Architecture

Mapping

Estimation

Multi-ObjectiveOptimization

We use evolutionary algorithms for multi-objective optimization!

Page 54: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 54

Network Processor Task Model

Page 55: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 55

EXPO

Page 56: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 56

Results

Performance for encryption/decryption Performance for

RT voice processing

Cost

Page 57: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 57

Analysis vs. Simulation

load

Page 58: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 58

Design Space ExplorationDetermine mappingDetermine performance networkSolve system of equationsDetermine important paramerters (end-to-end delay, throughput, buffer space output jitter, ...)Give feedback to optimization

Application Architecture

Mapping

Estimation

Page 59: 10. Performance Analysis of Distributed Embedded Systems · Performance Model Processing Model (Tasks & Scheduling) Analysis Analysis Results Input traces Formal ... we could consider

Swiss FederalInstitute of Technology

Computer Engineeringand Networks Laboratory 10 - 59

RTC Toolbox

www.mpa.ethz.ch/rtctoolbox