ResPCT: Fast Checkpointing in Non-volatile Memory for Multi-threaded Applications

14Citations
Citations of this article
5Readers
Mendeley users who have this article in their library.
Get full text

Abstract

Non-volatile memory (NVMM) technologies are a great opportunity to build fast fault-tolerant programs, as they provide persistent storage in main memory. However, since the processor caches remain volatile, solutions are needed to recover a consistent state from NVMM after a crash. This paper presents ResPCT, a checkpointing approach to make multi-threaded programs fault tolerant, by flushing persistent data structures to NVMM periodically. ResPCT uses In-Cache-Line logging to efficiently track modifications during failure-free execution, and to restore a consistent state after a crash. The ResPCT API enables programmers to position restart points in their program, which simplifies the identification of the persistent program state and can also help improving performance. Experiments with representative benchmarks and applications, show that ResPCT can outperform state-of-the-art solutions by up to 2.7×, and that its overhead can be as low as 4% at large core count.

Cite

CITATION STYLE

APA

Khorguani, A., Ropars, T., & De Palma, N. (2022). ResPCT: Fast Checkpointing in Non-volatile Memory for Multi-threaded Applications. In EuroSys 2022 - Proceedings of the 17th European Conference on Computer Systems (pp. 525–540). Association for Computing Machinery, Inc. https://doi.org/10.1145/3492321.3519590

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free