Reuse Detector: improving the management of STT-RAM SLLCs

Various constraints of Static Random Access Memory (SRAM) are leading to consider new memory technologies as candidates for building on-chip shared last-level caches (SLLCs). Spin-Transfer Torque RAM (STT-RAM) is currently postulated as the prime contender due to its better energy efficiency, smalle...

ver descrição completa

Detalhes bibliográficos
Autores: Rodríguez Rodríguez, Roberto, Díaz Maag, Javier, Castro, Fernando, Ibáñez Marín, Pablo Enrique, Chaver Martínez, Daniel A., Viñals Yúfera, Víctor, Sáez Alcaide, Juan Carlos, Prieto Matías, Manuel, Piñuel, Luis, Monreal Arnal, Teresa|||0000-0002-0458-2234, Llaberia Griñó, José M.|||0000-0002-3753-4108
Formato: artículo
Fecha de publicación:2018
País:España
Recursos:Universitat Politècnica de Catalunya (UPC)
Repositorio:UPCommons. Portal del coneixement obert de la UPC
Idioma:inglés
OAI Identifier:oai:upcommons.upc.edu:2117/119198
Acesso em linha:https://hdl.handle.net/2117/119198
https://dx.doi.org/10.1093/comjnl/bxx099
Access Level:acceso abierto
Palavra-chave:Multiprocessors -- Design and construction
Cache memory
STT-RAM
Reuse detector
Reuse locality
Write filtering
Energy savings
Performance
Multiprocessadors -- Disseny i construcció
Memòria cau
Àrees temàtiques de la UPC::Informàtica::Arquitectura de computadors
Descrição
Resumo:Various constraints of Static Random Access Memory (SRAM) are leading to consider new memory technologies as candidates for building on-chip shared last-level caches (SLLCs). Spin-Transfer Torque RAM (STT-RAM) is currently postulated as the prime contender due to its better energy efficiency, smaller die footprint and higher scalability. However, STT-RAM also exhibits some drawbacks, like slow and energy-hungry write operations that need to be mitigated before it can be used in SLLCs for the next generation of computers. In this work, we address these shortcomings by leveraging a new management mechanism for STT-RAM SLLCs. This approach is based on the previous observation that although the stream of references arriving at the SLLC of a Chip MultiProcessor (CMP) exhibits limited temporal locality, it does exhibit reuse locality, i.e. those blocks referenced several times manifest high probability of forthcoming reuse. As such, conventional STT-RAM SLLC management mechanisms, mainly focused on exploiting temporal locality, result in low efficient behavior. In this paper, we employ a cache management mechanism that selects the contents of the SLLC aimed to exploit reuse locality instead of temporal locality. Specifically, our proposal consists in the inclusion of a Reuse Detector (RD) between private cache levels and the STT-RAM SLLC. Its mission is to detect blocks that do not exhibit reuse, in order to avoid their insertion in the SLLC, hence reducing the number of write operations and the energy consumption in the STT-RAM. Our evaluation, using multiprogrammed workloads in quad-core, eight-core and 16-core systems, reveals that our scheme reports on average, energy reductions in the SLLC in the range of 37–30%, additional energy savings in the main memory in the range of 6–8% and performance improvements of 3% (quad-core), 7% (eight-core) and 14% (16-core) compared with an STT-RAM SLLC baseline where no RD is employed. More importantly, our approach outperforms DASCA, the state-of-the-art STT-RAM SLLC management, reporting—depending on the specific scenario and the kind of applications used—SLLC energy savings in the range of 4–11% higher than those of DASCA, delivering higher performance in the range of 1.5–14% and additional improvements in DRAM energy consumption in the range of 2–9% higher than DASCA.