FlexiCheck: An Adaptive Checkpointing Architecture for Energy Harvesting Devices
Priyanka Singlaa, Shubhankar Suman Singhb and Smruti R. Sarangic
Indian Institute of Technology, New Delhi, India
apriyanka@cse.iitd.ac.in
bshubhankar@cse.iitd.ac.in
csrsarangi@cse.iitd.ac.in
ABSTRACT
With the advent of 5G and M2M architectures, energy harvesting devices are expected to become far more prevalent. Such devices harvest energy from ambient sources such as solar energy or vibration energy (from machines) and use it for sensing the environmental parameters and further processing them. Given that the rate of energy consumption is more than the rate of energy production, it is necessary to frequently halt the processor and accumulate energy from the environment. During this period it is mandatory to take a checkpoint to avoid the loss of data. State of the art algorithms use software based methods that extensively rely on compiler analyses.
In this paper, we provide the first formal model for such systems, and show that we can arrive at an optimal checkpointing schedule using a quadratically constrained linear program (QCLP) solver. Using this as a baseline, we show that existing algorithms for checkpointing significantly underperform. Furthermore, we prove and demonstrate that when we have a relatively constant energy source, a greedy algorithm provides an optimal solution. To model more complex situations where the energy varies, we create a novel checkpointing algorithm that adapts itself according to the ambient energy. We obtain a speedup of 2-5× over the nearest competing approach, and we are within 3 - 8% of the optimal solution in the general case where the ambient energy exhibits variations.