Publication | Closed Access
Modeling Soft-Error Propagation in Programs
85
Citations
23
References
2018
Year
Unknown Venue
Software MaintenanceProgram CheckingEngineeringCompiler TechnologyComputer ArchitectureSoftware EngineeringSoftware AnalysisFormal VerificationHardware SecurityStatic CheckingSystem SoftwareCompilersSoft ErrorsComputer EngineeringComputer ScienceStatic Program AnalysisProgram AnalysisSoftware TestingFormal MethodsSoft-error PropagationFault InjectionSdc Probabilities
As technology scales to lower feature sizes, devices become more susceptible to soft errors. Soft errors can lead to silent data corruptions (SDCs), seriously compromising the reliability of a system. Traditional hardware-only techniques to avoid SDCs are energy hungry, and hence not suitable for commodity systems. Researchers have proposed selective software-based protection techniques to tolerate hardware faults at lower costs. However, these techniques either use expensive fault injection or inaccurate analytical models to determine which parts of a program must be protected for preventing SDCs. In this work, we construct a three-level model, TRIDENT, that captures error propagation at the static data dependency, control-flow and memory levels, based on empirical observations of error propagations in programs. TRIDENT is implemented as a compiler module, and it can predict both the overall SDC probability of a given program and the SDC probabilities of individual instructions, without fault injection. We find that TRIDENT is nearly as accurate as fault injection and it is much faster and more scalable. We also demonstrate the use of TRIDENT to guide selective instruction duplication to efficiently mitigate SDCs under a given performance overhead bound.
| Year | Citations | |
|---|---|---|
Page 1
Page 1