Systematic Reverse Engineering of Cache Slice Selection in Intel Processors

Thomas Eisenbarth, Gorka Irazoqui, Berk Sunar

Abstract

Dividing last level caches into slices is a popular method to prevent memory accesses from becoming a bottleneck on modern multicore processors. In order to assess and understand the benefits of cache slicing in detail, a precise knowledge of implementation details such as the slice selection algorithm are of high importance. However, slice selection methods are mostly unstudied, and processor manufacturers choose not to publish their designs, nor their design rationale. In this paper, we present a tool that allows to recover the slice selection algorithm for Intel processors. The tool uses cache access information to derive equations that allow the reconstruction of the applied slice selection algorithm. Thereby, the tool enables further exploration of the behavior of modern caches. The tool is successfully applied to a range of Intel CPUs with different slices and architectures. Results show that slice selection algorithms have become more complex over time by involving an increasing number of bits of the physical address. We also demonstrate that among the most recent processors, the slice selection algorithm depends on the number of CPU cores rather than the processor model.
OriginalspracheEnglisch
Titel2015 Euromicro Conference on Digital System Design
Seitenumfang8
Herausgeber (Verlag)IEEE
Erscheinungsdatum26.10.2015
Seiten629-636
ISBN (Print)978-1-4673-8034-8
ISBN (elektronisch)978-1-4673-8035-5
DOIs
PublikationsstatusVeröffentlicht - 26.10.2015
Veranstaltung2015 Euromicro Conference on Digital System Design - Funchal, Portugal
Dauer: 26.08.201528.08.2015

Fingerprint

Untersuchen Sie die Forschungsthemen von „Systematic Reverse Engineering of Cache Slice Selection in Intel Processors“. Zusammen bilden sie einen einzigartigen Fingerprint.

Zitieren