研究生: |
李敏齊 Li, Min-Chi |
---|---|
論文名稱: |
應用於定時器檢查點的間歇式系統資料壓縮方法 Data Compression for Timer-Based Checkpointing in Intermittent Systems |
指導教授: |
林均翰
Lin, Chun-Han |
口試委員: |
林均翰
Lin, Chun-Han 賀耀華 Ho, Yao-Hua 簡仁德 Jian, Ren-De |
口試日期: | 2024/12/27 |
學位類別: |
碩士 Master |
系所名稱: |
資訊工程學系 Department of Computer Science and Information Engineering |
論文出版年: | 2025 |
畢業學年度: | 113 |
語文別: | 中文 |
論文頁數: | 30 |
中文關鍵詞: | 間歇式系統 、資料壓縮 、能量擷取 |
英文關鍵詞: | Intermittent systems, Data compression, Energy harvesting |
研究方法: | 實驗設計法 |
DOI URL: | http://doi.org/10.6345/NTNU202500260 |
論文種類: | 學術論文 |
相關次數: | 點閱:54 下載:0 |
分享至: |
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報 |
在間歇式系統中,環境能源的不穩定性導致無法預期且頻繁的斷電,通常透過檢查點來儲存系統狀態以避免資料遺失。然而,檢查點相當消耗能量和時間,何時進行檢查點變得相當重要,為此產生了許多相關研究,根據決定是否進行檢查點的方式主要能分成基於監測系統電壓的方式和基於定時器的方式。基於監測系統電壓的方式可能受電容故障影響,無法順利完成檢查點,基於定時器的方式雖然能夠解決電容故障的問題,但根據我們的觀察,這種方式會發生檢查點完成後執行的工作,因無法再次進行檢查點,導致該執行時間被浪費。為了將浪費的時間加以利用,我們測試了現有常用於評估間歇式系統的應用程式,將進行檢查點時要寫入至非揮發性記憶體中的資料進行壓縮,測量讀取並解壓的時間和原資料大小的讀取時間,測量結果顯示即便讀取完後需要進行解壓縮,花費時間也比讀取原資料大小少。我們透過此觀察設計了一套利用資料壓縮的檢查點方法,該方法將原本浪費的時間用來壓縮檢查點寫入至非揮發記憶體的資料,以此降低系統在恢復時讀取該資料的時間,藉此提升系統可執行的工作時間和儲存的工作進度。最後我們在實驗中模擬了穩定和不穩定能量擷取狀況的供電時間,評估應用程式完成次數和進行的檢查點次數,在穩定供電時間中,增加了13-25%的應用程式完成次數,降低了13%的檢查點次數,在不穩定的供電時間中,增加了12-20%的應用程式完成次數,降低了57%的檢查點次數。
In intermittent systems, the instability of environmental energy leads to unpredictable and frequent power failures. To prevent data loss, checkpoints are commonly used to store system states. However, creating checkpoints can require significant energy and time, making it crucial to determine the right moment to perform them. Existing research has proposed methods for determining when to perform checkpoints, which can be categorized into voltage-based and timer-based approaches. Voltage-based approaches may fail to complete checkpoints due to capacitor malfunctions, while timer-based approaches mitigate this issue but, as we observed, often waste execution time after a completed checkpoint because the remaining time is insufficient for another checkpoint. To make use of this wasted time, we tested common benchmark applications used in evaluating intermittent systems. By compressing the data written to non-volatile memory during checkpoints, we measured the time required to read and decompress the data and compared it to the time required to read the original uncompressed data. Results showed that, even with decompression, the total time was shorter than reading the uncompressed data alone. Based on this observation, we designed a checkpointing method that uses data compression to utilize the otherwise wasted time. By compressing the data written to non-volatile memory, the method reduces the read latency during system recovery, thereby increasing the system's effective execution time and preserving more progress. In our experiments, we simulated stable and unstable energy environments to evaluate application completion counts and the number of checkpoints. Under stable energy conditions, our method increased application completion counts by 13-25% and reduced the number of checkpoints by 13%. Under unstable energy conditions, application completion counts increased by 12-20% and reduced the number of checkpoints by 57%.
[1] Hashan Roshantha Mendis and Pi-Cheng Hsiu, "Accumulative Display Updating for Intermittent Systems," ACM Transactions on Embedded Computing Systems (TECS), vol. 18, no. 5s, pp. 1-22, October 2019
[2] Harsh Desai, Matteo Nardello, Davide Brunelli, and Brandon Lucia, "Camaroptera: A Long-range Image Sensor with Local Inference for Remote Sensing Applications," ACM Transactions on Embedded Computing Systems (TECS), vol. 21, no. 3, pp. 1-25, May 2022
[3] Jasper de Winkel, Vito Kortbeek, Josiah Hester, and Przemysław Pawełczak, " Battery-Free Game Boy," in Proceedings of the ACM on Interactive, Mobile, Wearable and Ubiquitous Technologies (IMWUT), vol. 4, no. 3, pp. 1-34, September 2020
[4] D. Balsamo, A. S. Weddell, G. V. Merrett, B. M. Al-Hashimi, D. Brunelli and L. Benini, "Hibernus: Sustaining Computation During Intermittent Supply for Energy-Harvesting Systems," in IEEE Embedded Systems Letters, vol. 7, no. 1, pp. 15-18, March 2015
[5] D. Balsamo et al., "Hibernus++: A Self-Calibrating and Adaptive System for Transiently-Powered Embedded Devices," in IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, vol. 35, no. 12, pp. 1968-1980, 2016
[6] B. Ransford, J. Sorber, and K. Fu, “Mementos: System support for long-running computation on RFID-scale devices,” SIGARCH Comput. Archit. News, vol. 39, no. 1, pp. 159–170, March 2011
[7] N. A. Bhatti and L. Mottola, "HarvOS: Efficient Code Instrumentation for Transiently-Powered Embedded Sensing," 2017 16th ACM/IEEE International Conference on Information Processing in Sensor Networks (IPSN), Pittsburgh, PA, USA, 2017, pp. 209-220.
[8] H. Jayakumar, A. Raha and V. Raghunathan, "QUICKRECALL: A Low Overhead HW/SW Approach for Enabling Computations across Power Cycles in Transiently Powered Computers," 2014 27th International Conference on VLSI Design and 2014 13th International Conference on Embedded Systems, Mumbai, India, 2014, pp. 330-335
[9] A. Mirhoseini, E. M. Songhori and F. Koushanfar, "Idetic: A high-level synthesis approach for enabling long computations on transiently-powered ASICs," 2013 IEEE International Conference on Pervasive Computing and Communications (PerCom), San Diego, CA, USA, 2013, pp. 216-224
[10] Saad Ahmed, Naveed Anwar Bhatti, Muhammad Hamad Alizai, Junaid Haroon Siddiqui, and Luca Mottola, "Efficient intermittent computing with differential checkpointing," In Proceedings of the 20th ACM SIGPLAN/SIGBED International Conference on Languages, Compilers, and Tools for Embedded Systems (LCTES 2019), Phoenix, AZ, USA, 2019, pp. 70-81
[11] T. Daulby, A. Savanth, G. V. Merrett and A. S. Weddell, "Improving the Forward Progress of Transient Systems," in IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, vol. 40, no. 3, pp. 444-452, March 2021.
[12] J. Choi, H. Joe, Y. Kim and C. Jung, "Achieving Stagnation-Free Intermittent Computation with Boundary-Free Adaptive Execution," 2019 IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS), Montreal, QC, Canada, 2019, pp. 331-344.
[13] Yen-Ting Chen, Han-Xiang Liu, Yuan-Hao Chang, Yu-Pei Liang, and Wei-Kuan Shih, "SACS: A Self-Adaptive Checkpointing Strategy for Microkernel-Based Intermittent Systems," in Proceedings of the ACM/IEEE International Symposium on Low Power Electronics and Design (ISLPED '22), 2022, pp. 1-6
[14] Cheng Ji, Li-Pin Chang, Liang Shi, Congming Gao, Chao Wu, Yuangang Wang, and Chun Jason Xue, "Lightweight Data Compression for Mobile Flash Storage," ACM Transactions on Embedded Computing Systems (TECS), vol. 16, no. 5s, pp. 1-18, September 2017
[15] M. R. Guthaus, J. S. Ringenberg, D. Ernst, T. M. Austin, T. Mudge and R. B. Brown, "MiBench: A free, commercially representative embedded benchmark suite," Proceedings of the Fourth Annual IEEE International Workshop on Workload Characterization. WWC-4 (Cat. No.01EX538), Austin, TX, USA, 2001, pp. 3-14