Evaluating and estimating the WCET criticality metric

Abstract

Static analysis tools that are used for worst-case execution time (WCET) analysis of real-time software just provide partial information on an analyzed program. Only the longest-executing path, which currently determines the WCET bound is indicated to the programmer. This limited view can prevent a programmer (or compiler) from targeting optimizations the right way. A possible resort is to use a metric that targets WCET and which can be efficiently computed for all code parts of a program. Similar to dynamic profiling techniques, which execute code with input that is typically expected for the application, based on WCET analysis we can indicate how <i>critical</i> a code fragment is, in relation to the worst-case bound. Computing such a metric on top of static analysis, incurs a certain overhead though, which increases with the complexity of the underlying WCET analysis. We present our approach to estimate the <i>Criticality</i> metric, by relaxing the precision of WCET analysis. Through this, we can reduce analysis time by orders of magnitude, while only introducing minor error. To evaluate our estimation approach and share our garnered experience using the metric, we evaluate real-time programs, which are considered as standard WCET benchmarks. We furthermore demonstrate how the visualization of a Criticality-based profile can aid in the understanding of a program's worst-case behavior.

DOI: 10.1145/2568326.2568331

Extracted Key Phrases

5 Figures and Tables

Cite this paper

@inproceedings{Jordan2014EvaluatingAE, title={Evaluating and estimating the WCET criticality metric}, author={Alexander Jordan}, booktitle={ODES@CGO}, year={2014} }