An Improved Multi-core Shared Cache Replacement Algorithm

Fang Juan,Li Chengyan
DOI: https://doi.org/10.1109/dcabes.2012.39
2012-01-01
Abstract:Many multi-core processors employ a large last-level cache (LLC) shared among the multiple cores. Past research has demonstrated that traditional LRU and its approximation can lead to poor performance and unfairness when the multiple cores compete for the limited LLC capacity, and is susceptible to thrashing for memory-intensive workloads that have a working set greater than the available cache size. As the LLC grows in capacity, associativity, the performance gap between the LRU and the theoretical optimal replacement algorithms has widened. In this paper, we propose FLRU (Frequency based LRU) replacement algorithm, which is applied to multi-core shared L2 cache, and it takes the recent access information, partition and the frequency information into consideration. FLRU manages to filter the less reused blocks through dynamic insertion/promotion policy and victim selection strategy to ensure that some fraction of the working set is retained in the cache so that at least that fraction of the working set can contribute to cache hits and to avoid trashing, meanwhile we augment traditional cache partition with victim selection, insertion and promotion policies to manage shared L2 caches.
What problem does this paper attempt to address?