Kernel and layer vulnerability factor to evaluate object detection reliability in GPUs. Issue 3 (4th December 2018) - Fernandes dos Santos, Fernando; Carro, Luigi; Rech, Paolo
Abstract : Video recognition applications running on Graphics Processing Unit are composed of heterogeneous software portions, such as kernels or layers for neural networks. The authors propose the concepts of kernel vulnerability factor (KVF) and layer vulnerability factor (LVF), which indicate the probability of faults in a kernel or layer to affect the computation. KVF and LVF indicate the high‐level portions of code that are more likely, if corrupted, to impact the application's output. KVF and LVF restrict the architecture/program vulnerability factor analysis to specific portions of the algorithm, easing the criticality analysis and the implementation of selective hardening. We apply the proposed metrics to two Histogram of Oriented Gradients (HOG), and You Only Look Once (YOLO) benchmarks. We measure the KVF for HOG by using fault‐injection at both the architectural level and high level. We propose for HOG an efficient selective hardening technique able to detect 85% of critical errors with an overhead in performance as low as 11.8%. For YOLO, we study the LVF with architectural‐level fault‐injection. We qualify the observed corrupted outputs, distinguishing between tolerable and critical errors. Then, we proposed a smart layer duplication that detects more than 90% of errors, with an overhead lower than 60%.