TCL (Transparent Checkpoint Library) is a tool that provide a generic interface for several different Checkpoint/Restart state of the art libraries. It has been developed by the Programming Models group at the Barcelona Supercomputing Center.
It is mainly used, along with Mercurium compiler, to support pragma checkpointing.
Nowadays, TCL implements three different backends: FTI (Fault Tolerant Interface), SCR (Scalable Checkpoint Restart) and VeloC (Very-Low Overhead Checkpointing System). However, given its simplicity, is quite easy to add new backends.
-
TCL needs MPI and at least one of the backends (FTI/SCR/VeloC) to be built.
-
Download TCL's code
- From our repo
-
Clone TCL's repository
-
From GitHub:
$ git clone https://github.com/bsc-pm/TCL.git
-
-
Run
autoreconf
in the newly createdTCL
directory$ cd TCL $ autoreconf -fiv <<<autoreconf output>>>
-
- From our repo
-
Run
configure
. Check the configure flags with$ ./configure --help
to enable more or less backends in the library. Remember that at least one backend is necessary, as well as MPI. Set the environment variable
TCL-INSTALL
to the directory where you want to install TCL$ export TCL-INSTALL=/path/to/install/TCL $ ./configure --prefix=$TCL-INSTALL --with-mpi=/path/to/install/MPI --with-(fti/scr/veloc)=/path/to/install/(fti/scr/veloc)
-
Build and install
$ make <<<compilation output>>> $ make install
And that's all!
For questions, suggestions and bug reports, you can contact us through the pm-tools@bsc.es