10.1145/3316781.3317812acmconferencesArticle/Chapter ViewAbstractPublication PagesdacConference Proceedings
research-article

Efficient State Retention through Paged Memory Management for Reactive Transient Computing

ABSTRACT

Reactive transient computing systems preserve computational progress despite frequent power failures by suspending (saving state to nonvolatile memory) when detecting a power failure, and restoring once power returns. Existing methods inefficiently save and restore all allocated memory. We propose lightweight memory management that applies the concept of paging to load pages only when needed, and save only modified pages. We then develop a model that maximises available execution time by dynamically adjusting the suspend and restore voltage thresholds. Experiments on an MSP430FR5994 microcontroller show that our method reduces state retention overheads by up to 86.9% and executes algorithms up to 5.3× faster than the state-of-the-art.

References

  1. Domenico Balsamo, Alex S Weddell, Anup Das, Geoff V Merrett, Bashir M Al-hashimi, Davide Brunelli, and Luca Benini. 2016. Hibernus++: A Self-Calibrating and Adaptive System for Intermittently-Powered Embedded Devices. IEEE Trans. Comput.-Aided Des. Integr. Circuits Syst. -- TCAD 35, 12 (2016), 1968--1980. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Domenico Balsamo, Alex S. Weddell, Geoff V. Merrett, Bashir M. Al-Hashimi, Davide Brunelli, and Luca Benini. 2015. Hibernus: Sustaining Computation During Intermittent Supply for Energy-Harvesting Systems. IEEE Embedded Syst. Lett. 7, 1 (2015), 15--18.Google ScholarGoogle ScholarCross RefCross Ref
  3. Naveed Anwar Bhatti and Luca Mottola. 2016. Efficient State Retention for Transiently-powered Embedded Sensing. In Proc. ACM Int. Conf. Embedded Wireless Systems Networks -- EWSN. 137--148. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Naveed Anwar Bhatti and Luca Mottola. 2017. HarvOS: Efficient Code Instrumentation for Transiently-powered Embedded Sensing. In Proc. ACM/IEEE Int. Conf. Inf. Process. Sensor Netw. -- IPSN. Pittsburgh, PA, USA, 209--219. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Alexei Colin and Brandon Lucia. 2016. Chain: tasks and channels for reliable intermittent programs. In Proc. ACM SIGPLAN Int. Conf. Object-Oriented Prog., Syst., Languages, Appl. -- OOPSLA, Vol. 51. Amsterdam, Netherlands, 514--530. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Alexei Colin and Brandon Lucia. 2018. Termination checking and task decomposition for task-based intermittent programs. In Proc. IEEE/ACM Int. Conf. Compiler Construction -- CC. 116--127. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Hrishikesh Jayakumar, Arnab Raha, and Vijay Raghunathan. 2014. QUICKRE-CALL: A Low Overhead HW/SW Approach for Enabling Computations across Power Cycles in Transiently Powered Computers. In 2014 27th International Conference on VLSI Design and 2014 13th International Conference on Embedded Systems. 330--335. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Hrishikesh Jayakumar, Arnab Raha, and Vijay Raghunathan. 2016. Energy-Aware Memory Mapping for Hybrid FRAM-SRAM MCUs in IoT Edge Devices. In IEEE Int. Conf. VLSI Design. 264--269. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Brandon Lucia and Benjamin Ransford. 2015. A simpler, safer programming and execution model for intermittent systems. In Proc. ACM SIGPLAN Conf. Programming Language Design Implementation -- PLDI. 575--585. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Kiwan Maeng, Alexei Colin, and Brandon Lucia. 2017. Alpaca: intermittent execution without checkpoints. Proc. ACM Programming Languages 1 (2017). Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. David A. Patterson and John L. Hennesey. 2016. Computer Organization And Design (1 ed.). Morgan Kaufmann. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Benjamin Ransford, Jacob Sorber, and Kevin Fu. 2011. Mementos: System support for long-running computation on RFID-scale devices. In Proc. ACM Int. Conf. Architectural Support Programming Languages Operating Systems -- ASPLOS. Newport Beach, CA, USA, 159--170. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Sivert T. Sliper, Domenico Balsamo, Alex S. Weddell, and Geoff V. Merrett. 2018. Enabling Intermittent Computing on High-performance Out-of-order Processors. In Proceedings of the 6th International Workshop on Energy Harvesting & Energy-Neutral Sensing Systems (ENSsys '18). ACM, New York, NY, USA, 19--25. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Texas Instruments. 2017. MSP430FR599x, MSP430FR596x Mixed-Signal Microcontrollers Datasheet. (2017).Google ScholarGoogle Scholar
  15. Theodoros D. Verykios, Domenico Balsamo, and Geoff V. Merrett. 2018. Selective policies for efficient state retention in transiently-powered embedded systems: Exploiting properties of NVM technologies. Sustainable Computing: Informatics and Systems (2018).Google ScholarGoogle Scholar

Comments

Login options

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

Sign in

PDF Format

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader
About Cookies On This Site

We use cookies to ensure that we give you the best experience on our website.

Learn more

Got it!