Precise Cache Timing Analysis via Symbolic Execution
- 1 April 2016
- conference paper
- Published by Institute of Electrical and Electronics Engineers (IEEE)
- Vol. 4, 1-12
- https://doi.org/10.1109/rtas.2016.7461358
Abstract
We present a framework for WCET analysis of programs with emphasis on cache micro-architecture. Such an analysis is challenging primarily because of the timing model of a dynamic nature, that is, the timing of a basic block is heavily dependent on the context in which it is executed. At its core, our algorithm is based on symbolic execution, and an analysis is obtained by locating the "longest" symbolic execution path. Clearly a challenge is the intractable number of paths in the symbolic execution tree. Traditionally this challenge is met by performing some form of abstraction in the path generation process but this leads to a loss of path-sensitivity and thus precision in the analysis. The key feature of our algorithm is the ability for reuse. This is critical for maintaining a high-level of path-sensitivity, which in turn produces significantly increased accuracy. In other words, reuse allows scalability in path-sensitive exploration. Finally, we present an experimental evaluation on well known benchmarks in order to show two things: that systematic path-sensitivity in fact brings significant accuracy gains, and that the algorithm still scales well.Keywords
This publication has 18 references indexed in Scilit:
- WCET squeezingPublished by Association for Computing Machinery (ACM) ,2013
- Precise micro-architectural modeling for WCET analysis via AI+SATPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2013
- Scalable and Precise Refinement of Cache Timing Analysis via Model CheckingPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2011
- Symbolic simulation on complicated loops for WCET path analysisPublished by Association for Computing Machinery (ACM) ,2011
- Scope-Aware Data Cache Analysis for WCET EstimationPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2011
- The worst-case execution-time problem—overview of methods and survey of toolsACM Transactions on Embedded Computing Systems, 2008
- Fast and Precise WCET Prediction by Separated Cache and Path AnalysesReal-Time Systems, 2000
- Guest Editorial: A Review of Worst-Case Execution-Time AnalysisReal-Time Systems, 2000
- The CLP( ℛ ) language and systemACM Transactions on Programming Languages and Systems, 1992
- Automatic discovery of linear restraints among variables of a programPublished by Association for Computing Machinery (ACM) ,1978