As process technology scales, electronic devices become more susceptible to soft error induced by radiation. Silent data corruption occurs without any symptoms and is the most severe result incurred by soft error. Duplication is the effective way to protect the program from soft error, but it has high overhead which is increasingly unacceptable for applications. Duplicating critical variables only can significantly reduce the overhead. This paper introduces an approach that identifying the variables which are critical to the execution of the program. We apply Dynamic Dependence Graph to analyze the propagation between instructions and find out the propagation path. The criticality of memory location is characterized and the criticality of each variable is then calculated. Fault injections show that with our approach the duplication achieves high detection rate with low overhead.
['Junchi Ma', 'Yun Wang']
Identification of Critical Variables for Soft Error Detection