Sensing systems powered by energy harvesting have traditionally been designed to tolerate long periods without energy. As the Internet of Things (IoT) evolves towards a more transient and opportunistic execution paradigm, reducing energy storage costs will be key for its economic and ecologic viability. However, decreasing energy storage in harvesting systems introduces reliability issues. Transducers only produce intermittent energy at low voltage and current levels, making guaranteed task completion a challenge. Existing ad hoc methods overcome this by bufering enough energy either for single tasks, incurring large data-retention overheads, or for one full application cycle, requiring a large energy bufer. We present Julienning: an automated method for optimizing the total energy cost of batteryless applications. Using a custom speciication model, developers can describe transient applications as a set of atomically executed kernels with explicit data dependencies. Our optimization low can partition data- and energy-intensive applications into multiple execution cycles with bounded energy consumption. By leveraging interkernel data dependencies, these energy-bounded execution cycles minimize the number of system activations and nonvolatile data transfers, and thus the total energy overhead. We validate our methodology with two batteryless cameras running energy-intensive machine learning applications. Using a solar testbed, we replay real-world illuminance traces to experimentally demonstrate optimized batteryless execution with a transducer-to-application energy eiciency of 74.5%. Partitioning results demonstrate that compared to ad hoc solutions, our method can reduce the required energy storage by over 94% while only incurring a 0.12% energy overhead.
Gomez, A., Tretter, A., Hager, P.A., Sanmugarajah, P., Benini, L., Thiele, L. (2022). Data-flow Driven Partitioning of Machine Learning Applications for Optimal Energy Use in Batteryless Systems. ACM TRANSACTIONS ON EMBEDDED COMPUTING SYSTEMS, 21(5), .-. [10.1145/3520135].
Data-flow Driven Partitioning of Machine Learning Applications for Optimal Energy Use in Batteryless Systems
Benini, Luca;
2022
Abstract
Sensing systems powered by energy harvesting have traditionally been designed to tolerate long periods without energy. As the Internet of Things (IoT) evolves towards a more transient and opportunistic execution paradigm, reducing energy storage costs will be key for its economic and ecologic viability. However, decreasing energy storage in harvesting systems introduces reliability issues. Transducers only produce intermittent energy at low voltage and current levels, making guaranteed task completion a challenge. Existing ad hoc methods overcome this by bufering enough energy either for single tasks, incurring large data-retention overheads, or for one full application cycle, requiring a large energy bufer. We present Julienning: an automated method for optimizing the total energy cost of batteryless applications. Using a custom speciication model, developers can describe transient applications as a set of atomically executed kernels with explicit data dependencies. Our optimization low can partition data- and energy-intensive applications into multiple execution cycles with bounded energy consumption. By leveraging interkernel data dependencies, these energy-bounded execution cycles minimize the number of system activations and nonvolatile data transfers, and thus the total energy overhead. We validate our methodology with two batteryless cameras running energy-intensive machine learning applications. Using a solar testbed, we replay real-world illuminance traces to experimentally demonstrate optimized batteryless execution with a transducer-to-application energy eiciency of 74.5%. Partitioning results demonstrate that compared to ad hoc solutions, our method can reduce the required energy storage by over 94% while only incurring a 0.12% energy overhead.I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.