Lightweight Memory Checkpointing

Lightweight Memory Checkpointing
复制标题

轻量级内存检查点

DOI:
10.1109/dsn.2015.45
复制
发表时间:
2015
期刊:
2015 45th Annual IEEE/IFIP International Conference on Dependable Systems and Networks
影响因子:
--
通讯作者:
A. Tanenbaum
A. Tanenbaum
中科院分区:
--
文献类型:
--
作者:
Dirk Vogt;Cristiano Giuffrida;H. Bos;A. Tanenbaum

文献摘要

被引文献

相似文献

内存检查点是系统可靠性的关键技术,其应用范围从崩溃恢复到重放调试。不幸的是,许多传统的内存检查点用例需要高频率的检查点,现有的应用程序级解决方案并不适合。问题是,它们要么招致大量的运行时性能开销,要么招致很差的内存使用保证。因此,在实践中的应用受到阻碍。本文介绍了轻量级内存检查点(LMC),一个新的用户级内存检查点技术,结合低性能开销与强大的内存使用保证高检查点频率。为此,LMC依赖于基于编译器的插装来影子运行程序的整个存储器地址空间,并在LMC维护的影子状态中递增地检查点修改存储器字节。流行的服务器应用程序的评估表明,我们的方法在实践中的可行性,确认LMC在运行时严格限制内存使用的低性能开销。
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.