20
Hybrid Approach to System- Level Performance Analysis Simon Künzli Bologna, May 22, 2006 contains joint work with Francesco Poletti, Luca Benini, and Lothar Thiele

Hybrid Approach to System-Level Performance Analysis

Embed Size (px)

DESCRIPTION

Hybrid Approach to System-Level Performance Analysis. Simon Kü nzli Bologna, May 22, 2006 contains joint work with Francesco Poletti, Luca Benini, and Lothar Thiele. Design Space Exploration. need for fast performance evaluation methods - PowerPoint PPT Presentation

Citation preview

Page 1: Hybrid Approach to System-Level Performance Analysis

Hybrid Approach to System-Level Performance Analysis

Simon Künzli

Bologna, May 22, 2006

contains joint work with Francesco Poletti, Luca Benini, and Lothar Thiele

Page 2: Hybrid Approach to System-Level Performance Analysis

Design Space Exploration

• need for fast performance evaluation methods

• interest in non-functional properties, e.g. timing behavior, memory requirement

Page 3: Hybrid Approach to System-Level Performance Analysis

Formal Methods

• possibilities to answer questions limited by method

• restricted by underlying models

• good coverage (worst case)

• fast• coarse

Simulation

• can answer virtually any questions about performance

• can model arbitrary complex systems

• average case (single instance)

• time-consuming• detailed

[Synopsis System Studio][Mentor Graphics Seamless][Coware ConvergenSC]MPSIM [Benini et al.]

Design Evaluation

SymTA/S [Richter et al.]Holistic Approaches [Pop et al.]MPA [Thiele et al.]

Page 4: Hybrid Approach to System-Level Performance Analysis

RISCRISCRISC

• Use hybrid approach for analysis

Compose existing performance analysis models

Combination

DSPDSP

LookUpLookUp

CipherCipher

Formal PerformanceModelPerformance

Model for Simulation

Page 5: Hybrid Approach to System-Level Performance Analysis

Combination II

T1 T2 T3 T4

simulationformal analysis

simulation

S/F-converter F/S-converter

• Interface definition between analysis domains

• Applicability shown using case study for multi-processor system

Page 6: Hybrid Approach to System-Level Performance Analysis

Goals

• Generated trace should be:– consistent with specification curves– representative for short term characteristics

(bursts)– representative for long term characteristics

(average case)

• These properties should be observed anywhere in the generated trace

Page 7: Hybrid Approach to System-Level Performance Analysis

2t0

2t0

Problems for generation

t0

t0

ONON OFF

ONOFF

violates the specification

1234

Proposed trace generation algorithm handles these problems and generates valid traces.

Page 8: Hybrid Approach to System-Level Performance Analysis

/* generate event at time t */generateEvent(t);while (!stopGeneration) { while ( t < swt ) { if (state == 0) { if ( canIGenerateNow(t) ) generate = true; } else{ if ( !canIStillWait(t) ) generate = true; } if (generate) { generateEvent(t); updateHistoryWithEvent(t); } t = t + timeStep; generate = false; } swt = getNextSwitchingTime(t); state = (state + 1) mod 2;}

/* initialize variables */t = 0;generate = false;state = 0;swt = getNextSwitchingTime(t);

Page 9: Hybrid Approach to System-Level Performance Analysis

Goals (revised)

• Generated trace should be:– consistent with specification curves– representative for short term characteristics

(bursts)– representative for long term characteristics

(average case)

• These properties should be observed anywhere in the generated trace

New quality indicator to measure these properties

Page 10: Hybrid Approach to System-Level Performance Analysis

Quality indicator (I)

1. Select all trace snippets Ti of length in trace T.

2. Compute the upper and lower curve from each trace snippet Ti.

Trace T …

Ti

Ti

Page 11: Hybrid Approach to System-Level Performance Analysis

Quality Indicator (II)

3. Set , if and , for all and , otherwise.

= ?

specification derived from trace

Page 12: Hybrid Approach to System-Level Performance Analysis

Quality Indicator (III)

4. Compute where denotes the number of considered trace snippets .

TiTiTi

Page 13: Hybrid Approach to System-Level Performance Analysis

Quality Indicator (IV)

5. Set

Measure for self-similarity of trace The larger I, the “better” the trace T

represents the specification curves

Page 14: Hybrid Approach to System-Level Performance Analysis

How to determine Switching time?

• Deterministic algorithm leads to optimal indicator value (optimal under certain conditions)– Problem: randomized traces preferable for analysis

• Randomized version of deterministic algorithm uniform distribution of switching times

• Weibull distribution [Anastasi’98],[Barford’98] used as control runs

Page 15: Hybrid Approach to System-Level Performance Analysis

Examples for Generated Traces

Page 16: Hybrid Approach to System-Level Performance Analysis

Experiments

Page 17: Hybrid Approach to System-Level Performance Analysis
Page 18: Hybrid Approach to System-Level Performance Analysis

Comparison

0

0.2

0.4

0.6

0.8

1

1.2

1 2 3 4 5 6 7 8 9 10 11 12 13

Parameter settings

No

rma

lize

d I

nd

ica

tor

Va

lue

s I

Specification 1

Specification 2

Page 19: Hybrid Approach to System-Level Performance Analysis

Case StudyExperiment Evaluation

MethodEvaluationTime [s]

1 Simulation 508

2 Hybrid 292

3 Real-Time Calculus

0.27

save evaluation time• less simulation runs needed for good coverage• single simulation run is faster

shorter development times for evaluation models• use available models

suitable for design space exploration

Page 20: Hybrid Approach to System-Level Performance Analysis

Conclusion

• Definition of interfaces needed for hybrid performance models

• Applicability shown using example

• Automated tool chain at hand for hybrid approach