Shimmer: Implementing a Heterogeneous-Reliability DRAM Framework on a Commodity Server

Konstantinos Tovletoglou, Lev Mukhanov, Dimitrios Nikolopoulos, Georgios Karakonstantis

Research output: Contribution to journalArticlepeer-review

3 Citations (Scopus)
308 Downloads (Pure)

Abstract

In this paper, we present the implementation of a heterogeneous-reliability DRAM framework, Shimmer, on a commodity server with a fully fledged OS. Shimmer enables splitting of DRAM into multiple domains with varying reliability and allocation of data depending on their criticality. Compared to existing studies which use simulators, we consider practical restrictions stemming from the real hardware and investigate methods to overcome them. In particular, we reveal that the implementation of the heterogeneous-reliability memory framework requires disabling of the hardware memory interleaving, which results in a significant degradation of the system performance. To overcome the induced performance loss, we develop a software-based interleaving. We evaluate the performance, power and energy of the server using 35 benchmarks across three memory configurations: the baseline configuration; with disabled hardware memory interleaving and Shimmer with software-based memory interleaving. Our results show that Shimmer introduces a minor 6% performance overhead, while reducing the average DRAM power by 19.9% when memory operates under relaxed refresh rate and lowered memory supply voltage. As one of our main contributions we demonstrate that a heterogeneous-reliability framework based on Shimmer can be realized on a commodity server and save 9.1% of the total processor and memory energy.
Original languageEnglish
Pages (from-to)26-29
JournalIEEE Computer Architecture Letters
Volume18
Issue number1
Early online date15 Jan 2019
DOIs
Publication statusPublished - 14 Feb 2019

Fingerprint

Dive into the research topics of 'Shimmer: Implementing a Heterogeneous-Reliability DRAM Framework on a Commodity Server'. Together they form a unique fingerprint.

Cite this