2005 · 52 citations · 25 references
ComputingComputer ScienceHigh-performance ComputingFault ToleranceFault-tolerant ComputingParallel ComputingError DetectionFault InjectionFault ModelingFault Tolerance DesignReliable System DesignSoftware Fault ToleranceFault Detection MechanismsFault Injection ExperimentationFault Injection SimulationFault Tolerance In MultiprocessorsHigh-performance Computing SystemsSensitivitySoftware Fault DetectionSoftware Fault Injection
Today, clusters built from commodity PCs dominate high-performance computing, with systems containing thousands of processors now being deployed. As node counts for multi-teraflop systems grow to thousands and with proposed petaflop system likely to contain tens of thousands of nodes, the standard assumption that system hardware and software are fully reliable becomes much less credible. Concomitantly, understanding application sensitivity to system failures is critical to establishing confidence in the outputs of large-scale applications. Using software fault injection, we simulated single bit memory errors, register file upsets and MPI message payload corruption and measured the behavioral responses for a suite of MPI applications. These experiments showed that most applications are very sensitive to even single errors. Perhaps most worrisome, the errors were often undetected, yielding erroneous output with no user indicators. Encouragingly, even minimal internal application error checking and program assertions can detect some of the faults we injected.
25
Constructing Induction Rules for Deductive Synthesis Proofs
Alan Bundy, Lucas Dixon, Jeremy Gow et al. · Electronic Notes in Theoretical Computer Science · 2006 · 2.8K citations · Full text
MPI: A Message-Passing Interface Standard
Message P Forum · 1994 · 2.7K citations
Myrinet: a gigabit-per-second local area network
N.J. Boden, D. Cohen, Robert E. Felderman et al. · IEEE Micro · 1995 · 1.7K citations