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

    Research output: Contribution to journalArticle

    Forthcoming

    View graph of relations

    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
    JournalIEEE Computer Architecture Letters
    Journal publication date10 Jan 2019
    Publication statusAccepted - 10 Jan 2019

    ID: 163622458