Measurement-Based Worst-Case
Execution Time (WCET) Analysis
Guillem Bernat and Adam Betts
The real-time constraint
• Computer market dominated by embedded systems
• Majority of embedded systems operate in real-time
• Functional and Temporal correctness required
• Failure has varying degrees of consequences
Why real-time people are useful
• In-flight control system – Death
• Video streaming – Degraded picture quality
• Automotive – Breakdown
• Toaster – Burnt toast
• Mobile phone – Angry girlfriend
Circumventing Catastrophe
•
How to calculate execution time
Real-Time System broken into number of particular hardware?
• Tasks are scheduled according to their temporal parameters
20 24 37 10
Basics of WCET
• Safe estimates desired
• Static Analysis uses mathematical models of both program and processor
• These data are combined using calculation methods
• Formal proofs ascertain correctness
instruction1 instruction2 instruction3 instruction4 instruction5 instruction6 instruction7 instruction8 instruction9 instruction10
10
1
2
7
18
3
4
10
4
6
WCET = 65
instruction1 instruction2 instruction3 instruction4 instruction5 instruction6 instruction7 instruction8 instruction9 instruction10 instruction11 instruction12 instruction13 instruction14 instruction15 instruction1 instruction2 instruction3
26 instruction4 instruction5 instruction6
34 22 instruction7 instruction8 instruction9 instruction10 instruction11 instruction12 instruction13
56 instruction14 instruction15
10
Where Static Analysis Struggles
• Processor advancements aim to improve average-case performance
• Predictability compromised
• Features disabled or pessimistic assumptions made
• Integration of advanced features into embedded domain gathering speed
instruction1 instruction2 instruction3 instruction4 instruction5
1 2
1
3 4 5
2
1
3 4 5
2 3 4 5
1 2
1
3 4 5
2 3 4 5
It gets worse…
• Interaction between all features yet to be fully explored
• Unrealistic assumptions about processor behaviour
• Intellectual property constrains the scope of static analysis
Measure, you say?
• Scepticism toward measurementbased approach
• Pure end-to-end measurement might not encapsulate the worst-case
• Instrumentation required to collect data
• Probe effect disrupts the temporal behaviour
What we propose
• Combination of static analysis and testing techniques
• Testing measures the real behaviour of the processor
• Static analysis techniques dictate how these data are combined to produce a final estimate
Instr1
Instr4
Instr5
Instr6
Instr7
Instr2
Instr3
Instr8
Instr9
Instr10
Instr11
Instr12
Instr13
Issues in Measurement-Based
Analysis
• Well instrumented programs
• Instrumentation under constraints
• Generating test-data for temporal correctness
• Adequacy criteria for WCET coverage
• Probability that estimates are correct
Conclusion
• Timeliness of many embedded systems relies on WCET analysis
• Static analysis struggles with advanced processor features
• Measurement-Based approach aims to combine static and testing techniques
• Accuracy the key as wider-issue processors become more prevalent