A Survey of Software Techniques for Using Non-Volatile Memories for Storage and Main Memory Systems

Sparsh Mittal, Jeffrey S. Vetter

Research output: Contribution to journalArticlepeer-review

219 Scopus citations

Abstract

Non-volatile memory (NVM) devices, such as Flash, phase change RAM, spin transfer torque RAM, and resistive RAM, offer several advantages and challenges when compared to conventional memory technologies, such as DRAM and magnetic hard disk drives (HDDs). In this paper, we present a survey of software techniques that have been proposed to exploit the advantages and mitigate the disadvantages of NVMs when used for designing memory systems, and, in particular, secondary storage (e.g., solid state drive) and main memory. We classify these software techniques along several dimensions to highlight their similarities and differences. Given that NVMs are growing in popularity, we believe that this survey will motivate further research in the field of software technology for NVMs.

Original languageEnglish
Article number7120149
Pages (from-to)1537-1550
Number of pages14
JournalIEEE Transactions on Parallel and Distributed Systems
Volume27
Issue number5
DOIs
StatePublished - May 1 2016

Funding

Support for this work was provided by U.S. Department of Energy, Office of Science, Advanced Scientific Computing Research.

FundersFunder number
U.S. Department of Energy
Office of Science
Advanced Scientific Computing Research

    Keywords

    • Review
    • classification
    • flash memory
    • non-volatile memory (NVM) (NVRAM)
    • phase change RAM (PCM) (PCRAM)
    • resistive RAM (ReRAM) (RRAM)
    • solid state drive (SSD)
    • spin transfer torque RAM (STT-RAM) (STT-MRAM)
    • storage class memory (SCM)

    Fingerprint

    Dive into the research topics of 'A Survey of Software Techniques for Using Non-Volatile Memories for Storage and Main Memory Systems'. Together they form a unique fingerprint.

    Cite this