Change of plans: optimizing for power, reliability and timeliness for cost-conscious real-time systems

Abstract

The large-scale adoption of embedded devices naturally sees them deployed under widely varying constraints matching an equally wide number of environments and applications. Such devices may be under hard timing constraints as a result of their domain (real-time), but other constraints, such as reliability and power, are becoming increasingly relevant. In particular, battery-powered devices are limited in runtime due to their long-running average power (amortized power) consumption. We propose a real-time scheduling algorithm optimizing for reliability under an amortized energy budget. Weakly-hard real-time tasks can tolerate patterns of failures and successes, and we leverage this property as the driver of reliability in a constrained environment. Reliability against transient faults is increased by dynamically switching the protected subset of the task set based on the observed history of task success/fails. By performing such a change of plans only for tasks in need, we can cost-effectively boost reliability while lowering energy consumption. Our method optimizes reliability for a given deadline and energy budget. We explore the behavior of our method under a wide range of energy and time constrained environments, illustrating the trade-off between amortized power, timeliness and reliability, enabling application designers to make cost-conscious decisions.

Publication
DSD 2023