|
Size: 8992
Comment:
|
Size: 10294
Comment:
|
| Deletions are marked like this. | Additions are marked like this. |
| Line 297: | Line 297: |
| Here we will build using the Portland Group fortran compiler. | Here we will build using the Portland Group fortran compiler and a precompiled BLAS atlas library. Atlas BLAS `````````` Take a precompiled version (3.6.0) of `Atlas <https://sourceforge.net/project/showfiles.php?group_id=23725>`_ that fits you system best. The rest of the installation assumes you have installed ATLAS in `/usr/local/lib`. The precompiled version of atlas includes 2 underscore for fortran symbols, so for the rest of the fortran conpilations use the pgf90 flag `-Msecond_underscore`. |
| Line 308: | Line 321: |
| ./configure --prefix=/usr FFLAGS='-byteswapio' FC=pgf90 FCFLAGS=-byteswapio CC=pgcc CXX=pgCC CPPFLAGS='-DNDEBUG -Df2cFortran' | ./configure --prefix=/usr FC=pgf90 FCFLAGS='-byteswapio -Msecond_underscore' CC=pgcc CXX=pgCC CPPFLAGS='-DNDEBUG -Df2cFortran' |
| Line 325: | Line 338: |
| ./configure F77=pgf90 CC=pgcc CFLAGS=-O3 FFLAGS=-O3 | ./configure --prefix=/usr F77=pgf90 CC=pgcc CFLAGS=-O3 FFLAGS='-O3 -Msecond_underscore' |
| Line 333: | Line 346: |
LAM-MPI ``````` We will here use the MPI library `LAM-MPI <http://www.lam-mpi.org/>`_ Download the `tarfile <http://www.lam-mpi.org/download/files/lam-7.1.2.tar.gz>_ and build using:: setenv CPPFLAGS '-DNDEBUG -Df2cFortran' setenv F77 pgf90 setenv FC pgf90 setenv FFLAGS '-byteswapio -Msecond_underscore' ./configure --prefix=/usr/local/lam-7.1.2-pgi/ CPPFLAGS='-DNDEBUG -Df2cFortran' F77=pgf90 FC=pgf90 FFLAGS='-byteswapio -Msecond_underscore' gmake gmake install dacapo `````` Set the environment variables:: setenv BLASLAPACK '-L/usr/local/lib -llapack -lcblas -lf77blas -latlas' setenv NETCDF /usr setenv FFTW /usr setenv MPIDIR /usr/local/lam-7.1.2-pgi/ and compile like:: gmake pglinux gmake pglinux MP=mpi |
Download and Installation
Contents
1 Requirements
- CamposASE2 is required, http://www.fysik.dtu.dk/campos/ASE
2 Installation
The next section describes how the fortran program, pseudopotentials and python interface can be installed.
If you have a installation using the old CamposASE, it is enough just installing the new python interface, see dacapo python interface.
2.1 dacapo fortran program and pseudopotentials
This section describes how the fortran program and pseudopotential are installed. Current version of the fortran program is 2.7.7.
2.1.1 From RPM
A binary RPM (tested and builded using Pentium 4) can be used to install dacapo on a Pentium 4 system.
This will install pseudopotentials in /usr/share/dacapo/psp and binary executable in /usr/bin.
2.1.2 From Tarfile
A Dacapo tar file containing fortran source code and pseudopotentials can be used to install dacapo on a non rpm system.
Use gunzip Dacapo-2.7.7.tar.gz.
2.1.2.1 Dacapo binaries for different platforms
The page dacapo binaries list dacapo binaries for different platforms.
2.1.2.2 Compling the fortran source code
- use::
- cd src gmake <arch> [MP=mpi]
here <arch> is one of:
- sun_ss10
- Sun sparcstation 10/20)
- ibm_power3
- RS/6000 power3 node
- ibm_power2_wide
- RS/6000 wide power2 node
- ibm_power2_thin
- RS/6000 thin/thin2 power2 node
- sgi
- Silicon Graphics n32 ABI
- alpha
- Digital Alpha
- pglinux
- Portland Group pgf90 compiler on linux
- intellinux
- Intel ifc Fortran compiler version >=6.0 on Linux
More details will follow here shortly.
2.1.2.3 Installing the pseudopotentials
The dacapo fortran program adds the enviroment variable DACAPOPATH to the pseudopotential filename (if the file is not found in the currebt working directiory). Copy all pseudopotentials to a directory and set the DACAPOPATH environment variable to this directory:
cp psp/*/*/*.pseudo /some/directory/ setenv DACAPOPATH /some/directory/
2.2 dacapo python interface
Get the latest version of the dacapo python interface.
- From tar file
- cvs:
- cvs checkout dacapo/Python
for case 1 unpack the tar file and:
[home] $ cd Dacapo
(for case 2 cd dacapo/Python)
and install with the standard setup.py script (if you have root permission):
[Python] $ python setup.py install
If you do not have root permission use:
[Python] $ python setup.py install --prefix=/some/where/in/your/path
In this latter case you must set your PYTHONPATH environment variable, as directed by the setup.py script.
- Alternative to step 3 simply set the PYTHONPATH environment variable to your cvs directory.
3 CVS access
You can access the code from CVS. See the Campos CVS Page.
After the CVS login, get the dacapo fortran source using:
cvs -d :pserver:USERID@cvs.fysik.dtu.dk:/home/camp/CVSROOT checkout dacapo/src
Get the pseudopotentials using:
cvs -d :pserver:USERID@cvs.fysik.dtu.dk:/home/camp/CVSROOT checkout dacapo/psp
Get the Python interface using:
cvs -d :pserver:USERID@cvs.fysik.dtu.dk:/home/camp/CVSROOT checkout dacapo/Python
4 Running Dacapo in parallel
Dacapo can run in parallel using the MPI parallel library. You need to compile a parallel executable:
gmake <arch> MP=mpi
For getting dacapo to work in parallel with ASE you need to make a script dacapo.run, which should be executable and in your path. dacapo.run is an example of such a script. This example use the LAM/MPI and the PBS batch system.
If you do not use a batch system you can replace the line:
MACHINEFILE=$PBS_NODEFILE
with a explicit file containing the names of the nodes, one on each line:
MACHINEFILE=/your/machine/file
5 Notes for installation on specific computers
5.1 Opteron (pathscale compiler)
This build assumes you have the Pathscale Fortran compiler, the OpenMPI message passing library and the ACML library installed. Below follows details on how to build the NetCDF and FFTW libraries needed by dacapo.
5.1.1 NetCDF (Network common Data Format)
Download the NetCDF sofware
Build netcdf like this:
tar -zxf netcdf-3.6.1.tar.gz cd netcdf-3.6.1/src ./configure --prefix=/usr FC=pathf90 FCFLAGS=-byteswapio CC=pathcc CXX=pathCC make
and then install in /usr running as root:
make install
See also niflheim note on building a netcdf RPM.
5.1.2 FFTW (Fast Fourier Transform library)
Download version 2.1.5 here Build FFTW like this:
tar -zxf fftw-2.1.5.tar.gz cd fftw-2.1.5 ./configure F77=pathf90 CC=pathcc CFLAGS=-O3 FFLAGS=-O3 make
and then as root:
make install
This will install FFTW in /usr/local.
5.1.3 dacapo
Unpack the dacapo tar-file:
tar -xzf dacapo-2.7.7.tar.gz cd dacapo-2.7.7/src
Set the environment variables:
setenv ACML /opt/acml3.5.0/pathscale64 setenv NETCDF /usr/local setenv FFTW /usr/local setenv MPIDIR /usr
Now compile dacapo:
gmake pathscale gmake pathscale MP=mpi
Ignore warnings then compiling ms.F about type mismatch, this is due to MPI expect pointers to interger arrays for all data.
Now copy the compiled executables to somewhere on your path, eg.
cp pathscale_serial/dacapo.run /usr/local/bin/dacapo_<version>.run cp pathscale_mpi/dacapo.run /usr/local/bin/dacapo_<version>_mpi.run
5.2 OpenMPI
For dacapo to run together with ASE you need a dacapo.run script in your path, that will start the correct dacapo executable. This OpenMPI dacapo.run script assumes you are running OpenMPI using the PBS batch system.
You might have to edit the location and names of the serial and parallel executable in this script, i.e the lines:
# Name of serial and parallel DACAPO executables DACAPOEXE="dacapo_2.7.7.run" DACAPOEXE_PAR="dacapo_2.7.7_mpi.run"
If OpenMPI is not installed under /usr you will also have to change this in the script.
Copy this script to /usr/local/bin/dacapo.run.
5.3 Portland group compiler
Here we will build using the Portland Group fortran compiler and a precompiled BLAS atlas library.
5.3.1 Atlas BLAS
Take a precompiled version (3.6.0) of Atlas that fits you system best. The rest of the installation assumes you have installed ATLAS in /usr/local/lib.
The precompiled version of atlas includes 2 underscore for fortran symbols, so for the rest of the fortran conpilations use the pgf90 flag -Msecond_underscore.
5.3.2 NetCDF (Network common Data Format)
Download the NetCDF sofware
Build netcdf like this:
tar -zxf netcdf-3.6.1.tar.gz cd netcdf-3.6.1/src ./configure --prefix=/usr FC=pgf90 FCFLAGS='-byteswapio -Msecond_underscore' CC=pgcc CXX=pgCC CPPFLAGS='-DNDEBUG -Df2cFortran' make
and then install in /usr running as root:
make install
5.3.3 FFTW (Fast Fourier Transform library)
Download version 2.1.5 here Build FFTW like this:
tar -zxf fftw-2.1.5.tar.gz cd fftw-2.1.5 ./configure --prefix=/usr F77=pgf90 CC=pgcc CFLAGS=-O3 FFLAGS='-O3 -Msecond_underscore' make
and then as root:
make install
This will install FFTW in /usr/local.
5.3.4 LAM-MPI
We will here use the MPI library LAM-MPI
Download the `tarfile <http://www.lam-mpi.org/download/files/lam-7.1.2.tar.gz>_ and build using:
setenv CPPFLAGS '-DNDEBUG -Df2cFortran' setenv F77 pgf90 setenv FC pgf90 setenv FFLAGS '-byteswapio -Msecond_underscore' ./configure --prefix=/usr/local/lam-7.1.2-pgi/ CPPFLAGS='-DNDEBUG -Df2cFortran' F77=pgf90 FC=pgf90 FFLAGS='-byteswapio -Msecond_underscore' gmake gmake install
5.3.5 dacapo
Set the environment variables:
setenv BLASLAPACK '-L/usr/local/lib -llapack -lcblas -lf77blas -latlas' setenv NETCDF /usr setenv FFTW /usr setenv MPIDIR /usr/local/lam-7.1.2-pgi/
and compile like:
gmake pglinux gmake pglinux MP=mpi