Stack distance based worst-case instruction cache performance analysis

The worst-case execution time (WCET) analysis is critical to ensure the schedulability and correctness of hard real-time systems. Modern microprocessors, however, make the WCET analysis complicated, mainly because of their performance acceleration features like caches, pipelines, out-of-order execution, etc. This paper focuses on studying an accurate static timing analysis approach for instruction caches with the LRU-based strategy by computing the worst-case stack distance. The experimental results indicate that our approach can accurately predict worst-case instruction cache performance. Also, the stack distance based timing analysis approach can efficiently categorize worst-case instruction cache misses into cold, conflict and capacity misses, which can provide useful insights to improve the worst-case instruction cache performance.

[1]  David B. Whalley,et al.  Bounding worst-case instruction cache performance , 1994, 1994 Proceedings Real-Time Systems Symposium.

[2]  Wei Zhang,et al.  Exploiting stack distance to estimate worst-case data cache performance , 2009, SAC '09.

[3]  Filip Sebek Determining the Worst-Case Instruction Cache Miss-Ratio , 2002 .

[4]  Alan Jay Smith,et al.  Evaluating Associativity in CPU Caches , 1989, IEEE Trans. Computers.

[5]  Reinhard Wilhelm,et al.  Cache Behavior Prediction by Abstract Interpretation , 1996, Sci. Comput. Program..

[6]  Frank Müller,et al.  Generalizing timing predictions to set-associative caches , 1997, Proceedings Ninth Euromicro Workshop on Real Time Systems.

[7]  Jakob Engblom,et al.  Efficient longest executable path search for programs with complex flows and pipeline effects , 2001, CASES '01.

[8]  Sharad Malik,et al.  Performance Analysis of Embedded Software Using Implicit Path Enumeration , 1995, 32nd Design Automation Conference.

[9]  Kristof Beyls,et al.  Reuse Distance as a Metric for Cache Behavior. , 2001 .

[10]  Frank Müller,et al.  Timing Analysis for Instruction Caches , 2000, Real-Time Systems.

[11]  Jakob Engblom,et al.  The worst-case execution-time problem—overview of methods and survey of tools , 2008, TECS.

[12]  B. R. Rau,et al.  HPL-PD Architecture Specification:Version 1.1 , 2000 .

[13]  David B. Whalley,et al.  Integrating the timing analysis of pipelining and instruction caching , 1995, Proceedings 16th IEEE Real-Time Systems Symposium.

[14]  Damien Hardy,et al.  WCET analysis of multi-level set-associative instruction caches , 2008, ArXiv.

[15]  Microsystems Sun,et al.  Jini^ Architecture Specification Version 2.0 , 2003 .