Difference between revisions of "Benchmarking: FVCOM"

From Define Wiki
Jump to navigation Jump to search
Line 64: Line 64:
 
<syntaxhighlight>
 
<syntaxhighlight>
 
cd FVCOM/src/FVCOM_source
 
cd FVCOM/src/FVCOM_source
vim make.inc
+
vim make.inc # SEE BELOW FOR CHANGES
 
make -j10
 
make -j10
 
cp fvcom ../../pml-irish-sea/run/bin/
 
cp fvcom ../../pml-irish-sea/run/bin/

Revision as of 09:17, 15 July 2015

Load mvapich and intel compilers

module load intel-mpi/64/4.1.3/049
module load intel/compiler/64/14.0
module load intel/mkl/64/11.1

Compile and Install HDF5 library

wget https://www.hdfgroup.org/HDF5/release/obtainsrc.html
tar xzf hdf5-1.8.15-patch1.tar.gz
cd hdf5-1.8.15-patch1
CC=mpiicc FC=mpiifort ./configure --prefix=/home/k_mouza/hdf5 --enable-fortran --enable-parallel
make -j10
make install

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/k_mouza/hdf5/lib/
export PATH=$PATH:/home/k_mouza/hdf5/bin/

Compile and install netCDF library

wget ftp://ftp.unidata.ucar.edu/pub/netcdf/netcdf-4.3.3.1.tar.gz
tar xzf netcdf-4.3.3.1.tar.gz
cd netcdf-4.3.3.1
CC=mpiicc FC=mpiifort CPPFLAGS=-I/home/k_mouza/hdf5/include/ LDFLAGS=-L/home/k_mouza/hdf5/lib/ ./configure --prefix=/home/k_mouza/netcdf-C-4.3
make -j10
make install

wget ftp://ftp.unidata.ucar.edu/pub/netcdf/netcdf-fortran-4.4.2.tar.gz
tar xzf netcdf-fortran-4.4.2.tar.gz
cd netcdf-fortran-4.4.2
CC=mpiicc FC=mpiifort FCFLAGS=-I/home/k_mouza/hdf5/include/ LDFLAGS=-L/home/k_mouza/hdf5/lib/ CPPFLAGS=-I/home/k_mouza/netcdf-C-4.3/include/ ./configure --prefix=/home/k_mouza/netcdf-fortran-4.4
make -j10
make install

Compiling GOTM

cd FVCOM/src/gotm-4.0.0/src
vim Rules.make # SEE BELOW FOR CHANGES
make

Change these lines in the Rules.make file:

FORTRAN_COMPILER=IFORT
GOTMDIR=/home/k_mouza/PML-Benchmarks/Sample-Code/FVCOM/src/gotm-4.0.0
...
NETCDFINC=/home/k_mouza/netcdf-fortran-4.4/include
NETCDFLIBDIR=/home/k_mouza/netcdf-fortran-4.4/lib
...
NETCDFLIB       = -lnetcdff -lnetcdf
...
LDFLAGS         += -L$(NETCDFLIBDIR) -L/home/k_mouza/netcdf-C-4.3/lib/

Compiling FVCOM

cd FVCOM/src/FVCOM_source
vim make.inc  # SEE BELOW FOR CHANGES
make -j10
cp fvcom ../../pml-irish-sea/run/bin/

Change the following lines in make.inc file:

TOPDIR =  /home/k_mouza/PML-Benchmarks/Sample-Code/FVCOM-f    irst/src/FVCOM_source
...
LIBDIR =  -L$(INSTALLDIR)/lib -L/home/k_mouza/netcdf-C-4.3/lib -L/home/k_mouza/netcdf-fortran-4.4/lib -L/home/k_mouza/netcdf-fortran-4.4/lib
INCDIR =  -I$(INSTALLDIR)/include -I/home/k_mouza/netcdf-fortran-4.4/include/ -I/home/k_mouza/netcdf-C-4.3/include
...
IOLIBS =  -lnetcdff -lnetcdf
IOINCS =  -I/home/k_mouza/netcdf-C-4.3/include
...
GOTMLIB   = -L$(TOPDIR)/../gotm-4.0.0/lib/IFORT/ -lturbulenc    e_prod -lutil_prod -lmeanflow_prod
GOTMINCS  = -I$(TOPDIR)/../gotm-4.0.0/modules/IFORT/
...
CPP      = cpp -I/cm/shared/apps/intel/mpi/4.1.3.049/include64/ -I/    home/k_mouza/netcdf-C-4.3/include -I/home/k_mouza/netcdf-fortran-4.4/include
COMPILER = -DIFORT
FC       = mpiifort
DEBFLGS  =
OPT      = -O3 -no-prec-div -I/cm/shared/apps/intel/mpi/4.1.3.049/i    nclude64 -L/cm/shared/apps/intel/mpi/4.1.3.049/lib64
CLIB     =
CC       = mpiicc