Energy-neutral Internet of Things requires freeing embedded devices from batteries and powering them from ambient energy. Ambient energy is, however, unpredictable and can only power a device intermittently. Therefore, the paradigm of intermittent execution is to save the program state into non-volatile memory frequently to preserve the execution progress. In task-based intermittent programming, the state is saved at task transition. Tasks are fixed at compile time and agnostic to energy conditions. Thus, the state may be saved either more often than necessary or not often enough for the program to progress and terminate. To address these challenges, we propose Coala, an adaptive and efficient task-based execution model. Coala progresses on a multi-task scale when energy permits and preserves the computation progress on a sub-task scale if necessary. Coala's specialized memory virtualization mechanism ensures that power failures do not leave the program state in non-volatile memory inconsistent. Our evaluation on a real energy-harvesting platform not only shows that Coala reduces runtime by up to 54% as compared to a state-of-the-art system, but also it is able to progress where static systems fail.

Dynamic task-based intermittent execution for energy-harvesting devices / Majid, A. Y.; Donne, C. D.; Maeng, K.; Colin, A.; Yildirim, K. S.; Lucia, B.; Pawelczak, P.. - In: ACM TRANSACTIONS ON SENSOR NETWORKS. - ISSN 1550-4859. - 16:1(2020), pp. 501-524. [10.1145/3360285]

Dynamic task-based intermittent execution for energy-harvesting devices

Yildirim K. S.;
2020-01-01

Abstract

Energy-neutral Internet of Things requires freeing embedded devices from batteries and powering them from ambient energy. Ambient energy is, however, unpredictable and can only power a device intermittently. Therefore, the paradigm of intermittent execution is to save the program state into non-volatile memory frequently to preserve the execution progress. In task-based intermittent programming, the state is saved at task transition. Tasks are fixed at compile time and agnostic to energy conditions. Thus, the state may be saved either more often than necessary or not often enough for the program to progress and terminate. To address these challenges, we propose Coala, an adaptive and efficient task-based execution model. Coala progresses on a multi-task scale when energy permits and preserves the computation progress on a sub-task scale if necessary. Coala's specialized memory virtualization mechanism ensures that power failures do not leave the program state in non-volatile memory inconsistent. Our evaluation on a real energy-harvesting platform not only shows that Coala reduces runtime by up to 54% as compared to a state-of-the-art system, but also it is able to progress where static systems fail.
2020
1
Majid, A. Y.; Donne, C. D.; Maeng, K.; Colin, A.; Yildirim, K. S.; Lucia, B.; Pawelczak, P.
Dynamic task-based intermittent execution for energy-harvesting devices / Majid, A. Y.; Donne, C. D.; Maeng, K.; Colin, A.; Yildirim, K. S.; Lucia, B.; Pawelczak, P.. - In: ACM TRANSACTIONS ON SENSOR NETWORKS. - ISSN 1550-4859. - 16:1(2020), pp. 501-524. [10.1145/3360285]
File in questo prodotto:
File Dimensione Formato  
3360285 (2).pdf

accesso aperto

Descrizione: Main article
Tipologia: Versione editoriale (Publisher’s layout)
Licenza: Tutti i diritti riservati (All rights reserved)
Dimensione 1.08 MB
Formato Adobe PDF
1.08 MB Adobe PDF Visualizza/Apri

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/11572/257892
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 50
  • ???jsp.display-item.citation.isi??? 41
social impact