Skip to main content
SHARE
Publication

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

Publication Type
Journal
Journal Name
IEEE Computer Science
Publication Date
Volume
Parallel and Distributed Systems, IEEE Transactions on (Volume:PP , Issue: 99 )

 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.