• DocumentCode
    180718
  • Title

    A protected block device for Persistent Memory

  • Author

    Feng Chen ; Mesnier, Michael P. ; Hahn, Seungyong

  • Author_Institution
    Louisiana State Univ., Baton Rouge, LA, USA
  • fYear
    2014
  • fDate
    2-6 June 2014
  • Firstpage
    1
  • Lastpage
    12
  • Abstract
    Persistent Memory (PM) technologies, such as Phase Change Memory, STT-RAM, and memristors, are receiving increasingly high interest in academia and industry. PM provides many attractive features, such as DRAM-like speed and storage-like persistence. Yet, because it draws a blurry line between memory and storage, neither a memory- or storage-based model is a natural fit. Best integrating PM into existing systems has become challenging and is now a top priority for many. In this paper we share our initial approach to integrating PM into computer systems, with minimal impact to the core operating system. By adopting a hybrid storage model, all of our changes are confined to a block storage driver, called PMBD, which directly accesses PM attached to the memory bus and exposes a logical block I/O interface to users. We explore the design space by examining a variety of options to achieve performance, protection from stray writes, ordered persistence, and compatibility for legacy file systems and applications. All told, we find that by using a combination of existing OS mechanisms (per-core page table mappings, non-temporal store instructions, memory fences, and I/O barriers), we are able to achieve each of these goals with small performance overhead for both micro-benchmarks and real world applications (e.g., file server and database workloads). Our experience suggests that determining the right combination of existing platform and OS mechanisms is a non-trivial exercise. In this paper, we share both our failed and successful attempts. The final solution that we propose represents an evolution of our initial approach. We have also open-sourced our software prototype with all attempted design options to encourage further research in this area.
  • Keywords
    memristors; phase change memories; DRAM-like speed; PMBD; STT-RAM; block storage driver; blurry line; compatibility; computer systems; core operating system; hybrid storage model; legacy file systems; memory bus; memristors; ordered persistence; persistent memory technologies; phase change memory; protected block device; software prototype; storage-based model; storage-like persistence; stray writes; Ash; Bandwidth; Kernel; Linux; Nonvolatile memory; Performance evaluation; Random access memory; Device driver; Memory Storage; Operating system; Persistent memory;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Mass Storage Systems and Technologies (MSST), 2014 30th Symposium on
  • Conference_Location
    Santa Clara, CA
  • Type

    conf

  • DOI
    10.1109/MSST.2014.6855541
  • Filename
    6855541