Euripus: A flexible unified hardware memory checkpointing accelerator for bidirectional-debugging and reliability
Euripus: A flexible unified hardware memory checkpointing accelerator for bidirectional-debugging and reliability
复制标题
Euripus:灵活的统一硬件内存检查点加速器,用于双向调试和可靠性
DOI:
10.1145/2366231.2337190
复制
发表时间:
2012
期刊:
影响因子:
--
通讯作者:
Milos Prvulović
中科院分区:
文献类型:
--
作者:
Ioannis Doudalis;Milos Prvulović
Bidirectional debugging and error recovery have different goals (programmer productivity and system reliability, respectively), yet they both require the ability to roll-back the program or the system to a past state. This rollback functionality is typically implemented using checkpoints that can restore the system/application to a specific point in time. There are several types of checkpoints, and bidirectional debugging and error-recovery use them in different ways. This paper presents Euripus1, a flexible hardware accelerator for memory checkpointing which can create different combinations of checkpoints needed for bidirectional debugging, error recovery, or both. In particular, Euripus is the first hardware technique to provide consolidation-friendly undo-logs (for bidirectional debugging), to allow simultaneous construction of both undo and redo logs, and to support multi-level checkpointing for the needs of error-recovery. Euripus incurs low performance overheads (<;5% on average), improves roll-back latency for bidirectional debugging by >;30%, and supports rapid multi-level error recovery that allows >;95% system efficiency even with very high error rates.