Persistent memory: A survey of programming support and implementations
The recent rise of byte-addressable non-volatile memory technologies is blurring the
dichotomy between memory and storage. In particular, they allow programmers to have …
dichotomy between memory and storage. In particular, they allow programmers to have …
Flatstore: An efficient log-structured key-value storage engine for persistent memory
Emerging hardware like persistent memory (PM) and high-speed NICs are promising to
build efficient key-value stores. However, we observe that the small-sized access pattern in …
build efficient key-value stores. However, we observe that the small-sized access pattern in …
Endurable transient inconsistency in {Byte-Addressable} persistent {B+-Tree}
With the emergence of byte-addressable persistent memory (PM), a cache line, instead of a
page, is expected to be the unit of data transfer between volatile and nonvolatile devices, but …
page, is expected to be the unit of data transfer between volatile and nonvolatile devices, but …
Performance and protection in the ZoFS user-space NVM file system
Non-volatile memory (NVM) can be directly accessed in user space without going through
the kernel. This encourages several recent studies on building user-space NVM file systems …
the kernel. This encourages several recent studies on building user-space NVM file systems …
{AGAMOTTO}: How Persistent is your Persistent Memory Application?
Persistent Memory (PM) can be used by applications to directly and quickly persist any data
structure, without the overhead of a file system. However, writing PM applications that are …
structure, without the overhead of a file system. However, writing PM applications that are …
Cross-failure bug detection in persistent memory programs
Persistent memory (PM) technologies, such as Intel's Optane memory, deliver high
performance, byte-addressability, and persistence, allowing programs to directly manipulate …
performance, byte-addressability, and persistence, allowing programs to directly manipulate …
Halo: A hybrid PMem-DRAM persistent hash index with fast recovery
Hash index, a fundamental component in many data management systems, can benefit from
the emerging persistent memory (PMem) to achieve high performance and instant recovery …
the emerging persistent memory (PMem) to achieve high performance and instant recovery …
PMTest: A fast and flexible testing framework for persistent memory programs
Recent non-volatile memory technologies such as 3D XPoint and NVDIMMs have enabled
persistent memory (PM) systems that can manipulate persistent data directly in memory. This …
persistent memory (PM) systems that can manipulate persistent data directly in memory. This …
Crash consistency in encrypted non-volatile main memory systems
Non-Volatile Main Memory (NVMM) systems provide high performance by directly
manipulating persistent data in-memory, but require crash consistency support to recover …
manipulating persistent data in-memory, but require crash consistency support to recover …
NVAlloc: Rethinking heap metadata management in persistent memory allocators
Persistent memory allocation is a fundamental building block for develo** high-
performance and in-memory applications. Existing persistent memory allocators suffer from …
performance and in-memory applications. Existing persistent memory allocators suffer from …