"How long does my software take to run...and how can I reduce it?" are key issues for embedded engineers designing reliable systems. Understanding, verifying, and improving the timing performance of their real-time products gives successful companies a key competitive edge.

This tutorial will cover key aspects on-target timing analysis: finding worst case execution times (WCET) and the worst case path, and why worst case optimization is not the same as average execution optimization. Practical issues of looking for the worst-case "hot-spots", identifying timing bugs and verifying optimisation opportunities will be explained with examples of worst case optimization.

Cambridge and Bristol

7th and 12th May

Workshop objectives:

(1) To gain a clear, detailed, and accurate understanding of the
execution time and worst case execution time (WCET) behaviour of real-time
embedded software,

(2) To show how to target optimisation effort precisely where it will
have the maximum benefit in improving system timing behaviour, for the
minimum cost.

Delegates will learn:

* Why the distinction between average case and worst-case optimisations
are important for reliable systems
* Why execution times of software are important, why they vary and how to
find them.
* What different sorts of execution time measurement exist: minimum,
average, maximum measured, worst case and different ways of finding them.
Low-level (e.g. hardware features) and high-level (e.g. path through the
software) issues are discussed and the impact that they have on finding
execution times.
* How tool support can help the process of measuring, analysing and
optimising execution times.

Who should attend:

Embedded software engineers who need to develop reliable, efficient embedded
software.

Pre-requisites
* General programming knowledge
* General knowledge of embedded software

Duration - Half-day

This workshop is £95 +VAT per delegate - payable in advance of the event. Click here to register

 

Presented By Dr Ian Broster

Dr Ian Broster is a founder and Director of Rapita Systems Ltd, a company
specializing in software timing analysis. He is an experienced, lively
lecturer who has given numerous training courses, lectures and presentations
on this and other topics. He earned his PhD at the Real-time Systems group
of University of York.

Workshop Outline:

1 Introduction to Timing

1.1 Why it's tricky

1.2 What is Execution time and profiling/

1.3 What does worst-case execution time mean?

2. Practical Ways to find execution time

2.1 Measurements and testing

2.2 Analysis

2.3 Understanding software performance

3. Optimization techniques

3.1 Why you should not optimize

3.2 Why you need to optimize!

3.3 Worst case optimization techniques

3.4 Management of optimization strategies

Rapita Systems Ltd. is a specialist in real-time systems analysis, its innovative RapiTime product makes Rapita Systems the leader in measurement based worst-case execution time analysis solutions. RapiTime provides a practical performance analysis that works for complex embedded software running on the latest generation of advanced microprocessors.

RapiTime form Rapita is a software toolkit that provides a unique solution to the problem of worst-case execution time analysis and performance profiling, a solution that works for complex software running on advanced embedded microprocessors.

www.rapitasystems.com