Re: [AMBER-Developers] AMBER + Docker + configure

From: B. Lachele Foley <lfoley.ccrc.uga.edu>
Date: Tue, 11 Oct 2016 05:25:46 +0000

Thanks, Scott! I'll give it a try.


I could probably make an AT image happen pretty easily. But, it's not that daunting a task for anyone. I'll write when I have one. Might be a few days. If anyone else wants the task, feel free. I could explain briefly at the dev meeting about docker and the image, if that is desirable.


:-) Lachele

Dr. B. Lachele Foley
Associate Research Scientist
Complex Carbohydrate Research Center
The University of Georgia
Athens, GA USA
lfoley.uga.edu
http://glycam.org
________________________________
From: Scott Brozell <sbrozell.rci.rutgers.edu>
Sent: Monday, October 10, 2016 9:22:27 PM
To: AMBER Developers Mailing List
Subject: Re: [AMBER-Developers] AMBER + Docker + configure

Hi,

At the tail is a script i use for installing Amber; for Amber 16 it works
w/o installer action during configure. It could be more generic ...

I'm ++ on flags for configure especially those which enable quick
bypass of stuff i don't need at a particular install time.

scott

On Mon, Oct 10, 2016 at 05:13:57PM -0400, Jason Swails wrote:
> Docker support on Windows is still somewhat second-class though. I believe it relies on features in UNIX kernels that support sandboxing, so on Windows it runs in a Linux VM layer.
>
> The main thing that means is that while Linux and Mac docker images run on native hardware (at full speed including GPUs), Windows is going to be substantially slower with no cuda support. On the whole though, an AmberTools docker image would be sweet.
>
> All the best,
> Jason
>
> P.S. Docker is written in go, which is a language I've recently had to learn. So I've actually looked at the source a bit. Neat language!
>
> --
> Jason M. Swails
>
> > On Oct 10, 2016, at 11:44 AM, B. Lachele Foley <lfoley.ccrc.uga.edu> wrote:
> >
> > No prob. I'll use workarounds.
> >
> >
> > Yes, the docker image can be run on Windows or Mac or different versions of Linux. The big requirement for Linux is kernel 3.10 or better. Last I tried the Win environment, it was a bit clunky, but that was some months back. It would be nice to have an official AmberTools image on Docker Hub, even for Linux: no compiling, no dependencies, just "docker pull".
> >
> >
> > I know WAY TOO MUCH about Docker, so I'll be happy to talk to anyone who has questions about it.
> >
> >
> > :-) Lachele
> >
> > Dr. B. Lachele Foley
> > Associate Research Scientist
> > Complex Carbohydrate Research Center
> > The University of Georgia
> > Athens, GA USA
> > lfoley.uga.edu
> > http://glycam.org
> > ________________________________
> > From: Jason Swails <jason.swails.gmail.com>
> > Sent: Monday, October 10, 2016 11:11:57 AM
> > To: AMBER Developers Mailing List
> > Subject: Re: [AMBER-Developers] AMBER + Docker + configure
> >
> > Also, if you run update_amber first before configure, it should not ask you to apply updates. And as long as you implement the same logic that the configure script uses to apply updates, configure should not ask you any questions.
> >
> > And as Hai mentioned, you can specify a python or to skip Python to avoid the python questions. Adding flags to configure would add complexity to work around intentional queries when it's currently not hard to avoid them.
> >
> > I'm personally -1 on the flags for this reason.
> >
> > All the best,
> > Jason
> >
> > --
> > Jason M. Swails
> >
> >> On Oct 10, 2016, at 8:34 AM, B. Lachele Foley <lfoley.ccrc.uga.edu> wrote:
> >>
> >> Trying to install AMBER in a Docker container and therefore in an automated fashion. But, the install requires me to answer questions during the configure phase. Ok for me to add a "-yespatch" flag that answers yes to patches and a "-yespython" that answers yes to the python question? The text of the flags is entirely negotiable. It should be a trivial addition.
> >>


#!/bin/sh
# install amber by scott brozell.
## denotes cut-n-pasted command output.
# get module command
source /etc/profile
set -vx

date
if [ $# -lt 1 ]
then
    echo "usage: $0 AMBER_VERSION is_gpu"
    echo " where AMBER_VERSION is the tag of the tar ball, eg, amber16"
    echo " and is_gpu is yes or no."
    echo " Note that argument checking is lax."
    echo " Example: $0 amber16 no"
    exit
fi
export AMBER_VERSION=$1
is_gpu=$2

# set up the environment
module purge
module load intel/16.0.3
module load mvapich2/2.2rc1
module load python/3.5
module list
ifort -V
mpicc -v -show

# Amber is installed in /usr/local not /usr/local/src
cd /usr/local/amber/$AMBER_VERSION
pwd
export AMBERHOME=`pwd`

# apply all available updates
./update_amber --show-applied-patches
./update_amber --update
./update_amber --show-applied-patches

# configure, build, and test for serial executables
./configure -mkl intel
# save a backup copy
cp -p AmberTools/src/config.h AmberTools/src/config.h.serial
source amber.sh
make
make test
cd test; make check; cd ..

# configure, build, and test for parallel executables
./configure -mpi -mkl intel
# save a backup copy
cp -p AmberTools/src/config.h AmberTools/src/config.h.parallel
#source amber.sh
make
export DO_PARALLEL='mpiexec -n 2'
make test
cd test; make check; cd ..

exit


_______________________________________________
AMBER-Developers mailing list
AMBER-Developers.ambermd.org
http://lists.ambermd.org/mailman/listinfo/amber-developers
_______________________________________________
AMBER-Developers mailing list
AMBER-Developers.ambermd.org
http://lists.ambermd.org/mailman/listinfo/amber-developers
Received on Mon Oct 10 2016 - 22:30:03 PDT
Custom Search