Persistent Memory Objects: Fast and Easy Crash Consistency for Persistent Memory

04/07/2022
by   Derrick Greenspan, et al.
0

DIMM-compatible persistent memory unites memory and storage. Prior works utilize persistent memory either by combining the filesystem with direct access on memory mapped files or by managing it as a collection of objects while abolishing the POSIX abstraction. In contrast, we propose retaining the POSIX abstraction and extending it to provide support for persistent memory, using Persistent Memory Objects (PMOs). In this work, we design and implement PMOs, a crash-consistent abstraction for managing persistent memory. We introduce psync, a single system call, that a programmer can use to specify crash consistency points in their code, without needing to orchestrate durability explicitly. When rendering data crash consistent, our design incurs a overhead of ≈ 25% and ≈ 21% for parallel workloads and FileBench, respectively, compared to a system without crash consistency. Compared to NOVA-Fortis, our design provides a speedup of ≈ 1.67× and ≈ 3× for the two set of benchmarks, respectively.

READ FULL TEXT
research
04/01/2020

Crafty: Efficient, HTM-Compatible Persistent Transactions

Byte-addressable persistent memory, such as Intel/Micron 3D XPoint, is a...
research
05/13/2022

UniHeap: Managing Persistent Objects Across Managed Runtimes for Non-Volatile Memory

Byte-addressable, non-volatile memory (NVM) is emerging as a promising t...
research
09/30/2020

Persistent Data Retention Models

Non-Volatile Memory devices may soon be a part of main memory, and progr...
research
03/14/2020

Understanding and Optimizing Persistent Memory Allocation

The proliferation of fast, dense, byte-addressable nonvolatile memory su...
research
02/05/2020

Observations on Porting In-memory KV stores to Persistent Memory

Systems that require high-throughput and fault tolerance, such as key-va...
research
10/27/2017

Espresso: Brewing Java For More Non-Volatility with Non-volatile Memory

Fast, byte-addressable non-volatile memory (NVM) embraces both near-DRAM...
research
05/22/2020

CAPre: Code-Analysis based Prefetching for Persistent Object Stores

Data prefetching aims to improve access times to data storage systems by...

Please sign up or login with your details

Forgot password? Click here to reset