EXPERT: Effective and Flexible Error Protection by Redundant Multi Threading

Hwisoo So1,a, Moslem Didehban2,d, Yohan Ko1,b, Aviral Shrivastava2,e and Kyoungwoo Lee1,c
1Yonsei University, Seoul, Korea
aShs7719@yonsei.ac.kr
bYohan.Ko@yonsei.ac.kr
cKyoungwoo.Lee@yonsei.ac.kr
2Compiler Microarchitecture Lab, Arizona State University, Tempe, AZ
dMoslem.Didehban@asu.edu
eAviral.Shrivastava@asu.edu

ABSTRACT


Resiliency is a first‐order design concern in modern microprocessor design. Compiler‐level Redundant MultiThreading (RMT) schemes are promising because of their capability to detect the manifestation of hardware transient and permanent faults. In this work, we propose EXPERT, a compiler‐level RMT scheme which can detect the manifestation of hardware faults in all hardware components. EXPERT transformation generates a checker thread for program main execution thread. These redundant threads execute simultaneously on two physically different cores of a multi‐core processor. They perform mostly same computations, however, after each memory write operation committed by the main thread, the checker thread loads back the written data from the memory and checks it against its own locally computed values. If they match, execution continues. Otherwise, the error flag will be raised. Our processor‐wide statistical transient and permanent fault injection experiments show that EXPERT error coverage is ∼65× better than the state‐of‐the‐art scheme.



Full Text (PDF)