计算机工程与应用 ›› 2017, Vol. 53 ›› Issue (20): 1-7.DOI: 10.3778/j.issn.1002-8331.1609-0270

• 热点与综述 • 上一篇    下一篇

面向崩溃预测的寄存器软错误故障传播分析

薛利兴,左德承,张  展   

  1. 哈尔滨工业大学 计算机科学与技术学院,哈尔滨 150001
  • 出版日期:2017-10-15 发布日期:2017-10-31

Analyzing propagation of soft errors in registers for predicting crashes

XUE Lixing, ZUO Decheng, ZHANG Zhan   

  1. School of Computer Science & Technology, Harbin Institute of Technology, Harbin 150001, China
  • Online:2017-10-15 Published:2017-10-31

摘要: 故障注入是研究软错误故障传播的传统手段,但随着程序复杂性不断增加,采用故障注入对大量软错误的故障传播进行研究将花费巨大的时间成本。提出一种基于程序动态指令进行分析和建模从而快速获取软错误结果的方法。将程序转化为动态指令序列,通过体系结构正确执行分析将所有可能的软错误划分为对程序运行结果有影响和没有影响两部分;基于动态依赖图建立软错误故障传播分析模型,并建立判断程序崩溃的标准,进而提出一个算法对任意制定的能够影响程序运行结果的软错误进行故障传播分析并重点预测程序崩溃的发生。实验显示,预测的漏报率和分析单个软错误的平均用时明显低于现有方法。

关键词: 软错误, 故障传播, 崩溃, 体系结构正确执行, 动态依赖图

Abstract: Fault injection is a traditional approach to study the propagation of soft errors. However, applying this approach to study a large number of soft errors needs too much time. To attack this problem, this paper proposes an approach to analyze the propagation of soft errors and obtain their outcomes based on dynamic instructions. All possible soft errors are classified into the errors which are able to impact program outputs, and the errors which have no impact on program outputs by the architecturally correct execution analysis after dynamic instructions corresponding to the program are traced. An analysis model for the propagation of soft errors is constructed based on the dynamic de-pendency graph, and a crash model is also built. Based on them, an algorithm is put forward to analyze the propagation of given soft errors that have impact on the program outputs, and to predict crashes. The experimental results show that the proposed approach has lower false negative rate and costs less mean time for analyzing a soft error than the existing approach.

Key words: soft error, error propagation, crash, architecturally correct execution, dynamic dependency graph