2012 · 135 citations · 29 references
EngineeringComputer EngineeringComputer ScienceFault-tolerant ComputingFault-tolerant SystemsSoftware EngineeringDefect DetectionError DetectionFault DetectionHardware Fault ToleranceRedundancy TechniquesSoftware Fault ToleranceData Corruption PreventionDetectorsHardware Fault DetectionRedundancy-based DetectionSoftware Fault DetectionTechnology ScalingTransient Fault MitigationTransient Faults
Transient faults increasingly threaten hardware reliability as technology scales, and low‑cost software symptom detection is needed to reduce silent data corruption rates for practical resilience. The study aims to identify program sections responsible for most silent data corruptions to enable cost‑effective reductions. By analyzing six applications, the authors identified code regions responsible for over 90 % of SDCs and used this insight to design program‑level detectors that catch long‑duration errors while amortizing detection costs. The resulting low‑cost detectors cut the baseline SDC rate by 90–100 % with average execution overheads of 12–27 % versus 30–51 % for redundancy alone, demonstrating a more practical performance‑vs‑reliability trade‑off.
With technology scaling, transient faults are becoming an increasing threat to hardware reliability. Commodity systems must be made resilient to these in-field faults through very low-cost resiliency solutions. Software-level symptom detection techniques have emerged as promising low-cost and effective solutions. While the current user-visible Silent Data Corruption (SDC) rates for these techniques is relatively low, eliminating or significantly lowering the SDC rate is crucial for these solutions to become practically successful. Identifying and understanding program sections that cause SDCs is crucial to reducing (or eliminating) SDCs in a cost effective manner. This paper provides a detailed analysis of code sections that produce over 90% of SDCs for six applications we studied. This analysis facilitated the development of program-level detectors that catch errors in quantities that are either accumulated or active for a long duration, amortizing the detection costs. These low-cost detectors significantly reduce the dependency on redundancy-based techniques and provide more practical and flexible choice points on the performance vs. reliability trade-off curve. For example, for an average of 90%, 99%, or 100% reduction of the baseline SDC rate, the average execution overheads of our approach versus redundancy alone are respectively 12% vs. 30%, 19% vs. 43%, and 27% vs. 51%.
29
Steven Cameron Woo, Moriyoshi Ohara, Evan Torrie et al. · 1995 · 3.6K citations · Full text
SPEC CPU2006 benchmark descriptions
John L. Henning · ACM SIGARCH Computer Architecture News · 2006 · 2K citations
The SPLASH-2 programs: characterization and methodological considerations
Sandi Woo, Moriyoshi Ohara, Evan Torrie et al. · 2002 · 1.6K citations
SWIFT: Software Implemented Fault Tolerance
George A. Reis, Jonathan Chang, Neil Vachharajani et al. · 2005 · 710 citations