Change the shell
The login shell on HA8000@hakozaki is tcsh. First change it to bash:
$ bash
Compile METIS
Edit the makefile as follows:
AR = xiar rv
CC = icc
OPTFLAGS = -O3
CC = icc
OPTFLAGS = -O3
And then, compile as follows:
$ make
Compile FVCOM
Edit the setting for netcdf and compilation in makefile. netcdf should be installed before FVCOM compilation. The setting for MPI Intel compiler should be as follows:
CPP = /usr/bin/cpp
CPPFLAGS = $(DEF_FLAGS) -DINTEL
FC = mpiifort
DEBFLAGS =
OPT = -O3 -ipo -no-prec-div
CLIB =
CPPFLAGS = $(DEF_FLAGS) -DINTEL
FC = mpiifort
DEBFLAGS =
OPT = -O3 -ipo -no-prec-div
CLIB =
makedepf90 should be installed and then makedepends should be created. mpi.h should be deleted if existed.
$ rm makedepends
$ rm mpi.h
$ touch makedepends
$ make depend
$ rm mpi.h
$ touch makedepends
$ make depend
Now you can compile:
$ make
After creating an executable file of fvcom, copy it onto ./run/:
$ cp fvcom ../run/
Edit the bat script run_mpi.sh for execution. Following is an example for debugging:
#!/bin/bash
#@$-q ha-dbg
#@$-N 32
#@$-J T24
#@$-lE 1:00:00
cd ~/FVCOM2.6.1/run
mpirun -machinefile $PBS_NODEFILE -n $PBS_NP ./fvcom tst_run
date
#@$-q ha-dbg
#@$-N 32
#@$-J T24
#@$-lE 1:00:00
cd ~/FVCOM2.6.1/run
mpirun -machinefile $PBS_NODEFILE -n $PBS_NP ./fvcom tst_run
date
Execution
Now you can execute on bat mode:
$ qsub run_mpi.sh
You can check the job status using qstat:
$ qstat ### check the status of your jobs
$ qstat -b ### check the status of all of the jobs
$ qstat -b ### check the status of all of the jobs
Pingback: Thesis Talk: Internet Finds for Compiling FVCOM 3.2.X – Noypimaps