Skip to main content
QUICK REVIEW

[论文解读] Resilience in Numerical Methods: A Position on Fault Models and Methodologies

James John Elliott, Mark Frederick Hoemmen|arXiv (Cornell University)|Jan 13, 2014
Radiation Effects in Electronics参考文献 20被引用 11
一句话总结

该论文提出了一种数值不可靠性故障模型,其中隐性数据损坏表现为对浮点数的无界扰动,倡导通过廉价的合理性检查实施‘怀疑式编程’,以限制或排除错误。该方法结合选择性可靠性,能够在最坏情况硬件故障下,仅在需要的地方确保正确性,从而实现数值算法的弹性。

ABSTRACT

Future extreme-scale computer systems may expose silent data corruption (SDC) to applications, in order to save energy or increase performance. However, resilience research struggles to come up with useful abstract programming models for reasoning about SDC. Existing work randomly flips bits in running applications, but this only shows average-case behavior for a low-level, artificial hardware model. Algorithm developers need to understand worst-case behavior with the higher-level data types they actually use, in order to make their algorithms more resilient. Also, we know so little about how SDC may manifest in future hardware, that it seems premature to draw conclusions about the average case. We argue instead that numerical algorithms can benefit from a numerical unreliability fault model, where faults manifest as unbounded perturbations to floating-point data. Algorithms can use inexpensive "sanity" checks that bound or exclude error in the results of computations. Given a selective reliability programming model that requires reliability only when and where needed, such checks can make algorithms reliable despite unbounded faults. Sanity checks, and in general a healthy skepticism about the correctness of subroutines, are wise even if hardware is perfectly reliable.

研究动机与目标

  • 解决未来极端规模系统中隐性数据损坏(SDC)缺乏有用高层故障模型的问题。
  • 挑战韧性研究中占主导地位的位翻转故障模型,认为其反映的是低层次硬件行为,而非与应用相关的数值关注点。
  • 推动从基于随机统计的平均情况分析转向基于数值分析的故障建模,实现最坏情况下的韧性。
  • 使算法开发者能够利用关键计算的廉价事前边界,构建具有弹性的数值方法。
  • 引入选择性可靠性模型,隔离需要正确性的关键计算,同时允许其他计算容忍无界错误。

提出的方法

  • 提出一种数值不可靠性故障模型,其中故障表现为对浮点数据类型的无界扰动,而非位翻转。
  • 引入‘怀疑式编程’——对关键值(例如内积、投影)使用廉价且事前计算的边界,以检测或限制错误。
  • 利用现有的数值分析结果(例如正交投影、内积的边界)作为过滤器,验证计算完整性。
  • 与选择性可靠性模型集成,该模型仅将特定操作(例如外层 FGMRES 迭代)识别为需要可靠性。
  • 将该框架应用于迭代求解器如 FT-GMRES,其中外层迭代保持可靠,而内层不可靠求解器引入有界误差。
  • 确保边界事前计算,以避免依赖可能不可靠的计算,从而保持验证机制的完整性。

实验结果

研究问题

  • RQ1如何在不依赖低层次位翻转故障模型的前提下,使数值算法对隐性数据损坏具有弹性?
  • RQ2对于面临无界、不可观测硬件故障的数值算法开发者而言,哪种高层故障模型最为实用?
  • RQ3基于数值分析边界的廉价合理性检查能否有效检测或限制隐性数据损坏引起的误差?
  • RQ4如何将选择性可靠性与数值边界结合,以确保在不可靠子程序存在的情况下,迭代求解器仍能保持正确性?
  • RQ5将 SDC 建模为对浮点数的无界扰动而非随机位翻转,其实际影响是什么?

主要发现

  • 位翻转模型对于算法级韧性不足,因其反映的是低层次硬件行为,而非与应用相关的数值关注点。
  • 对位翻转进行随机采样可揭示平均情况行为,但无法应对对数值正确性至关重要的最坏情况。
  • 通过关键值(例如内积、投影)的事前边界实施怀疑式编程,可在无需完整容错的情况下检测或排除错误结果。
  • FT-GMRES 求解器表明,只要使用边界限制误差传播,即使内层求解器引入无界误差,外层迭代仍可保持正确。
  • 选择性可靠性允许可靠的外层求解器封装可能不可靠的预条件子,从而在减少开销的同时保持正确性。
  • 合理性检查即使在无故障系统中也具有益处,因其可防范输入违规、舍入误差和软件错误,是一种稳健的防御性编程实践。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。