skip to main content
10.1145/3373376.3378476acmconferencesArticle/Chapter ViewAbstractPublication PagesasplosConference Proceedingsconference-collections
research-article
Open Access
Artifacts Available

Time-sensitive Intermittent Computing Meets Legacy Software

Published:13 March 2020Publication History

ABSTRACT

Tiny energy harvesting sensors that operate intermittently, without batteries, have become an increasingly appealing way to gather data in hard to reach places at low cost. Frequent power failures make forward progress, data preservation and consistency, and timely operation challenging. Unfortunately, state-of-the-art systems ask the programmer to solve these challenges, and have high memory overhead, lack critical programming features like pointers and recursion, and are only dimly aware of the passing of time and its effect on application quality. We present Time-sensitive Intermittent Computing System (TICS), a new platform for intermittent computing, which provides simple programming abstractions for handling the passing of time through intermittent failures, and uses this to make decisions about when data can be used or thrown away. Moreover, TICS provides predictable checkpoint sizes by keeping checkpoint and restore times small and reduces the cognitive burden of rewriting embedded code for intermittency without limiting expressibility or language functionality, enabling numerous existing embedded applications to run intermittently.

References

  1. Clang 7 libtooling. https://github.com/llvm-mirror/clang/blob/master/docs/LibTooling.rst, March 2019. Last accessed: Jan. 20, 2020.Google ScholarGoogle Scholar
  2. sysname website. https://github.com/tudssl/tics, January 2020. Last accessed: Jan. 16, 2020.Google ScholarGoogle Scholar
  3. Saad Ahmed, Muhammad Hamad Alizai, Junaid Haroon Siddiqui, Naveed Anwar Bhatti, and Luca Mottola. Towards smaller checkpoints for better intermittent computing. In Proc. IPSN, pages 132--133, Porto, Portugal, 2018. ACM/IEEE.Google ScholarGoogle Scholar
  4. Ala Al-Fuqaha, Mohsen Guizani, Mehdi Mohammadi, Mohammed Aledhari, and Moussa Ayyash. Internet of things: A survey on enabling technologies, protocols, and applications. IEEE Commun. Surveys Tuts., 17(4):2347--2376, Fourth Quarter 2015.Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Domenico Balsamo, Alex S. Weddell, Anup Das, Alberto Rodriguez Arreola, Davide Brunelli, Bashir M. Al-Hashimi, Geoff V. Merrett, and Luca Benini. HibernusGoogle ScholarGoogle Scholar
  6. : a self-calibrating and adaptive system for transiently-powered embedded devices. IEEE Trans. Comput.-Aided Design Integr. Circuits Syst., 35(12):1968--1980, 2016.Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Naveed Bhatti and Luca Mottola. HarvOS: Efficient code instrumentation for transiently-powered embedded devices. In Proc. IPSN, pages 209--219, Pittsburgh, PA, USA, 2017. ACM/IEEE.Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. John Burgess, Brian Gallagher, David Jensen, and Brian Neil Levine. MaxProp: routing for vehicle-based disruption-tolerant networks. In Proc. INFOCOM, Barcelona, Spain, 2006. IEEE.Google ScholarGoogle ScholarCross RefCross Ref
  9. An Chen. A review of emerging non-volatile memory (NVM) technologies and applications. Solid-State Electronics, 125:25--38, November 2016.Google ScholarGoogle ScholarCross RefCross Ref
  10. Alexei Colin and Brandon Lucia. Chain: Tasks and channels for reliable intermittent programs. In Proc. OOPSLA, pages 514--530, Amsterdam, The Netherlands, 2016. ACM.Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Alexei Colin and Brandon Lucia. Termination checking and task decomposition for task-based intermittent programs. In Proc. Conference on Compiler Construction, pages 116--127, Vienna, Austria, 2018. ACM.Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Alexei Colin, Emily Ruppel, and Brandon Lucia. A reconfigurable energy storage architecture for energy-harvesting devices. In Proc. ASPLOS, pages 767--781, Williamsburg, VA, USA, 2018. ACM.Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Adam Dunkels, Bjö rn Grönvall, and Thiemo Voigt. Contiki - a lightweight and flexible operating system for tiny networked sensors. In Proc. LCN, pages 455--462, Tampa, FL, USA, 2004. IEEE.Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Salma Elmalaki, Huey-Ru Tsai, and Mani Srivastava. Sentio: Driver-in-the-loop forward collision warning using multisample reinforcement learning. In Proc. SenSys, pages 28--40, Shenzhen, China, 2018. ACM.Google ScholarGoogle Scholar
  15. Jakob Eriksson, Lewis Girod, Bret Hull, Ryan Newton, Samuel Madden, and Hari Balakrishnan. The pothole patrol: Using a mobile sensor network for road surface monitoring. In Proc. MobiSys, pages 29--39, New York, NY, USA, 2008. ACM.Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. A. Fioravanti-Score, Sarah V. Mitchell, and J. Michael Williamson. Use of Satellite Telemetry Technology to Enhance Research and Education in the Protection of Loggerhead Sea Turtles. In Proc. Annual Symp. on Sea Turtle Biology and Conservation, South Padre Island, TX, USA, 1999. NOAA.Google ScholarGoogle Scholar
  17. Matthew R. Guthaus, Jeffrey S. Ringenberg, Dan Ernst, Todd M. Austin, Trevor Mudge, and Richard B. Brown. MiBench: A free, commercially representative embedded benchmark suite. In Proc. Workload Characterization Workshop, pages 3--14, Austin, TX, USA, 2001. IEEE.Google ScholarGoogle ScholarCross RefCross Ref
  18. Josiah Hester, Travis Petersy, Tianlong Yuny, Ronald Petersony, Joseph Skinnery, Bhargav Golla, Kevin Storer, Steven Hearndon, Kevin Freeman, Sarah Lordy, Ryan Haltery, David Kotz, and Jacob Sorber. Amulet: An energy-efficient, multi-application wearable platform. In Proc. SenSys, pages 216--229, Stanford, CA, USA, 2016. ACM.Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Josiah Hester and Jacob Sorber. Flicker: Rapid prototyping for the batteryless internet-of-things. In Proc. SenSys, pages 19:1--19:13, Delft, The Netherlands, 2017. ACM.Google ScholarGoogle Scholar
  20. Josiah Hester and Jacob Sorber. The future of sensing is batteryless, intermittent, and awesome. In Proc. SenSys, pages 21:1--21:6, Delft, The Netherlands, 2017. ACM.Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Josiah Hester, Kevin Storer, and Jacob Sorber. Timely execution on intermittently powered batteryless sensors. In Proc. SenSys, pages 17:1--17:13, Delft, The Netherlands, 2017. ACM.Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Josiah Hester, Nicole Tobias, Amir Rahmati, Lanny Sitanayah, Daniel Holcomb, Kevin Fu, Wayne P. Burleson, and Jacob Sorber. Persistent clocks for batteryless sensing devices. ACM Trans. Embed. Comput. Syst., 15(4):77:1--77:28, August 2016.Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Matthew Hicks. Clank: Architectural support for intermittent computation. In Proc. ISCA, pages 228--240, Toronto, ON, Canada, 2017. ACM.Google ScholarGoogle Scholar
  24. Hrishikesh Jayakumar, Arnab Raha, Woo Suk Lee, and Vijay Raghunathan. Quickrecall: A HW/SW approach for computing across power cycles in transiently powered computers. J. Emerg. Technol. Comput. Syst., 12(1):8:1--8:19, July 2015.Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Fredrik Larsson and Bengt-Erik Mellander. Abuse by external heating, overcharge and short circuiting of commercial lithium-ion battery cells. Journal of The Electrochemical Society, 161(10):A1611--A1617, 2014.Google ScholarGoogle ScholarCross RefCross Ref
  26. Philip Levis, Sam Madden, Joseph Polastre, Rober Szewczyk, Kamin Whitehouse, Alec Woo, David Gay, Jason Hill, Matt Welsh, Eric Brewer, and David Culler. TinyOS: An operating system for sensor networks. In Werner Weber, Jan M. Rabaey, and Emile Aarts, editors, Ambient intelligence, pages 115--148. Springer, Berlin, Germany, 2005.Google ScholarGoogle ScholarCross RefCross Ref
  27. Hong Lu, Jun Yang, Zhigang Liu, Nicholas D. Lane, Tanzeem Choudhury, and Andrew T. Campbell. The jigsaw continuous sensing engine for mobile phone applications. In Proc. SenSys, pages 71--84, Zürich, Switzerland, 2010.Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Brandon Lucia, Vignesh Balaji, Alexei Colin, Kiwan Maeng, and Emily Ruppel. Intermittent computing: Challenges and opportunities. In Proc. SNAPL, pages 8:1--8:14, Alisomar, CA, USA, 2017.Google ScholarGoogle Scholar
  29. Brandon Lucia and Benjamin Ransford. A simpler, safer programming and execution model for intermittent systems. In Proc. PLDI, pages 575--585, Portland, OR, USA, 2015. ACM.Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Kaisheng Ma, Xueqing Li, Karthik Swaminathan, Yang Zheng, Shuangchen Li, Yongpan Liu, Yuan Xie, John Jack Sampson, and Vijaykrishnan Narayanan. Nonvolatile processor architectures: Efficient, reliable progress with unstable power. IEEE Micro, 36(3):72--83, May/Jun. 2016.Google ScholarGoogle ScholarCross RefCross Ref
  31. Kaisheng Ma, Yang Zheng, Shuangchen Li, Karthik Swaminathan, Xueqing Li, Yongpan Liu, Jack Sampson, Yuan Xie, and Vijaykrishnan Narayanan. Architecture exploration for ambient energy harvesting nonvolatile processors. In Proc. HPCA, pages 526--537, Burlingame, CA, USA, 2015. IEEE.Google ScholarGoogle ScholarCross RefCross Ref
  32. Kiwan Maeng, Alexei Colin, and Brandon Lucia. Alpaca: Intermittent execution without checkpoints. In Proc. OOPSLA, pages 96:1--96:30, Vancouver, BC, Canada, 2017. ACM.Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Kiwan Maeng, Alexei Colin, and Brandon Lucia. Adaptive dynamic checkpointing for safe efficient intermittent computing. In Proc. OSDI, Carlsbad, CA, USA, 2018. USENIX.Google ScholarGoogle Scholar
  34. Sujay Narayana, R. Venkatesha Prasad, Vijay S. Rao, and Chris Verhoeven. SWANS: sensor wireless actuator network in space. In Proc. SenSys, pages 23:1--23:6, Delft, The Netherlands, 2017. ACM.Google ScholarGoogle Scholar
  35. Anh Nguyen, Raghda Alqurashi, Zohreh Raghebi, Farnoush Banaei-Kashani, Ann C. Halbower, and Tam Vu. A lightweight and inexpensive in-ear sensing system for automatic whole-night sleep stage monitoring. In Proc. SenSys, pages 230--244, Stanford, CA, USA, 2016. ACM.Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. M. R. Palac'in and A. de Guibert. Why do batteries fail? Science, 351(6273), 2016.Google ScholarGoogle Scholar
  37. Powercast Corp. Powercast hardware development kits website. https://www.powercastco.com/products/development-kits/, 2014. Last accessed: Jan. 20, 2020.Google ScholarGoogle Scholar
  38. Amir Rahmati, Mastooreh Salajegheh, Dan Holcomb, Jacob Sorber, Wayne P. Burleson, and Kevin Fu. TARDIS: time and remanence decay in SRAM to implement secure protocols on embedded devices without clocks. In Proc. Security Symposium, pages 36--36, Bellevue, WA, USA, 2012. USENIX.Google ScholarGoogle Scholar
  39. Benjamin Ransford and Brandon Lucia. Nonvolatile memory is a broken time machine. In Proc. Workshop on Memory Systems Performance and Correctness, pages 5:1--5:3, Edinburgh, Scotland, 2014. ACM.Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. Benjamin Ransford, Jacob Sorber, and Kevin Fu. Mementos: System support for long-running computation on RFID-scale devices. In Proc. ASPLOS, Newport Beach, CA, USA, 2011. ACM.Google ScholarGoogle Scholar
  41. Alanson P. Sample, Daniel J. Yeager, Pauline S. Powledge, Alexander V. Mamishev, and Joshua R. Smith. Design of an RFID-based battery-free programmable sensing platform. IEEE Trans. Instrum. Meas., 57(11):2608--2615, November 2008.Google ScholarGoogle ScholarCross RefCross Ref
  42. Mahadev Satyanarayanan, Wei Gao, and Brandon Lucia. The computing landscape of the 21st century. In Proc. HotMobile, pages 45--50, Santa Cruz, CA, USA, 2019. ACM.Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. Jacob Sorber, Alexander Kostadinov, Matthew Garber, Matthew Brennan, Mark D. Corner, and Emery D. Berger. Eon: A language and runtime system for perpetual systems. In Proc. SenSys, pages 161--174, Sydney, Australia, 2007.Google ScholarGoogle ScholarDigital LibraryDigital Library
  44. Jethro Tan, Przemysław Pawełczak, Aaron Parks, and Joshua R. Smith. Wisent: Robust downstream communication and storage for computational RFIDs. In Proc. INFOCOM, San Francisco, CA, USA, 2016. IEEE.Google ScholarGoogle ScholarDigital LibraryDigital Library
  45. Texas Instruments. MSP430FR5994 launchpad development kit. http://www.ti.com/tool/MSP-EXP430FR5994. Last accessed: Jan. 20, 2020.Google ScholarGoogle Scholar
  46. Joel Van Der Woude and Matthew Hicks. Intermittent computation without hardware support or programmer intervention. In Proc. OSDI, pages 17--32, Savannah, GA, USA, 2016. ACM.Google ScholarGoogle Scholar
  47. Kasim Sinan Yildirim, Amjad Yousef Majid, Dimitris Patoukas, Koen Schaper, Przemysław Pawełczak, and Josiah Hester. InK: Reactive kernel for tiny batteryless sensors. In Proc. SenSys, pages 41--53, Shenzhen, China, 2018. ACM.Google ScholarGoogle Scholar
  48. Hong Zhang, Jeremy Gummeson, Benjamin Ransford, and Kevin Fu. MOO: A batteryless computational RFID and sensing platform (technical report um-cs-2011-020). https://web.cs.umass.edu/publication/docs/2011/UM-CS-2011-020.pdf, 2011. Last accessed: Jan. 20, 2020.Google ScholarGoogle Scholar
  49. Pei Zhang, Christopher M. Sadler, Stephen A. Lyon, and Margaret Martonosi. Hardware design experiences in ZebraNet. In Proc. SenSys, pages 227--238, Baltimore, MD, USA, 2004. ACM.Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Time-sensitive Intermittent Computing Meets Legacy Software

            Recommendations

            Comments

            Login options

            Check if you have access through your login credentials or your institution to get full access on this article.

            Sign in
            • Published in

              cover image ACM Conferences
              ASPLOS '20: Proceedings of the Twenty-Fifth International Conference on Architectural Support for Programming Languages and Operating Systems
              March 2020
              1412 pages
              ISBN:9781450371025
              DOI:10.1145/3373376

              Copyright © 2020 ACM

              Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

              Publisher

              Association for Computing Machinery

              New York, NY, United States

              Publication History

              • Published: 13 March 2020

              Permissions

              Request permissions about this article.

              Request Permissions

              Check for updates

              Qualifiers

              • research-article

              Acceptance Rates

              Overall Acceptance Rate535of2,713submissions,20%

            PDF Format

            View or Download as a PDF file.

            PDF

            eReader

            View online with eReader.

            eReader