Lightweight Memory Checkpointing

Research output: Chapter in Book / Report / Conference proceedingConference contributionAcademicpeer-review

Abstract

Memory check pointing is a pivotal technique in systems reliability, with applications ranging from crash recovery to replay debugging. Unfortunately, many traditional memory check pointing use-cases require high-frequency checkpoints, something for which existing application-level solutions are not well-suited. The problem is that they incur either substantial run-time performance overhead, or poor memory usage guarantees. As a result, their application in practice is hampered. This paper presents Lightweight Memory Check pointing (LMC), a new user-level memory check pointing technique that combines low performance overhead with strong memory usage guarantees for high check pointing frequencies. To this end, LMC relies on compiler-based instrumentation to shadow the entire memory address space of the running program and incrementally checkpoint modified memory bytes in a LMC-maintained shadow state. Our evaluation on popular server applications demonstrates the viability of our approach in practice, confirming that LMC imposes low performance overhead with strictly bounded memory usage at runtime.
Original languageEnglish
Title of host publicationProceedings of the 45th IEEE/IFIP International Conference on Dependable Systems and Networks
PublisherIEEE CS
Pages474-484
ISBN (Electronic)978-1-4799-8629-3
DOIs
Publication statusPublished - 2015

Fingerprint

Dive into the research topics of 'Lightweight Memory Checkpointing'. Together they form a unique fingerprint.

Cite this