14
06/10/2017 1 © 2017 Embedded Systems Innovation by TNO Workshop Performance engineering and architecting Twan Basten Jeroen Voeten October 3, 2017 © 2017 Embedded Systems Innovation by TNO Workshop agenda 10 min – Introduction Examples Goal/organization 20 min – Group discussion 1 Performance challenges 20 min – Performance architecting and engineering landscape 20 min – Group discussion 2 Mapping of performance challenge on performance landscape and process 05 min – Conclusion October 3, 2017 Workshop Performance engineering and architecting 2

Workshop Performance engineering and architecting · 2017-10-10 · 25 October 3, 2017 Workshop Performance engineering and architecting In 20 minutes, as a group, map your performance

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Workshop Performance engineering and architecting · 2017-10-10 · 25 October 3, 2017 Workshop Performance engineering and architecting In 20 minutes, as a group, map your performance

06/10/2017

1

© 2017 Embedded Systems Innovation by TNO

Workshop Performance engineering and architecting Twan Basten Jeroen Voeten

October 3, 2017

© 2017 Embedded Systems Innovation by TNO

Workshop agenda

10 min – Introduction

• Examples

• Goal/organization

20 min – Group discussion 1

• Performance challenges

20 min – Performance architecting and engineering landscape

20 min – Group discussion 2

• Mapping of performance challenge on performance landscape and process

05 min – Conclusion

October 3, 2017 Workshop Performance engineering and architecting 2

Page 2: Workshop Performance engineering and architecting · 2017-10-10 · 25 October 3, 2017 Workshop Performance engineering and architecting In 20 minutes, as a group, map your performance

06/10/2017

2

© 2017 Embedded Systems Innovation by TNO

Introduction

Twan Basten

October 3, 2017 Workshop Performance engineering and architecting 3

© 2017 Embedded Systems Innovation by TNO

Warehouse performance

• warehouse: storage racks, different units to move and collect products

• varying collection of products, and

• varying orders

Simulation and visualization • configurable simulator • visualization of flows

How to organize products in a warehouse minimizing order fulfillment time?

October 3, 2017 Workshop Performance engineering and architecting 4

Page 3: Workshop Performance engineering and architecting · 2017-10-10 · 25 October 3, 2017 Workshop Performance engineering and architecting In 20 minutes, as a group, map your performance

06/10/2017

3

© 2017 Embedded Systems Innovation by TNO

Paper path engineering for professional printers The paper path consists of • physical components: segments

transporting, turning, accelerating, decelerating, printing, heating or cooling sheets

• scheduler: decides sheet release times, duplex sheet merge times, maintenance

• productivity: 150 sheets A4/minute duplex, steady state

• diverse print jobs like complete magazines • time-consuming reconfiguration and

maintenance

How to design a paper path that maximizes productivity? Performance engineering • analytical performance estimators • critical path analysis

October 3, 2017 Workshop Performance engineering and architecting 5

© 2017 Embedded Systems Innovation by TNO

Data path performance engineering for printers

Performance numbers show linear relations between

• bitmap size and execution time

• cores and execution time

Predictions multiprocessor platforms

? +

+

Ink

Paper

Data

Print Engine Documents Data path: COTS components • multi-core CPUs • embedded processing (CPU, GPU, …) • interconnect • storage

How to design a cost-effective data path with sufficient productivity ?

Target: 100+ images per minute

Analytical model • regression analysis • design-space exploration

October 3, 2017 Workshop Performance engineering and architecting 6

Page 4: Workshop Performance engineering and architecting · 2017-10-10 · 25 October 3, 2017 Workshop Performance engineering and architecting In 20 minutes, as a group, map your performance

06/10/2017

4

© 2017 Embedded Systems Innovation by TNO

Data path performance engineering for printers

Ink

Paper

Data

Print Engine Documents

Does an extra GPU provide the desired productivity increase?

Refactor the copy path

scan export

rip print

Copy path

Scan path

Print path

Discrete-event simulation • building a prototype is expensive • throughput as a function of latency of GPU processing

• Reduces load on 4-core CPU • Potential bottleneck at GPU

October 3, 2017 Workshop Performance engineering and architecting 7

© 2017 Embedded Systems Innovation by TNO

Motion control timing for lithography systems

How to deploy and schedule high-end motion control applications on an execution platform guaranteeing a latency of at most 50 µs?

-

wafer stage

position sensors

position measurement

setpoint profile

power actuators

position control

≤ 𝟓𝟎𝝁𝒔

Application • 50 servo controllers • 4,000 control tasks • 20,000 task dependencies

Platform • 10 multi-core processors • packet-switched interconnect

Requirements • sample frequency: 20 kHz • IO latency: 50 μs

Performance engineering • dataflow analysis • simulation

October 3, 2017 Workshop Performance engineering and architecting 8

Page 5: Workshop Performance engineering and architecting · 2017-10-10 · 25 October 3, 2017 Workshop Performance engineering and architecting In 20 minutes, as a group, map your performance

06/10/2017

5

© 2017 Embedded Systems Innovation by TNO

From system performance to embedded performance

October 3, 2017 Workshop Performance engineering and architecting 9

© 2017 Embedded Systems Innovation by TNO

Performance Engineering and Architecting

Observations

• Performance is a cross-cutting concern

• Performance often emerges in late development phases

• Optimizing performance is expensive and difficult

Performance engineering and architecting: Controlled performance in early development phases → Performance by construction

Benefits

• Less rework → Shorter time-to-market

• Less over-dimensioning → Improved cost-performance ratio

October 3, 2017 Workshop Performance engineering and architecting 10

Page 6: Workshop Performance engineering and architecting · 2017-10-10 · 25 October 3, 2017 Workshop Performance engineering and architecting In 20 minutes, as a group, map your performance

06/10/2017

6

© 2017 Embedded Systems Innovation by TNO

Goal of the workshop today

Identification of common performance challenges

now and in the future

as a basis for

• Special Interest Group (SIG) on performance

• training

• projects

October 3, 2017 Workshop Performance engineering and architecting 11

© 2017 Embedded Systems Innovation by TNO

Group discussion 1: Performance challenges

20-minute group discussion:

• as a group identify three performance challenges from your domains

• write them on post-its and put these on the sheets

• use additional post-its to describe challenge details October 3, 2017 Workshop Performance engineering and architecting 12

Page 7: Workshop Performance engineering and architecting · 2017-10-10 · 25 October 3, 2017 Workshop Performance engineering and architecting In 20 minutes, as a group, map your performance

06/10/2017

7

© 2017 Embedded Systems Innovation by TNO

Performance architecting and engineering landscape

Jeroen Voeten

October 3, 2017 Workshop Performance engineering and architecting 13

© 2017 Embedded Systems Innovation by TNO

Outline

• Performance engineering and architecting: ESI approach

• Model-based performance engineering: process

• Model-based performance engineering: landscape

• Example: high-end cut-sheet Océ printer

October 3, 2017 Workshop Performance engineering and architecting 14

Page 8: Workshop Performance engineering and architecting · 2017-10-10 · 25 October 3, 2017 Workshop Performance engineering and architecting In 20 minutes, as a group, map your performance

06/10/2017

8

© 2017 Embedded Systems Innovation by TNO

Performance Engineering and Architecting

Goal

• Control performance in early design phase

• Risk reduction: effectively and efficiently

• Less over-dimensioning: improved cost-performance ratio

ESI Approach

• Model-based: models used in development process to

• predict performance impact of architecting / engineering choices

• explore architecting/ engineering alternatives

• Model-driven: models used as pivotal information carriers to

• predict and explore performance

• drive the implementation: performance-by-construction

October 3, 2017 Workshop Performance engineering and architecting 15

© 2017 Embedded Systems Innovation by TNO

Model-based performance engineering: process

Requirements w.r.t. performance.

1

Model design alternatives to satisfy

the requirements.

4

Predict the past: Measurements on

existing system are used for calibration and

validation of model X. Gives prediction

accuracy and builds trust.

3

Validation: Retrospective model validation builds

experience.

6

Initial model based on requirements.

2

Explore the future: Predict the future with the models for the design alternatives and analyze results following the requirements. Results are

interpreted and feedback is given to development process.

5

October 3, 2017 Workshop Performance engineering and architecting 16

Page 9: Workshop Performance engineering and architecting · 2017-10-10 · 25 October 3, 2017 Workshop Performance engineering and architecting In 20 minutes, as a group, map your performance

06/10/2017

9

© 2017 Embedded Systems Innovation by TNO

Model-based performance engineering: landscape

• expert knowledge • requirements • architecture • design • measurements

• discrete • data flow • best/worst case

• discrete • control flow • best/worst case

• discrete • data & control flow • stochastic

• continuous

October 3, 2017 Workshop Performance engineering and architecting 17

Domain models • Coherent domain

conceptualization • Textual/graphical views

and editing front-ends

Aspect models • Different kinds of

mathematical models • Excelling in different

domains and for different questions

Artefacts • Documents, white

board pictures, files • Human & machine

processable

transformations transformations

• Y-chart pattern • explicit variation points

Application Platform

Mapping

performance prediction

© 2017 Embedded Systems Innovation by TNO

Domain models • Coherent domain

conceptualization • Textual/graphical views

and editing front-ends

Aspect models • Different kinds of

mathematical models • Excelling in different

domains and for different questions

Artefacts • Documents, white

board pictures, files • Human & machine

processable

transformations transformations

Model-based performance engineering: landscape & process

October 3, 2017 Workshop Performance engineering and architecting 18

Requirements

1

Initial model

2

Predict the past

3

Model design alternatives

4 Explore the

future

5

Validation

6

Page 10: Workshop Performance engineering and architecting · 2017-10-10 · 25 October 3, 2017 Workshop Performance engineering and architecting In 20 minutes, as a group, map your performance

06/10/2017

10

© 2017 Embedded Systems Innovation by TNO

Platform-cost reduction

Goal Reduce HW costs: move to a cheaper platform Achieve required throughput for actuator Building a prototype requires significant (SW engineering) effort. Can a model be used to reduce the risks?

Requirements

Ink

Paper

Data

Print Engine Documents

October 3, 2017 Workshop Performance engineering and architecting 19

© 2017 Embedded Systems Innovation by TNO

Platform-cost reduction

October 3, 2017 Workshop Performance engineering and architecting 20

Model relations with regression Application - Execution time: relate processing time per page on single core to data size Platform - Execution time: relate execution time to using more cores

Requirements

Initial model

Application Platform

Platform A Application

Mapping

prediction

Page 11: Workshop Performance engineering and architecting · 2017-10-10 · 25 October 3, 2017 Workshop Performance engineering and architecting In 20 minutes, as a group, map your performance

06/10/2017

11

© 2017 Embedded Systems Innovation by TNO

Platform-cost reduction

October 3, 2017 Workshop Performance engineering and architecting 21

Apply model for reference platform Calibrate model using measurements Validate the model for reference platform determine error between measurements and prediction

Requirements

Initial model

Predict the past

Prediction reference platform

Initial model Measurements

Reference platform

© 2017 Embedded Systems Innovation by TNO

Platform-cost reduction

Platform performance scaling Predict processing times of application on alternative hardware platforms. We used a publicly available CPU performance benchmark: https://www.cpubenchmark.net/singleThread.html

Requirements

Initial model

Predict the past

Model design alternatives

Application Platform

Platform X Application

Mapping Y

Cross-platform prediction October 3, 2017 Workshop Performance engineering and architecting 22

Page 12: Workshop Performance engineering and architecting · 2017-10-10 · 25 October 3, 2017 Workshop Performance engineering and architecting In 20 minutes, as a group, map your performance

06/10/2017

12

© 2017 Embedded Systems Innovation by TNO

Platform-cost reduction

Explore domain Using the benchmark scores and CPU costs search cost-effective solutions that achieve productivity

Requirements

Initial model

Predict the past

Model design alternatives

Explore the future

Result: Model indicates cost-effective target platform that achieves performance

Application Platform

Platform X Application

Mapping Y

Prediction platforms

October 3, 2017 Workshop Performance engineering and architecting 23

© 2017 Embedded Systems Innovation by TNO

Platform-cost reduction

Compare predictions and measurements At selected target platforms, compare measurements and predictions Preferred platform: around 3% difference observed Alternative platforms: around 10% difference observed

Explore the future

Validation

October 3, 2017 Workshop Performance engineering and architecting 24

Requirements

Initial model

Predict the past

Model design alternatives

Page 13: Workshop Performance engineering and architecting · 2017-10-10 · 25 October 3, 2017 Workshop Performance engineering and architecting In 20 minutes, as a group, map your performance

06/10/2017

13

© 2017 Embedded Systems Innovation by TNO

Group discussion 2: Mapping of performance challenges

October 3, 2017 Workshop Performance engineering and architecting 25

In 20 minutes, as a group, map your performance challenges on the landscape

• use post-its and put these on the sheets

© 2017 Embedded Systems Innovation by TNO

Conclusion

October 3, 2017 Workshop Performance engineering and architecting 26

• Round-table feedback:

• common grounds for SIG, training, projects?

Page 14: Workshop Performance engineering and architecting · 2017-10-10 · 25 October 3, 2017 Workshop Performance engineering and architecting In 20 minutes, as a group, map your performance

06/10/2017

14

© 2017 Embedded Systems Innovation by TNO

Performance engineering and architecting

Thank you for participating

Jeroen Voeten, Twan Basten, Jacques Verriet,

Martijn Hendriks, Tjerk Bijlsma

TNO-ESI October 3, 2017

October 3, 2017 Workshop Performance engineering and architecting 27