On the complexity of cache analysis for different replacement policies

11/05/2018
by   David Monniaux, et al.
0

Modern processors use cache memory: a memory access that "hits" the cache returns early, while a "miss" takes more time. Given a memory access in a program, cache analysis consists in deciding whether this access is always a hit, always a miss, or is a hit or a miss depending on execution. Such an analysis is of high importance for bounding the worst-case execution time of safety-critical real-time programs.There exist multiple possible policies for evicting old data from the cache when new data are brought in, and different policies, though apparently similar in goals and performance, may be very different from the analysis point of view. In this paper, we explore these differences from a complexity-theoretical point of view. Specifically, we show that, among the common replacement policies, LRU (Least Recently Used) is the only one whose analysis is NP-complete, whereas the analysis problems for the other policies are PSPACE-complete.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
01/31/2022

The complexity gap in the static analysis of cache accesses grows if procedure calls are added

The static analysis of cache accesses consists in correctly predicting w...
research
11/05/2018

Fast and exact analysis for LRU caches

For applications in worst-case execution time analysis and in security, ...
research
01/17/2022

Reuse-Aware Cache Partitioning Framework for Data-Sharing Multicore Systems

Multi-core processors improve performance, but they can create unpredict...
research
06/29/2020

An Imitation Learning Approach for Cache Replacement

Program execution speed critically depends on increasing cache hits, as ...
research
09/10/2019

Cache Persistence Analysis: Finally Exact

Cache persistence analysis is an important part of worst-case execution ...
research
10/22/2021

An O(1) algorithm for implementing the LFU cache eviction scheme

Cache eviction algorithms are used widely in operating systems, database...
research
01/25/2023

Clueless: A Tool Characterising Values Leaking as Addresses

Clueless is a binary instrumentation tool that characterises explicit ca...

Please sign up or login with your details

Forgot password? Click here to reset