Downloads provided by UsageCounts
One of the major challenges in using extreme scale systems efficiently is to mitigate the impact of faults. Application-level checkpoint/restart (CR) methods provide the best trade-off between productivity, robustness, and performance. There are many solutions implementing CR at the application level. They all provide advanced I/O capabilities to minimize the overhead introduced by CR. Nevertheless, there is still room for improvement in terms of programmability and flexibility, because end-users must manually serialize and deserialize application state using low-level APIs, modify the flow of the application to consider restarts, or rewrite CR code whenever the backend library changes. In this work, we propose a set of compiler directives and clauses that allow users to specify CR operations in a simple way. Our approach supports the common CR features provided by all the CR libraries. However, it can also be extended to support advanced features that are only available in some CR libraries, such as differential checkpointing, the use of HDF5 format, and the possibility of using fault-tolerance-dedicated threads. The result of our evaluation revealed a high increase in programmability. On average, we reduced the number of lines of code by 71%, 94%, and 64% for FTI, SCR, and VeloC, respectively, and no additional overhead was perceived using our solution compared to using the backend libraries directly. Finally, portability is enhanced because our programming model allows the use of any backend library without changing any code.
FOS: Computer and information sciences, Àrees temàtiques de la UPC::Informàtica::Enginyeria del software, Application program interfaces (Computer software), Programari -- Tests, Checkpoint/restart methods, :Informàtica::Enginyeria del software [Àrees temàtiques de la UPC], Compiladors (Programes d'ordinador), Interfícies de programació d'aplicacions (Programari), Computer software -- Testing, Computer Science - Distributed, Parallel, and Cluster Computing, Distributed, Parallel, and Cluster Computing (cs.DC), Compilers (Computer programs)
FOS: Computer and information sciences, Àrees temàtiques de la UPC::Informàtica::Enginyeria del software, Application program interfaces (Computer software), Programari -- Tests, Checkpoint/restart methods, :Informàtica::Enginyeria del software [Àrees temàtiques de la UPC], Compiladors (Programes d'ordinador), Interfícies de programació d'aplicacions (Programari), Computer software -- Testing, Computer Science - Distributed, Parallel, and Cluster Computing, Distributed, Parallel, and Cluster Computing (cs.DC), Compilers (Computer programs)
| selected citations These citations are derived from selected sources. This is an alternative to the "Influence" indicator, which also reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically). | 3 | |
| popularity This indicator reflects the "current" impact/attention (the "hype") of an article in the research community at large, based on the underlying citation network. | Average | |
| influence This indicator reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically). | Average | |
| impulse This indicator reflects the initial momentum of an article directly after its publication, based on the underlying citation network. | Average |
| views | 46 | |
| downloads | 26 |

Views provided by UsageCounts
Downloads provided by UsageCounts