{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,2,6]],"date-time":"2026-02-06T03:03:38Z","timestamp":1770347018006,"version":"3.49.0"},"reference-count":62,"publisher":"Association for Computing Machinery (ACM)","issue":"6","license":[{"start":{"date-parts":[[2020,9,29]],"date-time":"2020-09-29T00:00:00Z","timestamp":1601337600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"name":"Swedish Foundation for Strategic Research"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Embed. Comput. Syst."],"published-print":{"date-parts":[[2020,11,30]]},"abstract":"<jats:p>Intermittently powered embedded devices ensure forward progress of programs through state checkpointing in non-volatile memory. Checkpointing is, however, expensive in energy and adds to the execution times. To minimize this overhead, we present DICE, a system that renders differential checkpointing profitable on these devices. DICE is unique because it is a software-only technique and efficient because it only operates in volatile main memory to evaluate the differential. DICE may be integrated with reactive (Hibernus) or proactive (MementOS, HarvOS) checkpointing systems, and arbitrary code can be enabled with DICE using automatic code-instrumentation requiring no additional programmer effort. By reducing the cost of checkpoints, DICE cuts the peak energy demand of these devices, allowing operation with energy buffers that are one-eighth of the size originally required, thus leading to benefits such as smaller device footprints and faster recharging to operational voltage level. The impact on final performance is striking: with DICE, Hibernus requires one order of magnitude fewer checkpoints and one order of magnitude shorter time to complete a workload in real-world settings.<\/jats:p>","DOI":"10.1145\/3391903","type":"journal-article","created":{"date-parts":[[2020,7,7]],"date-time":"2020-07-07T12:39:02Z","timestamp":1594125542000},"page":"1-27","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":16,"title":["Fast and Energy-Efficient State Checkpointing for Intermittent Computing"],"prefix":"10.1145","volume":"19","author":[{"given":"Saad","family":"Ahmed","sequence":"first","affiliation":[{"name":"Lahore University of Management Sciences (LUMS), Lahore, Punjab, Pakistan"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Naveed Anwar","family":"Bhatti","sequence":"additional","affiliation":[{"name":"Air University, Islamabad, Pakistan"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Muhammad Hamad","family":"Alizai","sequence":"additional","affiliation":[{"name":"Lahore University of Management Sciences (LUMS), Lahore, Punjab, Pakistan"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Junaid Haroon","family":"Siddiqui","sequence":"additional","affiliation":[{"name":"Lahore University of Management Sciences (LUMS), Lahore, Punjab, Pakistan"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Luca","family":"Mottola","sequence":"additional","affiliation":[{"name":"Politecnico di Milano, Italy and RISE, Sweden"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2020,9,29]]},"reference":[{"key":"e_1_2_1_1_1","volume-title":"Proceedings of the 18th Annual International Conference on Supercomputing. ACM, 277--286","author":"Agarwal Saurabh"},{"key":"e_1_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.1145\/3316482.3326357"},{"key":"e_1_2_1_3_1","volume-title":"Proceedings of the 9th International Symposium on Reconfigurable and Communication-Centric Systems-on-Chip. IEEE, 1--4.","author":"Aouda Faycal Ait","year":"2014"},{"key":"e_1_2_1_4_1","unstructured":"ARDUINO. 2018. NANO. https:\/\/store.arduino.cc\/usa\/arduino-nano (accessed 2018-02-28).  ARDUINO. 2018. NANO. https:\/\/store.arduino.cc\/usa\/arduino-nano (accessed 2018-02-28)."},{"key":"e_1_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.1109\/ISWPC.2007.342668"},{"key":"e_1_2_1_6_1","volume-title":"Davide Brunelli, Bashir M. Al-Hashimi, Geoff V. Merrett, and Luca Benini.","author":"Balsamo Domenico","year":"2016"},{"key":"e_1_2_1_7_1","volume-title":"Hibernus: Sustaining computation during intermittent supply for energy-harvesting systems","author":"Balsamo Domenico","year":"2015"},{"key":"e_1_2_1_8_1","volume-title":"Proceedings of the International Conference on Embedded Wireless Systems and Networks. 137--148","author":"Bhatti Naveed","year":"2016"},{"key":"e_1_2_1_9_1","volume-title":"Affan A. Syed, and Luca Mottola.","author":"Bhatti Naveed Anwar","year":"2016"},{"key":"e_1_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1145\/3055031.3055082"},{"key":"e_1_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-540-78800-3_27"},{"key":"e_1_2_1_13_1","volume-title":"Proceedings of the 8th USENIX Conference on Networked Systems Design and Implementation. USENIX Association, 197--210","author":"Buettner Michael","year":"2011"},{"key":"e_1_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.jss.2013.09.001"},{"key":"e_1_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/2983990.2983995"},{"key":"e_1_2_1_16_1","volume-title":"Yan Shi, Yonggang Huang, and John A. Rogers.","author":"Dagdeviren Canan","year":"2016"},{"key":"e_1_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-24449-0_31"},{"key":"e_1_2_1_18_1","volume-title":"Proceedings of the 14th Annual IEEE International Conference and Workshops on the Engineering of Computer-Based Systems. IEEE Computer Society, 133--144","author":"Muztaba Fuad M."},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1109\/HPCA.2003.1183547"},{"key":"e_1_2_1_20_1","unstructured":"Abstract Research Group. 2018. Benchmark Applications. www.github.com\/CMUAbstract\/releases#benchmark-applications ((accessed 2018-02-28)).  Abstract Research Group. 2018. Benchmark Applications. www.github.com\/CMUAbstract\/releases#benchmark-applications ((accessed 2018-02-28))."},{"key":"e_1_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1002\/cpe.4707"},{"key":"e_1_2_1_22_1","volume-title":"Brown","author":"Guthaus Matthew R.","year":"2001"},{"key":"e_1_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1145\/2809695.2809707"},{"key":"e_1_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1145\/3131672.3131674"},{"key":"e_1_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1145\/3079856.3080238"},{"key":"e_1_2_1_26_1","unstructured":"Texas Instruments. 2013. MSP430 Solar Energy Harvesting Development Tool. http:\/\/www.ti.com\/tool\/EZ430-RF2500-SEH (accessed 2018-08-03).  Texas Instruments. 2013. MSP430 Solar Energy Harvesting Development Tool. http:\/\/www.ti.com\/tool\/EZ430-RF2500-SEH (accessed 2018-08-03)."},{"key":"e_1_2_1_27_1","volume-title":"RPL: The routing standard for the Internet of Things... Or is it? IEEE Communications Magazine","author":"Iova Oana","year":"2016"},{"key":"e_1_2_1_28_1","volume-title":"Woo Suk Lee, and Vijay Raghunathan","author":"Jayakumar Hrishikesh","year":"2015"},{"key":"e_1_2_1_29_1","volume-title":"Checkpointing and rollback-recovery for distributed systems","author":"Koo Richard","year":"1987"},{"key":"e_1_2_1_30_1","volume-title":"Better Embedded System Software","author":"Koopman Phil"},{"key":"e_1_2_1_31_1","unstructured":"PERSIST Lab. 2018. RF Trace. https:\/\/github.com\/PERSISTLab\/BatterylessSim\/tree\/master\/traces (accessed 2018-02-28).  PERSIST Lab. 2018. RF Trace. https:\/\/github.com\/PERSISTLab\/BatterylessSim\/tree\/master\/traces (accessed 2018-02-28)."},{"key":"e_1_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.1109\/MSST.2012.6232378"},{"key":"e_1_2_1_33_1","volume-title":"Proceedings of the 17th International Conference on Data Engineering. IEEE, 173--182","author":"Lee Juchang","year":"2001"},{"key":"e_1_2_1_34_1","doi-asserted-by":"publisher","DOI":"10.1109\/TCAD.2018.2803624"},{"key":"e_1_2_1_35_1","unstructured":"Libelium. 2017. Waspmote. http:\/\/www.libelium.com\/products\/waspmote\/ (accessed 2017-10-02).  Libelium. 2017. Waspmote. http:\/\/www.libelium.com\/products\/waspmote\/ (accessed 2017-10-02)."},{"key":"e_1_2_1_36_1","volume-title":"Procedings of the 2nd Summit on Advances in Programming Languages. Leibniz International Proceedings in Informatics.","author":"Lucia Brandon","year":"2017"},{"key":"e_1_2_1_37_1","doi-asserted-by":"publisher","DOI":"10.1145\/2737924.2737978"},{"key":"e_1_2_1_38_1","volume-title":"Alberto Rodriguez Arreola, and Alexander Weddell","author":"Lukosevicius Giedrius","year":"2017"},{"key":"e_1_2_1_39_1","doi-asserted-by":"publisher","DOI":"10.1145\/3133920"},{"key":"e_1_2_1_40_1","volume-title":"Proceedings of the 2013 IEEE Conference on Computer Communications Workshops (INFOCOM WKSHPS). 31--32","author":"Margolies R."},{"key":"e_1_2_1_41_1","unstructured":"mbed. 2017. IoT OS. goo.gl\/u918jX.  mbed. 2017. IoT OS. goo.gl\/u918jX."},{"key":"e_1_2_1_42_1","volume-title":"Proceedings of IPSN. Citeseer, 1--8.","author":"Mihic Kresimir","year":"2007"},{"key":"e_1_2_1_43_1","doi-asserted-by":"publisher","DOI":"10.1145\/1080695.1069994"},{"key":"e_1_2_1_44_1","volume-title":"Weaver","author":"Netzer Robert H. B.","year":"1994"},{"key":"e_1_2_1_45_1","volume-title":"Proceedings of the IEEE International Conference on Pervasive Computing and Communications Workshops (PERCOM Workshops). IEEE, 202--207","author":"Nguyen Hoang Anh","year":"2011"},{"key":"e_1_2_1_46_1","volume-title":"Data Sheet: X-NUCLEO-NFC02A1. www.st.com (accessed 2017-10-02).","author":"Expansion","year":"2017"},{"key":"e_1_2_1_47_1","unstructured":"Terence Parr. 2013. The Definitive ANTLR 4 Reference. goo.gl\/RR1s.  Terence Parr. 2013. The Definitive ANTLR 4 Reference. goo.gl\/RR1s."},{"key":"e_1_2_1_48_1","volume-title":"USENIX 1995 Technical Conference Proceedings. USENIX Association.","author":"Plank James S.","year":"1995"},{"key":"e_1_2_1_49_1","doi-asserted-by":"publisher","DOI":"10.1109\/PDCAT.2008.69"},{"key":"e_1_2_1_50_1","doi-asserted-by":"publisher","DOI":"10.1145\/356725.356729"},{"key":"e_1_2_1_51_1","doi-asserted-by":"publisher","DOI":"10.1145\/1950365.1950386"},{"key":"e_1_2_1_53_1","doi-asserted-by":"publisher","DOI":"10.1109\/TIM.2008.925019"},{"key":"e_1_2_1_54_1","doi-asserted-by":"publisher","DOI":"10.1145\/2380403.2380419"},{"key":"e_1_2_1_55_1","doi-asserted-by":"publisher","DOI":"10.5555\/2813767.2813777"},{"key":"e_1_2_1_56_1","unstructured":"IXYS SolarMD. 2018. SLMD481H08L. http:\/\/ixapps.ixys.com\/ (accessed 2018-02-28).  IXYS SolarMD. 2018. SLMD481H08L. http:\/\/ixapps.ixys.com\/ (accessed 2018-02-28)."},{"key":"e_1_2_1_57_1","doi-asserted-by":"publisher","DOI":"10.23919\/DATE.2017.7927131"},{"key":"e_1_2_1_58_1","doi-asserted-by":"publisher","DOI":"10.1145\/2892208.2892235"},{"key":"e_1_2_1_59_1","doi-asserted-by":"publisher","DOI":"10.5555\/370049.370383"},{"key":"e_1_2_1_60_1","volume-title":"Proceedings of OSDI. USENIX Association, 17--32","author":"Der Woude Joel Van","year":"2016"},{"key":"e_1_2_1_61_1","doi-asserted-by":"publisher","DOI":"10.1145\/1023833.1023857"},{"key":"e_1_2_1_62_1","doi-asserted-by":"publisher","DOI":"10.1145\/2744769.2744842"},{"key":"e_1_2_1_63_1","volume-title":"Burrow","author":"Yang Guang","year":"2014"},{"key":"e_1_2_1_64_1","doi-asserted-by":"publisher","DOI":"10.1145\/1322263.1322282"}],"container-title":["ACM Transactions on Embedded Computing Systems"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3391903","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3391903","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,17]],"date-time":"2025-06-17T22:38:48Z","timestamp":1750199928000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3391903"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2020,9,29]]},"references-count":62,"journal-issue":{"issue":"6","published-print":{"date-parts":[[2020,11,30]]}},"alternative-id":["10.1145\/3391903"],"URL":"https:\/\/doi.org\/10.1145\/3391903","relation":{},"ISSN":["1539-9087","1558-3465"],"issn-type":[{"value":"1539-9087","type":"print"},{"value":"1558-3465","type":"electronic"}],"subject":[],"published":{"date-parts":[[2020,9,29]]},"assertion":[{"value":"2019-11-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2020-03-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2020-09-29","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}