1. General remarks
All of AmberTools 1.4 and Amber 11 (including the X-windows parts) will
compile and run on Windows using the Cygwin development tools: see http://www.cygwin.com.
The cygwin package provides a way to make Microsoft Windows machines
resemble a Linux/Unix environment; if you are unfamiliar with the Linux/Unix
environment, you will need to learn at least the basics of that in order to
use Amber on Windows.
Note that Cygwin provides a POSIX-compatible environment for Windows. Effective use of this environment requires a basic familiarity with the principles of Linux or Unix operating systems. Building the Windows version is thus somewhat more complex (not simpler) than building under other operating systems. The Windows version has primarily been used in serial (single-cpu) mode but will also work with MPICH2 libraries. For long-running jobs, Windows can have an annoying habit of giving lots (or all) of the CPU time to an interactive process, so that background processes suffer.
The bottom line is that the Windows version is functional, but the primary development and target operating system is Unix or Linux.
Amber 11 has a new option to build and run certain executables outside the Cygwin environment, using Intel compilers. In particular, pmemd can be built both in serial and in parallel using Microsoft MPI for maximum performance under Windows Desktops and Windows HPC Clusters (see section 3. below). This Windows port was developed by Thorsten Wölfle, Andreas W. Götz and Ross C. Walker. Precompiled pmemd binaries for Windows may be obtained here.
2. Installation on Windows using Cygwin
Compilation and execution of AmberTools 1.4 and Amber 11 under Windows
requires a Cygwin installation (see section 2.1 below)
including the packages
gcc4, gcc4-fortran, make, m4, flex, diffutils, tcsh, util-linux.
If you already have a working Cygwin environment, you can skip this step and
directly proceed with the installation of AmberTools 1.4
(see section section 2.2 below).
gcc4, gcc4-fortran, make, m4, flex, diffutils, tcsh, util-linux, patch, libXt, libXt-devel, libXext, libXext-devel
You should be seeing list of packages that can be installed. There is a button in the upper right corner, called "View" that cycles between various views of the optional packages. Click on it until you reach the "Full" view (indicated to the right of the "View" button) You should see a giant list of all individual packages (in alphabetical order). For most packages, the status column will say "skip", meaning that the package will not be installed. If you go to some package and click on the little arrows next to it, the "skip" label will change to a version number. (Clicking again and again on the arrows cycles between all the possibilities -- play with this a bit unitl you see how it works -- it's only intuitive after you've experimented a bit.) Look for the above-mentioned programs/libraries and make sure that they are selected for installation (an easy way to find the program name in the list is to enter its name in the "Search" field on the top left corner). Finally, press "Next" at the bottom to complete the installation.
2.2 Installation of AmberTools version 1.4 using Cygwin
Drag AmberTools-1.4.tar.bz2 from the desktop to your home directory.
tar xvjf AmberTools-1.4.tar.bz2
If you type "ls" (equivalent to the dos "dir" command), you should see two files: the AmberTools file, and a new directory called "amber11". You can explore now, for example with commands like the following:
| cd amber11 | (moves you "into" the amber11 directory) |
| ls | (lists the files and directories) |
| cd AmberTools | (moves you down further into the AmberTools directory) |
| cd | (moves you back to your home directory) |
| export AMBERHOME=/home/name/amber11 | (where name is your Windows user name) |
| export PATH=$PATH:$AMBERHOME/exe |
cd $AMBERHOME
wget http://ambermd.org/bugfixes/AmberTools/1.4/bugfix.all
This will download the file bugfix.all. If no bug fixes are available you will obtain an error message. Otherwise, procced to apply the bug fixes by typing:
patch -p0 -N < bugfix.all
cd $AMBERHOME/AmberTools/src
./configure -cygwin gnu
[Aside: you can type "./configure --help" to see more options.] Be patient, the configuration process takes a while to complete. Pay attention to any warning or error messages and proceed with the installation only if the configuration process was successful.
make install
At this point the screen will fill up with compilation messages. The build process will take several minutes. At the end you should see the message:
"Installation of AmberTools, version 1.4 serial is complete at date"
cd $AMBERHOME/AmberTools/test
./test_at_serial.sh
This will run a series of tests, most of which should say PASSED. In the end you will obtain a summary of how many tests passed, failed and experienced errors. Note that sometimes tests can fail due to rounding errors which are not critical. In case that you have test failures, please inspect the test outputs to determine whether the failures are acceptable.
Note: Cygwin has just undergone a major change (as of 12/23/09); right now we are experiencing trouble with running xleap. Since all this used to work with the older Cygwin, we will try to post updated instructions here soon.
2.3 Installation of Amber version 11 using Cygwin
If you have not yet done so, unpack and install AmberTools version 1.4 (see
section 2.2 above).
This package contains files and codes that you will need for Amber version 11,
as well.
Both AmberTools version 1.4 and Amber version 11 tar files unpack into the
same directory tree, with amber11 at its root. We will assume that you
have installed AmberTools version 1.4 in your home directory.
tar xvjf Amber11.tar.bz2
cd $AMBERHOME
wget http://ambermd.org/bugfixes/11.0/bugfix.all
This will download the file bugfix.all. If no bug fixes are available you will obtain an error message. Otherwise, procced to apply the bug fixes by typing:
patch -p0 -N < bugfix.all
cd $AMBERHOME/src
make install
"Installation of Amber11 (serial) is complete at date"
cd $AMBERHOME/test
./test_amber_serial.sh
This will run a series of tests, most of which should say PASSED. In the end you will obtain a summary of how many tests passed, failed and experienced errors. Note that sometimes tests can fail due to rounding errors which are not critical. In case that you have test failures, please inspect the test outputs to determine whether the failures are acceptable.
3. Installation of the native Windows version of PMEMD
For maximum performance under Windows, Amber 11's PMEMD program can now be built and run, both in serial and in parallel using Microsoft MPI, outside the Cygwin environment. The configuration step of the build process, however, still requires a Cygwin installation (see section 2.1 above). Once the native Windows executables of pmemd have been built, they can be executed on Windows machines that do not have Cygwin installed.
Both AmberTools version 1.4 and all other parts of Amber version 11 can be built and run under Cygwin by following the steps described in section 2.2 and section 2.3 above. In the following we will assume that both AmberTools version 1.4 and Amber version 11 have been extracted and installed in the directory $AMBERHOME as described in these sections.
Serial version
CYGWIN> cd $AMBERHOME/AmberTools/src
CYGWIN> ./configure -windows intel
DOS> set PATH=C:\path_to_make;%PATH%
(here, path_to_make.exe is the directory where you installed the GNU make executable)
DOS> set AMBERHOME=C:\cygwin\home\name\amber11
DOS> cd %AMBERHOME%\src
DOS> make serial_win
At this point the screen will fill up with compilation messages. Upon a successful build you will see the message "move pmemd.exe ..\..\..\bin" and "1 file(s) moved" close to the end of the output. Any error messages following this message can be safely ignored.
Note that the pmemd executable which was built with Cygwin (see section 2.1 above) has now been overwritten with the native Windows executable.
CYGWIN> cd $AMBERHOME/test
CYGWIN> make test.serial.pmemd
This will run a series of tests, most of which should say PASSED.
You are now ready to build the parallel native Windows version of pmemd.
CYGWIN> cd $AMBERHOME/AmberTools/src
CYGWIN> ./configure -mpi -windows intel
DOS> C:\Program Files (x86)\Intel\ICT\3.2.2.015\ictvars
For building parallel pmemd you have to type:
DOS> cd %AMBERHOME%\src
DOS> make clean
DOS> make parallel_win
At this point the screen will fill up with compilation messages. Upon a successful build you will see the message "move pmemd.MPI.exe ..\..\..\bin" and "1 file(s) moved" close to the end of the output. Any error messages following this message can be safely ignored.
CYGWIN> cd $AMBERHOME
CYGWIN> rm exe
CYGWIN> mv bin exe
CYGWIN> ln -s exe bin
(This needs to be done because Microsoft's mpiexec environment cannot follow symbolic links.)
Now run the tests:
CYGWIN> export DO_PARALLEL="mpiexec -n 4"
(to run on 4 processors)
CYGWIN> cd $AMBERHOME/test
CYGWIN> make test.parallel.pmemd
This will run a series of tests, most of which should say PASSED.