skip to main content
research-article

Mementos: system support for long-running computation on RFID-scale devices

Published:05 March 2011Publication History
Skip Abstract Section

Abstract

Transiently powered computing devices such as RFID tags, kinetic energy harvesters, and smart cards typically rely on programs that complete a task under tight time constraints before energy starvation leads to complete loss of volatile memory. Mementos is a software system that transforms general-purpose programs into interruptible computations that are protected from frequent power losses by automatic, energy-aware state checkpointing. Mementos comprises a collection of optimization passes for the LLVM compiler infrastructure and a linkable library that exercises hardware support for energy measurement while managing state checkpoints stored in nonvolatile memory. We evaluate Mementos against diverse test cases in a trace-driven simulator of transiently powered RFID-scale devices. Although Mementos's energy checks increase run time when energy is plentiful, they allow Mementos to safely suspend execution when energy dwindles, effectively spreading computation across zero or more power failures. This paper's contributions are: a study of the runtime environment for programs on RFID-scale devices; an energy-aware state checkpointing system for these devices that is implemented for the MSP430 family of microcontrollers; and a trace-driven simulator of transiently powered RFID-scale devices.

References

  1. W. Baek and T. Chilimbi. Green: A system for supporting energy-conscious programming using principled abstractions. Technical Report MSR-TR-2009-89, Microsoft Research, July 2009.Google ScholarGoogle Scholar
  2. P. A. Bernstein, V. Hadzilacos, and N. Goodman. Concurrency Control and Recovery in Database Systems. Addison-Wesley, 1987. ISBN 0-201-10715-5. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. G. Bronevetsky, D. Marques, K. Pingali, P. K. Szwed, and M. Schulz. Application-level checkpointing for shared memory programs. In Proc. 11th Int'l Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS-XI), pages 235--247. ACM, Oct. 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. J. Bruck, A. Vardy, A. Jiang, E. Yaakobi, J. Wolf, R. Mateescu, and P. Siegel. Storage coding for wear leveling in flash memories. In IEEE Int'l Symposium on Information Theory (ISIT '09), pages 1229--1233, June 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. M. Buettner, B. Greenstein, A. Sample, J. R. Smith, and D. Wetherall. Revisiting smart dust with RFID sensor networks. In Proc. 7th ACM Workshop on Hot Topics in Networks (HotNets-VII), Oct. 2008.Google ScholarGoogle Scholar
  6. M. Buettner, R. Prasad, M. PHilipose, and D. Wetherall. Recognizing daily activities with rfid-based sensors. In Proc. 11th Int'l Conference on Ubiquitous Computing (UbiComp '09), pages 51--60. ACM, Sept. 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. M. Buettner, B. Greenstein, and D. Wetherall. Dewdrop: An energy-aware task scheduler for computational RFID. In Proc. 8th USENIX Symposium on Networked Systems Design and Implementation (NSDI '11). USENIX Association, Mar. 2011. To appear. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. E. Candès, J. Romberg, and T. Tao. Robust uncertainty principles: Exact signal reconstruction from highly incomplete frequency information. IEEE Transactions on Information Theory, 52 (2): 489--509, Feb. 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. H.-J. Chae, D. J. Yeager, J. R. Smith, and K. Fu. Maximalist cryptography and computation on the WISP UHF RFID tag. In Proc. Conference on RFID Security, July 2007.Google ScholarGoogle Scholar
  10. Y. Chen, O. Gnawali, M. Kazandjieva, P. Levis, and J. Regehr. Surviving sensor network software faults. In Proc. ACM SIGOPS 22nd Symposium on Operating Systems Principles (SOSP '09), pages 235--246, Oct. 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. S. S. Clark, J. Gummeson, K. Fu, and D. Ganesan. Towards autonomously-powered CRFIDs. In Workshop on Power Aware Computing and Systems (HotPower '09), Oct. 2009.Google ScholarGoogle Scholar
  12. H. Dubois-Ferrière, L. Fabre, R. Meier, and P. Metrailler. TinyNode: a comprehensive platform for wireless sensor network applications. In Proc. 5th Int'l Conference on Information Processing in Sensor Networks (IPSN '06), pages 358--365. ACM, Apr. 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. A. Dunkels, B. Grönvall, and T. Voigt. Contiki--a lightweight and flexible operating system for tiny networked sensors. In Proc. First IEEE Workshop on Embedded Networked Sensors (Emnets-I). IEEE Computer Society, Nov. 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. J. Eriksson, A. Dunkels, N. Finne, F. Österlind, and T. Voigt. MSPsim--an extensible simulator for MSP430-equipped sensor boards. In Proc. 4th European Conference on Wireless Sensor Networks (EWSN '07), Poster/Demo session. Springer, Jan. 2007.Google ScholarGoogle Scholar
  15. R. Gennaro, C. Gentry, and B. Parno. Non-interactive verifiable computing: Outsourcing computation to untrusted workers. In Advances in Cryptology--CRYPTO 2010, volume 6223 of Lecture Notes in Computer Science, pages 465--482. Springer, Aug. 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. M. Gorlatova, P. Kinget, I. Kymissis, D. Rubenstein, X. Wang, and G. Zussman. Challenge: Ultra-low-power Energy-Harvesting Active Networked Tags (EnHANTs). In Proc. 15th Annual Int'l Conference on Mobile Computing and Networking (MobiCom '09), pages 253--260. ACM, Sept. 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. J. Gummeson, S. S. Clark, K. Fu, and D. Ganesan. On the limits of effective micro-energy harvesting on mobile CRFID sensors. In Proc. 8th Annual ACM/USENIX Int'l Conference on Mobile Systems, Applications, and Services (MobiSys '10). ACM, June 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. P. Horowitz and W. Hill. The Art of Electronics. Cambridge University Press, 1989. ISBN 0-521-37095-7. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. S. F. Kaplan. Compressed caching and modern virtual memory simulation. PhD thesis, University of Texas at Austin, Dec. 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. R. Koo and S. Toueg. Checkpointing and rollback-recovery for distributed systems. In Proceedings of 1986 ACM Fall Joint Computer Conference (ACM '86), pages 1150--1158. IEEE Computer Society, 1986. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. C. Lattner and V. Adve. LLVM: A compilation framework for lifelong program analysis & transformation. In Proc. 2004 Int'l Symposium on Code Generation and Optimization (CGO'04). ACM, Mar. 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. P. Levis, S. Madden, J. Polastre, R. Szewczyk, K. Whitehouse, A. Woo, D. Gay, J. Hill, M. Welsh, E. Brewer, and D. Culler. TinyOS: An operating system for sensor networks. In Ambient Intelligence. Springer Verlag, 2004.Google ScholarGoogle Scholar
  23. C. Li and W. Fuchs. CATCH--Compiler-assisted techniques for checkpointing. In Digest of Papers, 20th Int'l Symposium on Fault-Tolerant Computing (FTCS-20), pages 74--81. IEEE, June 1990.Google ScholarGoogle Scholar
  24. C. Li, E. Stewart, and W. Fuchs. Compiler-assisted full checkpointing. Software: Practice & Experience, 24 (10): 871--886, 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. J.-L. Lin, M. H. Dunham, and M. A. Nascimento. A survey of distributed database checkpointing. Distributed and Parallel Databases, 5 (3): 289--319, July 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. M. J. Litzkow, M. Livny, and M. W. Mutka. Condor--a hunter of idle workstations. In Proc. 8th Int'l Conference on Distributed Computing Systems (ICDCS '88), pages 104--111. IEEE Computer Society, June 1988.Google ScholarGoogle ScholarCross RefCross Ref
  27. J. A. McDermid. Checkpointing and error recovery in distributed systems. In Proc. 2nd Int'l Conference on Distributed Computing Systems (ICDCS '81), pages 271--282. IEEE Computer Society, 1981.Google ScholarGoogle Scholar
  28. S. Misailovic, S. Sidiroglou, H. Hoffman, and M. C. Rinard. Quality of service profiling. In Proc. 32nd ACM/IEEE Int'l Conference on Software Engineering (ICSE '10). ACM, May 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. J. Olivo, S. Carrara, and G. D. Micheli. Energy harvesting and remote powering for implantable biosensors. IEEE Sensors Journal, PP (99), October 2010.Google ScholarGoogle Scholar
  30. F. Österlind, A. Dunkels, T. Voigt, N. Tsiftes, J. Eriksson, and N. Finne. Sensornet checkpointing: Enabling repeatability in testbeds and realism in simulators. In Proc. 6th European Conference on Wireless Sensor Networks (EWSN '09). Springer, Feb. 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. J. A. Paradiso and T. Starner. Energy scavenging for mobile and wireless electronics. IEEE Pervasive Computing, 4 (1): 18--27, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. J. S. Plank, M. Beck, and G. Kingsley. Compiler-assisted memory exclusion for fast checkpointing. IEEE Technical Committee on Operating Systems and Application Environments, 7 (4): 10--14, Winter 1995.Google ScholarGoogle Scholar
  33. J. S. Plank, M. Beck, G. Kingsley, and K. Li. Libckpt: Transparent checkpointing under Unix. In Proc. USENIX 1995 Technical Conference on UNIX and Advanced Computing Systems, pages 213--223, Jan. 1995. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. P. Plauger. Embedded C++: An Overview. Embedded Systems Programming, 10: 40--53, 1997.Google ScholarGoogle Scholar
  35. J. Polastre, R. Szewczyk, and D. Culler. Telos: Enabling ultra-low power wireless research. In Proc. 4th Int'l Symposium on Information Processing in Sensor Networks: Special track on Platform Tools and Design Methods for Network Embedded Sensors (IPSN/SPOTS '05). IEEE, Apr. 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. B. Ransford, S. Clark, M. Salajegheh, and K. Fu. Getting things done on computational RFIDs with energy-aware checkpointing and voltage-aware scheduling. In USENIX Workshop on Power Aware Computing and Systems (HotPower '08), Dec. 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. M. Rosenblum and J. K. Ousterhout. The design and implementation of a log-structured file system. ACM Transactions on Computer Systems (TOCS), 10 (1): 26--52, 1992. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. M. Salajegheh, Y. Wang, K. Fu, A. A. Jiang, and E. Learned-Miller. Exploiting half-wits: Smarter storage for low-power devices. In Proc. 9th USENIX Conference on File and Storage Technologies (FAST '11), Feb. 2011. To appear. Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. A. P. Sample, D. J. Yeager, P. S. Powledge, A. V. Mamishev, and J. R. Smith. Design of an RFID-based battery-free programmable sensing platform. IEEE Transactions on Instrumentation and Measurement, 57 (11): 2608--2615, Nov. 2008.Google ScholarGoogle ScholarCross RefCross Ref
  40. J. Sorber, A. Kostadinov, M. Garber, M. Brennan, M. D. Corner, and E. D. Berger. Eon: A language and runtime system for perpetual systems. In Proceedings of The Fifth Int'l ACM Conference on Embedded Networked Sensor Systems (SenSys '07), pages 161--174, Nov. 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. V. Strumpen. Portable and fault-tolerant software systems. IEEE Micro, 18 (5): 22--32, 1998. Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. S. Sundararaman, S. Subramanian, A. Rajimwale, A. C. Arpaci-Dusseau, R. H. Arpaci-Dusseau, and M. M. Swift. Membrane: Operating system support for restartable file systems. In Proc. 8th USENIX Conference on File and Storage Technologies (FAST '10), Feb. 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. Texas Instruments Incorporated. MSP430 Ultra-Low Power Microcontrollers. http://www.ti.com/msp430.Google ScholarGoogle Scholar
  44. S. Thomas, J. Teizer, and M. Reynolds. Electromagnetic energy harvesting for sensing, communication, and actuation. In Proc. 27th Int'l Symposium on Automation and Robotics in Construction (ISARC '10). IAARC, June 2010.Google ScholarGoogle ScholarCross RefCross Ref
  45. Y. Yang, L. Wang, D. K. Noh, H. K. Le, and T. F. Abdelzaher. SolarStore: Enhancing data reliability in solar-powered storage-centric sensor networks. In Proc. 7th Annual Int'l Conference on Mobile Systems, Applications, and Services (MobiSys '09), pages 333--346. ACM, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  46. D. Yeager, F. Zhang, A. Zarrasvand, N. George, T. Daniel, and B. Otis. A 9 μa, addressable Gen2 sensor tag for biosignal acquisition. IEEE Journal of Solid-State Circuits, 45 (10): 2198--2209, Oct. 2010.Google ScholarGoogle ScholarCross RefCross Ref
  47. E. Yeatman. Advances in power sources for wireless sensor nodes. In Proc. Int'l Workshop on Wearable and Implantable Body Sensor Networks (BSN '04), pages 20--21. IEEE Computer Society, Apr. 2004.Google ScholarGoogle Scholar

Index Terms

  1. Mementos: system support for long-running computation on RFID-scale devices

      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

      Full Access

      • Published in

        cover image ACM SIGPLAN Notices
        ACM SIGPLAN Notices  Volume 46, Issue 3
        ASPLOS '11
        March 2011
        407 pages
        ISSN:0362-1340
        EISSN:1558-1160
        DOI:10.1145/1961296
        Issue’s Table of Contents
        • cover image ACM Conferences
          ASPLOS XVI: Proceedings of the sixteenth international conference on Architectural support for programming languages and operating systems
          March 2011
          432 pages
          ISBN:9781450302661
          DOI:10.1145/1950365

        Copyright © 2011 ACM

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 5 March 2011

        Check for updates

        Qualifiers

        • research-article

      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!