53
fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics: © Alexandra Nolte, Gesine Marwedel, 2003 These slides use Microsoft clip arts. Microsoft copyright restrictions apply. 2010 年 12 年 05 年

Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

Embed Size (px)

Citation preview

Page 1: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

fakultät für informatikinformatik 12

technische universität dortmund

Evaluation and Validation

Peter MarwedelTU Dortmund, Informatik 12

Germany

Gra

phic

s: ©

Ale

xand

ra N

olte

, Ges

ine

Mar

wed

el, 2

003

These slides use Microsoft clip arts. Microsoft copyright restrictions apply. 2010 年 12 月 05 日

marwedel
Slightly too many slides for 90 mins. If some slides are moved to 5.2 and some of the slides of 5.2 to 5.3, the material should suffice for 3*90 mins of presentations.
Page 2: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 2 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

Structure of this course

2:Specification

3: ES-hardware

4: system software (RTOS, middleware, …)

8:Test

5: Evaluation & validation (energy, cost, performance, …)

7: Optimization

6: Application mapping

App

licat

ion

Kno

wle

dge Design

repositoryDesign

Numbers denote sequence of chapters

Page 3: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 3 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

Validation and Evaluation

Definition: Validation is the process of checking whether or not a certain (possibly partial) design is appropriate for its purpose, meets all constraints and will perform as expected (yes/no decision).

Definition: Validation with mathematical rigor is called (formal) verification.

Definition: Evaluation is the process of computing quantitative information of some key characteristics of a certain (possibly partial) design.

Page 4: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 4 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

How to evaluate designsaccording to multiple criteria?

In practice, many different criteria are relevant for evaluating designs:

Different design objectives/criteria are relevant: Average performance Worst case performance Energy/power consumption Thermal behavior Reliability Electromagnetic compatibility Numeric precision, Testability, Cost, weight, robustness,

usability, extendibility, security, safety, environmental ..

How to compare designs? Some designs “better” than others.

Page 5: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 5 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

Definitions

Let X: m-dimensional solution space for the design problem.Example: dimensions correspond to # of processors, size of memories, type and width of busses etc.

Let F: n-dimensional objective space for the design problem.Example: dimensions correspond to speed, cost, power consumption, size, weight, reliability, …

Let f(x)=(f1(x),…,fn(x)) where xX be an objective function.We assume that we are using f(x) for evaluating designs.

solution space objective space

f(x)

x x

Page 6: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 6 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

Pareto points

ii

ii

vuni

vuni

:},...,1{

:},...,1{

We assume that, for each objective, a total order < and the corresponding order are defined.

Definition:Vector u=(u1,…,un) F dominates vector v=(v1,…,vn) Fu is “better” than v with respect to one objective and not worse than v with respect to all other objectives:

Definition:Vector u F is indifferent with respect to vector v F neither u dominates v nor v dominates u

Page 7: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 7 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

Pareto points

A solution xX is called Pareto-optimal with respect to Xthere is no solution yX such that u=f(x) is dominated by v=f(y)

Definition: Let S ⊆ F be a subset of solutions.v is called a non-dominated solution with respect to S v is not dominated by any element ∈ S.

v is called Pareto-optimal v is non-dominated with respect to all solutions F.

Page 8: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 8 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

Pareto Point

Objective 1 (e.g. energy consumption)

Objective 2(e.g. run time)

worse

better

Pareto-point

indifferent

indifferent

(Assuming minimization of objectives)

Page 9: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 9 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

Pareto Set

Objective 1 (e.g. energy consumption)

Objective 2(e.g. run time)

Pareto set = set of all Pareto-optimal solutions

dominated

Pareto-set

(Assuming minimization of objectives)

Page 10: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 10 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

One more time …

Pareto point Pareto front

Page 11: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 11 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

Design space evaluation

Design space evaluation (DSE) based on Pareto-points is the process of finding and returning a set of Pareto-optimal designs to the user, enabling the user to select the most appropriate design.

Page 12: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 12 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

Evaluation of designsaccording to multiple objectives

Different design objectives/criteria are relevant: Average performance Worst case performance Energy/power consumption Thermal behavior Reliability Electromagnetic compatibility Numeric precision Testability Cost Weight, robustness, usability, extendibility, security,

safety, environmental friendliness

Page 13: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 13 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

Performance evaluation

Estimated performance values:Difficult to generate sufficiently precise estimates;Balance between run-time and precision

Accurate performance values:As precise as the input data is.

π x

We need to compute average and worst case execution times

Page 14: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 14 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

Worst/best case execution times

Requirements on WCET estimates: Safeness: WCET WCETEST! Tightness: WCETEST – WCET minimal

© h. falk/p. marwedel

WCETEST

Page 15: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 15 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

Worst case execution times (2)

Complexity: in the general case: undecidable if a bound exists. for restricted programs: simple for “old“ architectures,

very complex for new architectures with pipelines, caches, interrupts, virtual memory, etc.

Approaches: for hardware: requires detailed timing behavior for software: requires availability of machine programs;

complex analysis (see, e.g., www.absint.de)

Presentation by R. Wilhelm @ FEST (DVD in German), starting at min. 31:35 min.-47:00

Page 16: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 16 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

WCET estimation:AiT (AbsInt)

Page 17: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 17 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

WCET estimation for caches

Behavior at program joinsWorst case

Best case

{c} {e} {a} {d}

{a} {} {c,f} {d}

{c} {e} {a} {d}

{a} {c,f} {} {d}

{} {} {a,c} {d}

{a,c} {e,f} {} {d}

Intersection+max. age

Union+min. age

Tag Index Offset

LRU-based replacement

= = = =

Address

Movie: Presentation by Reinhard Wilhelm @ Freiburg ES days (German)

Page 18: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 18 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

ILP model

Objective function reflects execution time as as function of the execution time of blocks.To be maximized.

Constraints reflect dependencies between blocks.

Avoids explicit consideration of all paths

Called implicit path enumeration technique.

Page 19: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 19 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

Example (1)

CFGProgram

_main: 21 cycles_L1: 27_L3: 2_L4: 2_L5: 20_L6: 13_L2: 20

int main(){ int i, j = 0;

_Pragma( "loopbound min 100 max 100" ); for ( i = 0; i < 100; i++ ) { if ( i < 50 ) j += i; else j += ( i * 13 ) % 42; }

return j;}

WCETs of BB(aiT 4 TriCore)

Page 20: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 20 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

Example (2)

/* Objective function = WCET to be maximized*/21 x2 + 27 x7 + 2 x11 + 2 x14 + 20 x16 + 13 x18 + 20 x19;/* CFG Start Constraint */x0 - x4 = 0;/* CFG Exit Constraint */x1 - x5 = 0;/* Constraint for flow entering function main */x2 - x4 = 0;/* Constraint for flow leaving exit node of main */x3 - x5 = 0;/* Constraint for flow entering exit node of main */x3 - x20 = 0;/* Constraint for flow entering main = flow leaving main */x2 - x3 = 0;/* Constraint for flow leaving CFG node _main */x2 - x6 = 0;/* Constraint for flow entering CFG node _L1 */x7 - x8 - x6 = 0;/* Constraint for flow leaving CFG node _L1 */x7 - x9 - x10 = 0;/* Constraint for lower loop bound of _L1 */x7 - 101 x9 >= 0;/* Constraint for upper loop bound of _L1 */x7 - 101 x9 <= 0; ….

Virtual start node Virtual end node Virtual end node per function

Variables: 1 variable per node 1 variable per edge

Constraints: „Kirchhoff“ equations per node Sum of incoming

edge variables =flux through node

Sum of outgoingedge variables = flux through node

ILP

_main: 21 cycles_L1: 27_L3: 2_L4: 2_L5: 20_L6: 13_L2: 20

x7

x6

x8

x9

x10

Page 21: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 21 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

Example (3)

Value of objective function: 6268

Actual values of the variables:x2 1x7 101x11 100x14 0x16 100x18 100x19 1x0 1x4 1x1 1x5 1x3 1x20 1x6 1x8 100x9 1x10 100x12 100x13 0x15 0x17 100

Page 22: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 22 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

Real-time calculus (RTC)/Modular performance analysis (MPA)

1

2

3

p 2p 3p

u

l1

2

3

p 2p 3p

u

l

p-J p+J

periodic event stream periodic event stream with jitter

Thiele et al. (ETHZ): Extended network calculus:Arrival curves describe the maximum and minimum number of events arriving in some time interval .Examples:

p pp-J p-J

Page 23: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 23 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

RTC/MPA: Service curves

Service curves u resp. ℓ describe the maximum and minimum service capacity available in some time interval

s

p

bandwidth b

TDMA bus

ps p-s p+s

b s

2p

ul

Example:

Page 24: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 24 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

RTC/MPA: Workload characterization

u resp. ℓ describe the maximum and minimumservice capacity required as a function of the number e of events. Example:

1 2 3

4

8

12

16

e

WCET=4

BCET=3

u

l(Defined only for an integer number of events)

Page 25: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 25 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

RTC/MPA: Workload required for incoming stream

uuu

Incoming workload

lll

Upper and lower bounds on the number of events

ulu 1

)( lul 1

)(

Page 26: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 26 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

RTC/MPA: System of real time components

ul ,

RTC

RTC’

','

u

RTC”

','ul

ul ,

Incoming event streams and available capacityare transformed by real-time components:

Theoretical results allow the computation of properties of outgoing streams

Page 27: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 27 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

RTC/MPA: Transformation of arrival and service curves

Resulting arrival curves:

Remaining service curves:

Where: )()(inf ugutftgf

tu

0

)()(inf ugutftgfu

0

0' luu

0' ull

)()(sup ugutftgftu

0

)()(sup ugutftgfu

0

Page 28: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 28 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

RTC/MPA: Remarks

Details of the proofs can be found in relevant references

Results also include bounds on buffer sizes and on maximum latency.

Theory has been extended into various directions,e.g. for computing remaining battery capacities

Page 29: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 29 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

Application: In-Car Navigation System

Car radio with navigation systemUser interface needs to be responsiveTraffic messages (TMC) must be processed in a timely waySeveral applications may execute concurrently

© Thiele, ETHZ

Page 30: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 30 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

System Overview

NAV RAD

MMI

DB

Communication

© Thiele, ETHZ

Page 31: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 31 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

NAV RAD

MMI

DB

Communication

Use case 1: Change Audio Volume

< 200 ms

< 50 m

s

© Thiele, ETHZ

Page 32: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 32 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

Use case 1: Change Audio Volume

© Thiele, ETHZ

CommunicationResourceDemand

Page 33: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 33 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

NAV RAD

MMI

DB

Communication

< 200 ms

Use case 2: Lookup Destination Address

© Thiele, ETHZ

Page 34: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 34 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

Use case 2: Lookup Destination Address

© Thiele, ETHZ

Page 35: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 35 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

NAV RAD

MMI

DB

Communication

Use case 3: Receive TMC Messages

< 1000 ms

© Thiele, ETHZ

Page 36: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 36 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

Use case 3: Receive TMC Messages

© Thiele, ETHZ

Page 37: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 37 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

Proposed Architecture Alternatives

NAV RAD

MMI

22 MIPS

11 MIPS113 MIPS

NAV RAD

MMI

22 MIPS

11 MIPS113 MIPS

RAD

260 MIPS

NAV

MMI

22 MIPS

RAD

130 MIPS

MMI

NAV

113 MIPS

MMI

260 MIPS

RAD

NAV

72 kbps

72 kbps 57 kbps

72 k

bp

s

72 k

bp

s

(A)

(E)(D)(C)

(B)

© Thiele, ETHZ

Page 38: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 38 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

Step 1: Environment (Event Steams)

Event Stream Model

e.g. Address Lookup(1 event / sec)

u

[s]

[events]

1

1

© Thiele, ETHZ

Page 39: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 39 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

Step 2: Architectural Elements

Event Stream Model

e.g. Address Lookup(1 event / sec)

Resource Model

e.g. unloaded RISC CPU(113 MIPS) l=u

u

l

[s]

[s]

[MIPS]

[events]

1

1

1

113

© Thiele, ETHZ

Page 40: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 40 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

Step 3: Mapping / Scheduling

Rate Monotonic Scheduling(Pre-emptive fixed priority scheduling):

Priority 1: Change Volume (p=1/32 s)

Priority 2: Address Lookup (p=1 s)

Priority 3: Receive TMC (p=6 s)

© Thiele, ETHZ

Page 41: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 41 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

Step 4: Performance Model

CPU1 BUS CPU3CPU2

Change Volume

Receive TMC

NAV RAD

MMI

Address Lookup

MMI NAV RAD

© Thiele, ETHZ

Page 42: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 42 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

Step 5: Analysis

CPU1 BUS CPU3CPU2

Change Volume

Receive TMC

NAV RAD

MMI

Address Lookup

MMI NAV RAD

© Thiele, ETHZ

Page 43: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 43 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

Analysis – Design Question 1

How do the proposed system architecturescompare in respect to end-to-end delays?

© Thiele, ETHZ

Page 44: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 44 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

End-to-end delays: (A) (E)(D)(C)(B)

Analysis – Design Question 1

0

50

100

Vol Key 2 Audio [ms]

0

50

100

Address Lookup [ms]0

500

1000

1500

TMC Decode [ms]

© Thiele, ETHZ

0

20

40

60

Vol Vis. 2 Audio [ms]

Page 45: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 45 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

Analysis – Design Question 2

How robust is architecture A?

Where is the bottleneck of this architecture?

NAV RAD

MMI

22 MIPS

11 MIPS113 MIPS

72 kbps

(A)

© Thiele, ETHZ

Page 46: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 46 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

TMC delay vs. MMI processor speed:

Analysis – Design Question 2

NAV RAD

MMI

22 MIPS

11 MIPS113 MIPS

72 kbps

(A)

26.4 MIPS

© Thiele, ETHZ

Page 47: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 47 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

Analysis – Design Question 3

Architecture D is chosen for further investigation.

How should the processors be dimensioned?

RAD

130 MIPS

MMI

NAV

113 MIPS72 k

bp

s(D)

© Thiele, ETHZ

Page 48: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 48 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

RAD

130 MIPS

MMI

NAV

113 MIPS

72 k

bp

s

33 MIPS29 MIPS

Analysis – Design Question 3

dmax = 200

dmax = 1000

dmax = 50

dmax = 200

© Thiele, ETHZ

Page 49: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 49 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

Conclusions

Easy to construct models (~ half day)

Evaluation speed is fast and linear to model complexity(~ 1s per evaluation)

Needs little information to construct early models(Fits early design cycle very well)

Even though involved mathematics is very complex, the method is easy to use (Language of engineers)

© Thiele, ETHZ

Page 50: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 50 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

Acknowledgement and References

The presentation contains contributions by

Samarjit Chakraborty (NUS)

Simon Künzli, Ernesto Wandeler, Alexander Maxiaguine (ETHZ)

Andreas Herkersdorf, Patricia Sagmeister (IBM)

Jonas Greutert (Netmodule)

Many publications are available from http://www.tik.ee.ethz.ch/~thiele

© Thiele, ETHZ

Page 51: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 51 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

SYMTA

SYMTA (Ernst, TU Braunschweig) works with standard streams (periodic, periodic with jitter streams) and focuses on computing end-to-end guarantees in multiprocessor based systems

See www.symtavision.com

Page 52: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 52 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

Summary

Evaluation and Validation In general, multiple objectives Pareto optimality Design space evaluation (DSE) WCET estimation Real-time calculus

Page 53: Fakultät für informatik informatik 12 technische universität dortmund Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics:

- 53 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2010

Summary

Performance analysis

• Trade-off between speed and accuracy• Computation of worst case execution times

• Cache/pipeline analysis

• ILP model for computing WCET of application from WCET of blocks

• Thiele’s real-time calculus (RTC)/MPA• Using bounds on the number of events in input streams

• Using bounds on available processing capability

• Derives bounds on the number of events in output streams

• Derives bound on remaining processing capability, buffer sizes, …

• Examples demonstrate design procedure based on RTC