Tested on (Requirements)

  • OS base: CentOS (x86_64) \(\boldsymbol{\ge}\) 6.6
  • Scheduler: SLURM \(\boldsymbol{\ge}\) 16.05.6
  • Compiler: GNU GCC \(\boldsymbol{\ge}\) 4.4.7-11

Build process

This entry describes the installation process of DMTCP.

  1. Get DMTCP latest version from its sourceforge page (page)

  2. Send the installation package to the master node on your cluster.

    scp dmtcp-2.5.2.tar.gz <usename>t@<FQDN>:$installer_path$
    
  3. Unzip and access the installer files.

    ssh -X root@<FQDN>
    cd $installer_path$
    tar xf dmtcp-2.5.2.tar.gz
    
  4. Create the installation directory and change its owner to the user that it is doing this process.

    mkdir -p /share/apps/dmtcp/2.5.2
    chown <username>.<user group> /share/apps/dmtcp/2.5.2
    
  5. Go to DMTCP path and build it with the acording flags presented here.

    ./configure \
    --prefix=/share/apps/dmtcp/2.5.2 \
    --build=x86_64-redhat-linux \
    --enable-infiniband-support \
    --enable-pthread-mutex-wrappers
    make && make install
    
  6. After this process, repeat the configure process to install the (32 Bits) compatibility following these commands.

    ./configure \
    --prefix=/share/apps/dmtcp/2.5.2 \
    --build=x86_64-redhat-linux \
    --enable-infiniband-support \
    --enable-pthread-mutex-wrappers \
    --enable-m32
    make clean
    make && make install
    
  7. Change the owner of the installation directory to finish this process.

    chown root.root /share/apps/dmtcp/2.5.2
    

Module file

#%Module1.0####################################################################
##
## module load dmtcp/2.5.2
##
## /share/apps/modules/dmtcp/2.5.2
## Written by Sebastian Patiño Barrientos
##

proc ModulesHelp {} {
     global version modroot
     puts stderr "Sets the environment for using dmtcp 2.5.2\
		  \nin the shared directory \
		  \n/share/apps/dmtcp/2.5.2/\
		  \nbuilded with gcc-4.4.7"
}

module-whatis "(Name________) dmtcp"
module-whatis "(Version_____) 2.5.2"
module-whatis "(Compilers___) gcc-4.4.7"
module-whatis "(System______) x86_64-redhat-linux"
module-whatis "(Libraries___) "

# for Tcl script use only
set         topdir        /share/apps/dmtcp/2.5.2/
set         version       2.5.2
set         sys           x86_64-redhat-linux

conflict dmtcp
 

prepend-path	PATH			$topdir/bin

prepend-path	LD_LIBRARY_PATH		$topdir/lib
prepend-path	LIBRARY_PATH		$topdir/lib
prepend-path	LD_RUN_PATH		$topdir/lib

prepend-path	C_INCLUDE_PATH		$topdir/include
prepend-path	CXX_INCLUDE_PATH	$topdir/include
prepend-path	CPLUS_INCLUDE_PATH	$topdir/include

prepend-path	MANPATH			$topdir/share/man