We introduce Immortal Threads, a novel programming model that brings pseudo-stackful multithreaded processing to intermittent computing. Programmers using Immortal Threads are oblivious to intermittent execution and write their applications in a multithreaded fashion using common event-driven multithreading primitives. Our compiler fronted transforms the stackful threads into stackless threads that waste a minimum amount of computational progress upon power failures. Our runtime implements fair scheduling to switch between threads efficiently. We evaluated Immortal Threads on real hardware by comparing it against the state-of-the-art intermittent runtimes. Our comparison showed that the price paid for the Immortal Threads is a runtime overhead comparable to existing intermittent computing runtimes.

Immortal Threads: Multithreaded Event-driven Intermittent Computing on Ultra-Low-Power Microcontrollers / Yildiz, Eren; Chen, Lijun; Yildirim, Kasim Sinan. - (2022), pp. 339-355. (Intervento presentato al convegno 16th USENIX Symposium on Operating Systems Design and Implementation (OSDI 22) tenutosi a Carlsbad, CA, USA nel 11-13 July 2022).

Immortal Threads: Multithreaded Event-driven Intermittent Computing on Ultra-Low-Power Microcontrollers

Yildiz, Eren;Yildirim, Kasim Sinan
2022-01-01

Abstract

We introduce Immortal Threads, a novel programming model that brings pseudo-stackful multithreaded processing to intermittent computing. Programmers using Immortal Threads are oblivious to intermittent execution and write their applications in a multithreaded fashion using common event-driven multithreading primitives. Our compiler fronted transforms the stackful threads into stackless threads that waste a minimum amount of computational progress upon power failures. Our runtime implements fair scheduling to switch between threads efficiently. We evaluated Immortal Threads on real hardware by comparing it against the state-of-the-art intermittent runtimes. Our comparison showed that the price paid for the Immortal Threads is a runtime overhead comparable to existing intermittent computing runtimes.
2022
Proceedings of the 16th USENIX Symposium on Operating Systems Design and Implementation, OSDI 2022
Carlsbad, CA, USA
USENIX Association
978-1-939133-28-1
Yildiz, Eren; Chen, Lijun; Yildirim, Kasim Sinan
Immortal Threads: Multithreaded Event-driven Intermittent Computing on Ultra-Low-Power Microcontrollers / Yildiz, Eren; Chen, Lijun; Yildirim, Kasim Sinan. - (2022), pp. 339-355. (Intervento presentato al convegno 16th USENIX Symposium on Operating Systems Design and Implementation (OSDI 22) tenutosi a Carlsbad, CA, USA nel 11-13 July 2022).
File in questo prodotto:
File Dimensione Formato  
osdi22-yildiz (1).pdf

accesso aperto

Tipologia: Versione editoriale (Publisher’s layout)
Licenza: Tutti i diritti riservati (All rights reserved)
Dimensione 2.13 MB
Formato Adobe PDF
2.13 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/360081
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 17
  • ???jsp.display-item.citation.isi??? 13
  • OpenAlex ND
social impact