Difference between revisions of "Benchmarking: FVCOM"
Jump to navigation
Jump to search
| (2 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
| − | == Load | + | == Load Intel compilers and Intel-MPI == |
<syntaxhighlight> | <syntaxhighlight> | ||
| Line 71: | Line 71: | ||
Change the following lines in make.inc file: | Change the following lines in make.inc file: | ||
<syntaxhighlight> | <syntaxhighlight> | ||
| − | TOPDIR = /home/k_mouza/PML-Benchmarks/Sample-Code/FVCOM | + | TOPDIR = /home/k_mouza/PML-Benchmarks/Sample-Code/FVCOM/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 | 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 | ||
| Line 79: | Line 79: | ||
IOINCS = -I/home/k_mouza/netcdf-C-4.3/include | IOINCS = -I/home/k_mouza/netcdf-C-4.3/include | ||
... | ... | ||
| − | GOTMLIB = -L$(TOPDIR)/../gotm-4.0.0/lib/IFORT/ - | + | GOTMLIB = -L$(TOPDIR)/../gotm-4.0.0/lib/IFORT/ -lturbulence_prod -lutil_prod -lmeanflow_prod |
GOTMINCS = -I$(TOPDIR)/../gotm-4.0.0/modules/IFORT/ | GOTMINCS = -I$(TOPDIR)/../gotm-4.0.0/modules/IFORT/ | ||
... | ... | ||
| − | CPP = cpp -I/cm/shared/apps/intel/mpi/4.1.3.049/include64/ -I/ | + | 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 | COMPILER = -DIFORT | ||
FC = mpiifort | FC = mpiifort | ||
DEBFLGS = | DEBFLGS = | ||
| − | OPT = -O3 -no-prec-div -I/cm/shared/apps/intel/mpi/4.1.3.049/ | + | OPT = -O3 -no-prec-div -I/cm/shared/apps/intel/mpi/4.1.3.049/include64 -L/cm/shared/apps/intel/mpi/4.1.3.049/lib64 |
CLIB = | CLIB = | ||
CC = mpiicc | CC = mpiicc | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| + | |||
| + | == Running FVCOM == | ||
Latest revision as of 10:24, 27 July 2015
Load Intel compilers and Intel-MPI
module load intel-mpi/64/4.1.3/049
module load intel/compiler/64/14.0
module load intel/mkl/64/11.1Compile 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 installCompiling GOTM
cd FVCOM/src/gotm-4.0.0/src
vim Rules.make # SEE BELOW FOR CHANGES
makeChange 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/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/ -lturbulence_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/include64 -L/cm/shared/apps/intel/mpi/4.1.3.049/lib64
CLIB =
CC = mpiicc