Fine-Grain Checkpointing with In-Cache-Line Logging

02/02/2019
by   Nachshon Cohen, et al.
0

Non-Volatile Memory offers the possibility of implementing high-performance, durable data structures. However, achieving performance comparable to well-designed data structures in non-persistent (transient) memory is difficult, primarily because of the cost of ensuring the order in which memory writes reach NVM. Often, this requires flushing data to NVM and waiting a full memory round-trip time. In this paper, we introduce two new techniques: Fine-Grained Checkpointing, which ensures a consistent, quickly recoverable data structure in NVM after a system failure, and In-Cache-Line Logging, an undo-logging technique that enables recovery of earlier state without requiring cache-line flushes in the normal case. We implemented these techniques in the Masstree data structure, making it persistent and demonstrating the ease of applying them to a highly optimized system and their low (5.9-15.4%) runtime overhead cost.

READ FULL TEXT

page 10

page 11

page 12

research
03/14/2019

Architecture-Aware, High Performance Transaction for Persistent Memory

Byte-addressable non-volatile main memory (NVM) demands transactional me...
research
12/04/2017

Reclaiming memory for lock-free data structures: there has to be a better way

Memory reclamation for lock-based data structures is typically easy. How...
research
06/29/2020

Transactions on Red-black and AVL trees in NVRAM

Byte-addressable non-volatile memory (NVRAM) supports persistent storage...
research
04/01/2020

Assessing Impact of Data Partitioning for Approximate Memory in C/C++ Code

Approximate memory is a technique to mitigate the performance gap betwee...
research
09/08/2017

Efficient Logging in Non-Volatile Memory by Exploiting Coherency Protocols

Non-volatile memory (NVM) technologies such as PCM, ReRAM and STT-RAM al...
research
08/09/2021

FliT: A Library for Simple and Efficient Persistent Algorithms

Non-volatile random access memory (NVRAM) offers byte-addressable persis...
research
08/29/2023

A Task-Parallel Approach for Localized Topological Data Structures

Unstructured meshes are characterized by data points irregularly distrib...

Please sign up or login with your details

Forgot password? Click here to reset