A Lightweight Approach to GPU Resilience

M. Baird, C. Fensch, S.-B. Scholz, and Artjoms Šinkarovs, “A lightweight approach to GPU resilience,” in Euro-par 2018: Parallel processing workshops - euro-par 2018 international workshops, turin, italy, august 27-28, 2018, revised selected papers, Dec. 2018, vol. 11339, pp. 826–838. doi: 10.1007/978-3-030-10549-5_64.

[URL] [BibTeX]

Abstract

Resilience for HPC applications typically is implemented as a CPU-based rollback-recovery technique. In this context, long running accelerator computations on GPUs pose a major challenge as these devices usually do not offer any means of interrupt. This paper proposes a solution to the aforementioned problem: it suggests a novel approach that rewrites GPU kernels so that a soft interrupt of their execution becomes possible. Our approach is based on the Compute Unified Device Architecture (CUDA) by Nvidia and works by taking advantage of CUDA’s execution model of partitioning threads into blocks. In essence, we re-write the kernel so that each block determines whether it should continue execution or return control to the CPU. By doing so we are able to perform a premature interrupt of kernels.