arXiv · 1902.00660
Fine-Grain Checkpointing with In-Cache-Line Logging
Abstract
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.
Explore related subjects
Keep this discovery
Nachshon Cohen, David T. Aksun, Hillel Avni, James R. Larus. 2019-02-02. Fine-Grain Checkpointing with In-Cache-Line Logging. https://doi.org/10.1145/3297858.3304046
Cite the original work for its findings. Save a collection to share your selection of sources.