Fixing The Broken Timemachine: Consistency-Aware Checkpointing For Energyharvesting Powered Non-Volatile Processor

Mimi Xie,Mengying Zhao,Chen Pan,Jingtong Hu,Yongpan Liu,Chun Jason Xue
DOI: https://doi.org/10.1145/2744769.2744842
2015-01-01
Abstract:Energy harvesting has become a favorable alternative to batteries for wearable embedded systems since it is more environmental and user friendly. However, harvested energy is intrinsically unstable, which could frequently interrupt a processor's execution. To tackle this problem, nonvolatile processors have been proposed to checkpoint the whole volatile processor state into attached non-volatile memories periodically. When power resumes, the processor can copy the checkpointed state back to volatile memories and continue execution. However, without careful consideration, the process of checkpointing and resuming could cause inconsistency among different memory addresses and lead to irreversible errors. In this paper, we present a consistency aware checkpointing scheme that ensures correctness for all checkpoints. The proposed technique efficiently identifies all possible inconsistency positions in programs and inserts auxiliary code to ensure correctness. Evaluation results show that the proposed checkpointing technique can successfully eliminate inconsistency errors and greatly reduce the checkpointing overhead.
What problem does this paper attempt to address?