Title :
SWIFT: software implemented fault tolerance
Author :
Reis, George A. ; Chang, Jonathan ; Vachharajani, Neil ; Rangan, Ram ; August, David I.
Author_Institution :
Dept. of Electr. Eng. &Comput. Sci., Princeton Univ., NJ, USA
Abstract :
To improve performance and reduce power, processor designers employ advances that shrink feature sizes, lower voltage levels, reduce noise margins, and increase clock rates. However, these advances make processors more susceptible to transient faults that can affect correctness. While reliable systems typically employ hardware techniques to address soft-errors, software techniques can provide a lower-cost and more flexible alternative. This paper presents a novel, software-only, transient-fault-detection technique, called SWIFT. SWIFT efficiently manages redundancy by reclaiming unused instruction-level resources present during the execution of most programs. SWIFT also provides a high level of protection and performance with an enhanced control-flow checking mechanism. We evaluate an implementation of SWIFT on an Itanium 2 which demonstrates exceptional fault coverage with a reasonable performance cost. Compared to the best known single-threaded approach utilizing an ECC memory system, SWIFT demonstrates a 51% average speedup.
Keywords :
error correction codes; fault diagnosis; program processors; redundancy; software fault tolerance; storage management; SWIFT; control-flow checking mechanism; hardware technique; instruction-level resource; memory system; program execution; redundancy; reliable system; single-threaded approach; soft-errors; software implemented fault tolerance; software technique; transient-fault-detection technique; Clocks; Fault tolerance; Hardware; Noise level; Noise reduction; Power system reliability; Process design; Redundancy; Resource management; Voltage;
Conference_Titel :
Code Generation and Optimization, 2005. CGO 2005. International Symposium on
Print_ISBN :
0-7695-2298-X
DOI :
10.1109/CGO.2005.34