Publication

A Study of The Impact of Bit-flip Errors on Programs Compiled with Different Optimization Levels

In this paper we study the impact of compiler optimizations on the error sensitivity of twelve benchmark programs. We conducted extensive fault injection experiments where bit-flip errors were injected in instruction set architecture registers and main memory locations. The results show that the percentage of silent data corruptions (SDCs) in the output of the optimized programs is only marginally higher compare to that observed for the non-optimized programs. This suggests that compiler optimizations can be used in safety- and mission-critical systems without increasing the risk that the system produces undetected erroneous outputs. In addition, we investigate to what extent the source code implementation of a program affects the error sensitivity of a program. To this end, we perform experiments with five implementations of a bit count algorithm. In this investigation, we consider the impact of the implementation as well as compiler optimizations. The results of these experiments give valuable insights into how compiler optimizations can be used to reduce error sensitive of registers and main memory sections. They also show how sensitive locations requiring additional protection, e.g., by the use of software-based fault tolerance techniques, can be identified.

Author(s)
Behrooz Sangchoolie, Fatemeh Ayatolahi, Roger Johansson, Johan Karlsson 
Research area
Systems for Accident Prevention and AD
Publication type
Conference paper
Published in
10th European Dependable Computing Conference, EDCC 2014, May 2014, Newcastle upon Tyne
Project
BeSafe - Benchmarking of Functional Safety
Year of publication
2014