DMTCP: Transparent checkpointing for cluster computations and the desktop
Jason Ansel,Kapil Aryay,Gene Coopermany +2 more
- pp 1-12
TLDR
DMTCP as mentioned in this paper is a transparent user-level checkpointing package for distributed applications, which is used for the runCMS experiment of the Large Hadron Collider at CERN, and it can be incorporated and distributed as a checkpoint-restart module within some larger package.Abstract:
DMTCP (Distributed MultiThreaded CheckPointing) is a transparent user-level checkpointing package for distributed applications. Checkpointing and restart is demonstrated for a wide range of over 20 well known applications, including MATLAB, Python, TightVNC, MPICH2, OpenMPI, and runCMS. RunCMS runs as a 680 MB image in memory that includes 540 dynamic libraries, and is used for the CMS experiment of the Large Hadron Collider at CERN. DMTCP transparently checkpoints general cluster computations consisting of many nodes, processes, and threads; as well as typical desktop applications. On 128 distributed cores (32 nodes), checkpoint and restart times are typically 2 seconds, with negligible run-time overhead. Typical checkpoint times are reduced to 0.2 seconds when using forked checkpointing. Experimental results show that checkpoint time remains nearly constant as the number of nodes increases on a medium-size cluster. DMTCP automatically accounts for fork, exec, ssh, mutexes/ semaphores, TCP/IP sockets, UNIX domain sockets, pipes, ptys (pseudo-terminals), terminal modes, ownership of controlling terminals, signal handlers, open file descriptors, shared open file descriptors, I/O (including the readline library), shared memory (via mmap), parent-child process relationships, pid virtualization, and other operating system artifacts. By emphasizing an unprivileged, user-space approach, compatibility is maintained across Linux kernels from 2.6.9 through the current 2.6.28. Since DMTCP is unprivileged and does not require special kernel modules or kernel patches, DMTCP can be incorporated and distributed as a checkpoint-restart module within some larger package.read more
Citations
More filters
Proceedings ArticleDOI
Be Kind, Rewind: Checkpoint a Restore Capability for Improving Reliability of Large-Scale Semiconductor Design
TL;DR: This paper elaborates on the innovative technological breakthroughs, industry-academy partnership as well as the open-source contribution to improve the checkpoint & restore solution for the design computing environment.
Posted Content
CRAC: Checkpoint-Restart Architecture for CUDA with Streams and UVM
Twinkle Jain,Gene Cooperman +1 more
TL;DR: CRAC (Checkpoint-Restart Architecture for CUDA) is new checkpoint-restart solution for fault tolerance that supports the full range of CUDA applications and achieves its flexible architecture by segregating application code and its external GPU communication via non-reentrant CUDA libraries within a single process's memory.
Proceedings ArticleDOI
A Methodology for Soft Errors Detection and Automatic Recovery
Jorge Villamayor,Dolores Rexachs,Emilio Luque,Diego Miguel Montezanti,A. De Giusti,Marcelo Naiouf +5 more
TL;DR: A methodology that improves system reliability against transient faults, when running parallel message-passing applications, based on process replication is proposed, with the goal of helping programmers and users of parallel scientific applications to achieve reliable executions with correct results.
Proceedings ArticleDOI
RaaS: resilience as a service
TL;DR: This paper proposes Resilience as a Service (RaaS), a fault tolerant framework for HPC applications running in cloud and shows that RaaS restores and completes the application execution using available resources while reducing overhead up to 8% for different fault-tolerant configuration alternatives.
Journal ArticleDOI
Experimental and Analytical Analysis of Sorting Algorithms Error Criticality for HPC and Large Servers Applications
TL;DR: Results are presented showing that the criticality of the radiation-induced output error pattern depends on the application, and fault injection is useful in identifying possible root causes of the output errors observed in radiation testing.
References
More filters
Journal ArticleDOI
IPython: A System for Interactive Scientific Computing
Fernando Perez,Brian E. Granger +1 more
TL;DR: The IPython project as mentioned in this paper provides an enhanced interactive environment that includes, among other features, support for data visualization and facilities for distributed and parallel computation for interactive work and a comprehensive library on top of which more sophisticated systems can be built.
Journal ArticleDOI
Distributed snapshots: determining global states of distributed systems
K. Mani Chandy,Leslie Lamport +1 more
TL;DR: An algorithm by which a process in a distributed system determines a global state of the system during a computation, which helps to solve an important class of problems: stable property detection.
Portable implementation of the mpi message passing interface standard
TL;DR: The MPI Message Passing Interface (MPI) as discussed by the authors is a standard library for message passing that was defined by the MPI Forum, a broadly based group of parallel computer vendors, library writers, and applications specialists.
Proceedings Article
Libckpt: transparent checkpointing under Unix
TL;DR: In this paper, the authors describe a portable checkpointing tool for Unix that implements all applicable performance optimizations which are reported in the literature and also supports the incorporation of user directives into the creation of checkpoints.
Proceedings Article
Fast transparent migration for virtual machines
TL;DR: This is the first system that can migrate unmodified applications on unmodified mainstream Intel x86-based operating system, including Microsoft Windows, Linux, Novell NetWare and others, to provide fast, transparent application migration.