{"title":"CATCH-compiler-assisted techniques for checkpointing","authors":"C. Li, W. Fuchs","doi":"10.1109/FTCS.1990.89337","DOIUrl":null,"url":null,"abstract":"A compiler-based approach to generating efficient checkpoints for process recovery is described. The presented approach to checkpointing is programmer, operating system, and hardware transparent. Compile-time information is exploited to maintain the desired checkpoint interval and to reduce the size of checkpoints. Compiler-generated sparse potential checkpoint code is used to maintain the desired checkpoint interval. Adaptive checkpointing has been developed to reduce the size of checkpoints by exploiting potentially large variations in memory usage. A training technique is used in selecting the low-cost, high-coverage potential checkpoints. Since the potential checkpoint selection problem is NP-complete, a heuristic algorithm has been developed to obtain a quick suboptimal solution. These compiler-assisted checkpointing techniques have been implemented in a modified version of the GNU C (GCC) compiler version of 1.34. Experiments utilizing the CATCH GCC compiler on SUN workstations are described.<<ETX>>","PeriodicalId":174189,"journal":{"name":"[1990] Digest of Papers. Fault-Tolerant Computing: 20th International Symposium","volume":"297 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"120","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"[1990] Digest of Papers. Fault-Tolerant Computing: 20th International Symposium","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/FTCS.1990.89337","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 120
Abstract
A compiler-based approach to generating efficient checkpoints for process recovery is described. The presented approach to checkpointing is programmer, operating system, and hardware transparent. Compile-time information is exploited to maintain the desired checkpoint interval and to reduce the size of checkpoints. Compiler-generated sparse potential checkpoint code is used to maintain the desired checkpoint interval. Adaptive checkpointing has been developed to reduce the size of checkpoints by exploiting potentially large variations in memory usage. A training technique is used in selecting the low-cost, high-coverage potential checkpoints. Since the potential checkpoint selection problem is NP-complete, a heuristic algorithm has been developed to obtain a quick suboptimal solution. These compiler-assisted checkpointing techniques have been implemented in a modified version of the GNU C (GCC) compiler version of 1.34. Experiments utilizing the CATCH GCC compiler on SUN workstations are described.<>
描述了一种基于编译器的方法,用于为进程恢复生成有效的检查点。所提出的检查点方法是程序员、操作系统和硬件透明的。利用编译时信息来维持所需的检查点间隔并减小检查点的大小。编译器生成的稀疏潜在检查点代码用于维护所需的检查点间隔。开发自适应检查点是为了通过利用内存使用的潜在大变化来减小检查点的大小。在选择低成本、高覆盖率的潜在检查点时使用了一种训练技术。由于潜在检查点选择问题是np完全的,因此开发了一种启发式算法来快速获得次优解。这些编译器辅助的检查点技术已经在GNU C (GCC)编译器1.34的修改版本中实现。描述了在SUN工作站上使用CATCH GCC编译器的实验。