International Journal of Networked and Distributed Computing

Volume 1, Issue 4, November 2013, Pages 196 - 212

A Checkpoint/Restart Scheme for CUDA Programs with Complex Computation States

Authors
Hai Jiang, Yulu Zhang, Jeff Jennes, Kuan-Ching Li
Corresponding Author
Hai Jiang
Available Online 15 October 2017.
DOI
https://doi.org/10.2991/ijndc.2013.1.4.2How to use a DOI?
Keywords
GPU, CUDA, checkpoint/start, fault tolerance
Abstract
Checkpoint/restart has been an effective mechanism to achieve fault tolerance for many long-running scientific applications. The common approach is to save computation states in memory and secondary storage for execution resumption. However, as the GPU plays a much bigger role in high performance computing, there is no effective checkpoint/restart scheme yet due to the difficulty of the GPU computation state handling. This paper proposes an application-level checkpoint/restart scheme to save and restore GPU computation states in annotated user programs. A pre-compiler and run-time support module are developed to construct and save states in CPU system memory dynamically, whereas secondary storage can be utilized for scalability and long-term fault tolerance. CUDA programs with complicated computation states are supported. State-related variables dissipated in various memory units are collected. Both stack and heap are duplicated at application level for state construction. Experimental results have demonstrated the effectiveness of the proposed scheme.
Open Access
This is an open access article distributed under the CC BY-NC license.

Download article (PDF)

Journal
International Journal of Networked and Distributed Computing
Volume-Issue
1 - 4
Pages
196 - 212
Publication Date
2017/10
ISSN (Online)
2211-7946
ISSN (Print)
2211-7938
DOI
https://doi.org/10.2991/ijndc.2013.1.4.2How to use a DOI?
Open Access
This is an open access article distributed under the CC BY-NC license.

Cite this article

TY  - JOUR
AU  - Hai Jiang
AU  - Yulu Zhang
AU  - Jeff Jennes
AU  - Kuan-Ching Li
PY  - 2017
DA  - 2017/10
TI  - A Checkpoint/Restart Scheme for CUDA Programs with Complex Computation States
JO  - International Journal of Networked and Distributed Computing
SP  - 196
EP  - 212
VL  - 1
IS  - 4
SN  - 2211-7946
UR  - https://doi.org/10.2991/ijndc.2013.1.4.2
DO  - https://doi.org/10.2991/ijndc.2013.1.4.2
ID  - Jiang2017
ER  -