# Measurement-Based Worst-Case Execution Time (WCET) Analysis Guillem Bernat and Adam Betts.

## Presentation on theme: "Measurement-Based Worst-Case Execution Time (WCET) Analysis Guillem Bernat and Adam Betts."— Presentation transcript:

Measurement-Based Worst-Case Execution Time (WCET) Analysis Guillem Bernat and Adam Betts

Measurement-Based Approach the Holy Grail of WCET Analysis

The real-time constraint Computer market dominated by embedded systems Computer market dominated by embedded systems Majority of embedded systems operate in real-time Majority of embedded systems operate in real-time Functional and Temporal correctness required Functional and Temporal correctness required Failure has varying degrees of consequences Failure has varying degrees of consequences

Why real-time people are useful In-flight control system – Death In-flight control system – Death Video streaming – Degraded picture quality Video streaming – Degraded picture quality Automotive – Breakdown Automotive – Breakdown Toaster – Burnt toast Toaster – Burnt toast Mobile phone – Angry girlfriend Mobile phone – Angry girlfriend

Circumventing Catastrophe Real-Time System broken into number of tasks Real-Time System broken into number of tasks Tasks are scheduled according to their temporal parameters Tasks are scheduled according to their temporal parameters 20102437 How to calculate execution time of each task when running on particular hardware?

Basics of WCET Safe estimates desired Safe estimates desired Static Analysis uses mathematical models of both program and processor Static Analysis uses mathematical models of both program and processor These data are combined using calculation methods These data are combined using calculation methods Formal proofs ascertain correctness Formal proofs ascertain correctness

instruction1 instruction2 instruction3 instruction4 instruction5 instruction6 instruction7 instruction8 instruction9 instruction10 3 4 2 7 10 1 18 10 4 6 WCET = 65

instruction1 instruction2 instruction3 instruction4 instruction5 instruction6 instruction7 instruction8 instruction9 instruction10 instruction11 instruction12 instruction13 instruction14 instruction15 instruction4 instruction5 instruction6 instruction1 instruction2 instruction3 instruction7 instruction8 instruction9 instruction10 instruction14 instruction15 instruction11 instruction12 instruction13 34 56 22 26 10

Where Static Analysis Struggles Processor advancements aim to improve average-case performance Processor advancements aim to improve average-case performance Predictability compromised Predictability compromised Features disabled or pessimistic assumptions made Features disabled or pessimistic assumptions made Integration of advanced features into embedded domain gathering speed Integration of advanced features into embedded domain gathering speed

instruction1 instruction2 instruction3 instruction4 instruction5 1345213452 13452 13452 13452

It gets worse… Interaction between all features yet to be fully explored Interaction between all features yet to be fully explored Unrealistic assumptions about processor behaviour Unrealistic assumptions about processor behaviour Intellectual property constrains the scope of static analysis Intellectual property constrains the scope of static analysis

Measure, you say? Scepticism toward measurement- based approach Scepticism toward measurement- based approach Pure end-to-end measurement might not encapsulate the worst-case Pure end-to-end measurement might not encapsulate the worst-case Instrumentation required to collect data Instrumentation required to collect data Probe effect disrupts the temporal behaviour Probe effect disrupts the temporal behaviour

What we propose Combination of static analysis and testing techniques Combination of static analysis and testing techniques Testing measures the real behaviour of the processor Testing measures the real behaviour of the processor Static analysis techniques dictate how these data are combined to produce a final estimate Static analysis techniques dictate how these data are combined to produce a final estimate

Instr1 Instr4 Instr5 Instr6 Instr7 Instr2 Instr3 Instr8 Instr9 Instr10 Instr12 Instr13 Instr11

Issues in Measurement-Based Analysis Well instrumented programs Well instrumented programs Instrumentation under constraints Instrumentation under constraints Generating test-data for temporal correctness Generating test-data for temporal correctness Adequacy criteria for WCET coverage Adequacy criteria for WCET coverage Probability that estimates are correct Probability that estimates are correct

Conclusion Timeliness of many embedded systems relies on WCET analysis Timeliness of many embedded systems relies on WCET analysis Static analysis struggles with advanced processor features Static analysis struggles with advanced processor features Measurement-Based approach aims to combine static and testing techniques Measurement-Based approach aims to combine static and testing techniques Accuracy the key as wider-issue processors become more prevalent Accuracy the key as wider-issue processors become more prevalent