Michael Stumm: Publications

Paper Details

Reference:

Livio Soares, David Tam, and Michael Stumm,
"Reducing the harmful effects of last-level cache polluters with an OS-level, software-only pollute buffer",
In Proceedings of the 41st annual IEEE/ACM International Symposium on Microarchitecture (MICRO'08), Lake Como, Italy, IEEE Computer Society, Washington, DC, USA, November, 2008, pp. 258–269.

Download:

PDF

Abstract:

It is well recognized that LRU cache-line replacement can be ineffective for applications with large working sets or non-localized memory access patterns. Specifically, in last-level processor caches, LRU can cause cache pollution by inserting non-reuseable elements into the cache while evicting reusable ones. The work presented in this paper addresses last-level cache pollution through a dynamic operating system mechanism, called ROCS, requiring no change to underlying hardware and no change to applications.

ROCS employs hardware performance counters on a commodity processor to characterize application cache behavior at run-time. Using this online profiling, cache unfriendly pages are dynamically mapped to a pollute buffer in the cache, eliminating competition between reusable and non-reusable cache lines. The operating system implements the pollute buffer through a page-coloring based technique, by dedicating a small slice of the last-level cache to store non-reusable pages. Measurements show that ROCS, implemented in the Linux 2.6.24 kernel and running on a 2.3GHz PowerPC 970FX, improves performance of memory-intensive SPEC CPU 2000 and NAS benchmarks by up to 34%, and 16% on average.

Keywords:

Application software , Buffer storage , Counting circuits , Hardware , Kernel , Linux , Operating systems , Pattern recognition , Pollution measurement , Runtime

Reference Info:

DOI: 10.1109/MICRO.2008.4771796
ACMid: 1521800
ISBN: 978-1-4244-2836-6
ISSN: 1072-4451

BibTeX:

@inproceedings(Soares-MICRO08,
    author = {Livio Soares and David Tam and Michael Stumm},
    title = {Reducing the harmful effects of last-level cache polluters with an {OS}-level, software-only pollute buffer},
    booktitle = {Proceedings of the 41st annual IEEE/ACM International Symposium on Microarchitecture (\textbf{MICRO'08})},
    location = {Lake Como, Italy},
    organization = {IEEE Computer Society},
    address = {Washington, DC, USA},
    month = {November},
    year = {2008},
    pages = {258-269},
    doi = {10.1109/MICRO.2008.4771796},
    isbn = {978-1-4244-2836-6},
    issn = {1072-4451},
    keywords = {Application software , Buffer storage , Counting circuits , Hardware , Kernel , Linux , Operating systems , Pattern recognition , Pollution measurement , Runtime}
)