Recipe: Converting concurrent dram indexes to persistent-memory indexes
We present Recipe, a principled approach for converting concurrent DRAM indexes into
crash-consistent indexes for persistent memory (PM). The main insight behind Recipe is that …
crash-consistent indexes for persistent memory (PM). The main insight behind Recipe is that …
System software for persistent memory
Emerging byte-addressable, non-volatile memory technologies offer performance within an
order of magnitude of DRAM, prompting their inclusion in the processor memory subsystem …
order of magnitude of DRAM, prompting their inclusion in the processor memory subsystem …
{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 …
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 …
Witcher: Systematic crash consistency testing for non-volatile memory key-value stores
The advent of non-volatile main memory (NVM) enables the development of crash-
consistent software without paying storage stack overhead. However, building a correct …
consistent software without paying storage stack overhead. However, building a correct …
PMFuzz: Test case generation for persistent memory programs
The Persistent Memory (PM) technology combines the persistence of storage with the
performance approaching that of DRAM. Programs taking advantage of PM must ensure …
performance approaching that of DRAM. Programs taking advantage of PM must ensure …
Fast, flexible, and comprehensive bug detection for persistent memory programs
Debugging persistent memory (PM) programs faces a fundamental tradeoff between
performance overhead and bug coverage (comprehensiveness). Large performance …
performance overhead and bug coverage (comprehensiveness). Large performance …
Jaaru: Efficiently model checking persistent memory programs
Persistent memory (PM) technologies combine near DRAM performance with persistency
and open the possibility of using one copy of a data structure as both a working copy and a …
and open the possibility of using one copy of a data structure as both a working copy and a …
Janus: Optimizing memory and storage support for non-volatile memory systems
Non-volatile memory (NVM) technologies can manipulate persistent data directly in memory.
Ensuring crash consistency of persistent data enforces that data updates reach all the way to …
Ensuring crash consistency of persistent data enforces that data updates reach all the way to …