Minimizing Energy and Computation in Long-Running Software

Author Gelenbe E.; Siavvas M.
Title Minimizing Energy and Computation in Long-Running Software
Journal Applied Sciences
Year 2021
Status Published
Volume 11
Issue 3
DOI 10.3390/app11031169
Abstract <p>Long-running software may operate on hardware platforms with limited energy resources<br />
such as batteries or photovoltaic, or on high-performance platforms that consume a large amount<br />
of energy. Since such systems may be subject to hardware failures, checkpointing is often used to<br />
assure the reliability of the application. Since checkpointing introduces additional computation time<br />
and energy consumption, we study how checkpoint intervals need to be selected so as to minimize a<br />
cost function that includes the execution time and the energy. Expressions for both the program’s<br />
energy consumption and execution time are derived as a function of the failure probability per<br />
instruction. A first principle based analysis yields the checkpoint interval that minimizes a linear<br />
combination of the average energy consumption and execution time of the program, in terms of the<br />
classical “Lambert function”. The sensitivity of the checkpoint to the importance attributed to energy<br />
consumption is also derived. The results are illustrated with numerical examples regarding programs<br />
of various lengths and showing the relation between the checkpoint interval that minimizes energy<br />
consumption and execution time, and the one that minimizes a weighted sum of the two. In addition,<br />
our results are applied to a popular software benchmark, and posted on a publicly accessible web<br />
site, together with the optimization software that we have developed.</p>
PDF Minimizing Energy and Computation in Long-Running.pdf