[AMBER-Developers] Singularity and Amber

From: Gerald Monard <Gerald.Monard.univ-lorraine.fr>
Date: Thu, 29 Aug 2019 22:35:49 +0200

Dear all,

When building and testing Amber, it's not always easy to reproduce what
users have, especially in the Linux world with all the flavors out
there. One interesting solution is to use containers that could
virtualize the behaviour of Linux machines. Docker is a great solution
to build and manage containers. However, nearly everytime you want to
apply a docker command, you need to be root (or use the sudo command).
One alternative is to use Singularity (https://sylabs.io). The advantage
of Singularity is: 1) you don't need sudo to use it (but it's still
required for the installation of singularity itself); 2) singularity
automatically mount your $HOME and your current working directory in the
container when you execute it. Therefore, singularity is more and more
use in HPC centers and you must probably have access to it on your
favorite supercomputer.

This said, I have merged into the master branch of Amber a directory
called $AMBERHOME/containers/singularity that contains scripts and
inputs to build and execute containers with singularity. There are
recipes to build containers for various flavors of Linux (centos,
debian, fedora, opensuse, and ubuntu). From any of them, you can
configure/build/test Amber and check if your favorite git branch will
work on any Linux implementation.

A documentation is available in the singularity directory (and in
attachment of this email). It is also accessible at
http://ambermd.org/pmwiki/index.php/Main/Singularity .

Using singularity containers is simple as:

alias amberity=$AMBERHOME/containers/singularity/amberity
# build a specific container
amberity --build ubuntu/18.04
# define your default container
amberity --default ubuntu/18.04
# configure + build serial version of Amber
cd $AMBERHOME
amberity amber build.serial

FYI, with this approach, I've been able to check all necessary minimum
requirements for building Amber with these different flavors of Linux
and thus to update the installation page of the website.

I encourage you to use singularity to check your development branch. I
hope that it should ease the process of debugging/testing for the next
release.

Some final notes:
- singularity works only with Linux containers (no MacOS, no Windows). A
beta version of singularity is although available for MacOS
- singularity containers tailored for Amber are between 500MB and 1GB size
- not tested yet: singularity can work on host machine with GPU cards
and grant access to GPU in the containers.

Hope you will like it,

Gerald.

-- 
____________________________________________________________________________
  Prof. Gerald MONARD
  Directeur du mésocentre EXPLOR
  Université de Lorraine
  Boulevard des Aiguillettes B.P. 70239
  F-54506 Vandoeuvre-les-Nancy, FRANCE
  e-mail : Gerald.Monard.univ-lorraine.fr
  phone  : +33 (0)372.745.279
  mobile : +33 (0)678.006.443
  web    : http://www.monard.info
____________________________________________________________________________



_______________________________________________
AMBER-Developers mailing list
AMBER-Developers.ambermd.org
http://lists.ambermd.org/mailman/listinfo/amber-developers

Received on Thu Aug 29 2019 - 14:00:02 PDT
Custom Search