MPIOM (incl. HAMOCC) quick start recipe
Please find below a recipe on how to get started quickly with MPIOM within the HLRE environment of DKRZ
http://www.dkrz.de/dkrz/services/zugang. This environment consists of a server named /cross/ (8-way Intel Itanium (IA64)), where the model is compiled, and a NEC-SX6 high performance computer named /hurrikan/, where the simulations are carried out.
The recipe explains how to compile, install and integrate the model.
The sample simulation consists in a 100 year integration of the ocean model on /hurrikan/. The model is used in the standard configuration at horizontal resolution GR30 (appr. 3 deg.) and vertical resolution L40. MPIOM can be either run stand alone or coupled to HAMOCC. The resulting data files are transferred to the archive.
For questions on the recipe contact
Helmuth Haak.
--------------------------------------------------------------------------------------------------------
MPIOM (incl. HAMOCC)
In order to create a Makefile for MPIOM type:
> ./configure
Note: To create a Makefile using the cross-compiler for the DKRZ SX-6 type:
> ./configure --host=sx6
In order to create a Makefile for MPIOM+HAMOCC type:
> ./configure --enable-HAMOCC=yes
Note: MPI can be disabled in order to create pure serial code by typing:
> configure --enable-MPI=no
To compile just type:
> make
RUNNING
To run mpi-om change to mpiom_xxx/run and edit the file prepare_run_mpiom_omip.
The user needs to change EXPNO and the pathes to the WRKDIR, ARCHIVE, etc.
The user can change cpu's and parallelization strategy
e.g for using MPI parallelization on 4 cpus:
> ncpus=4
> nprocx=1
> nprocy=4
> MPIOM_THREADS=1
e.g. for using OpenMP parallelization on 4 cpus:
> ncpus=1
> nprocx=1
> nprocy=1
> MPIOM_THREADS=4
It is also possible to combine both strategies.
Note: The variable OMP_NUM_THREADS is now ignored by MPIOM, please use MPIOM_THREADS instead.
Edit experiment specific items like qsub options, cpu hours, cpu numbers,
etc and run the prepare script. It will create some directories and an
example jobsript run_mpiom in $WRKDIR.
Forcing fields (omip 365 days) and initial data (restart file after 200
years integration) for the GR30 setup (3 deg.) can be found in the /pool directory at DKRZ.
Software to create input data from other atmospheric forcing data (e.g. NCAR NCEPRe analysis) is available on request.
Running MPIOM on other platforms
Both MPIOM and HAMOCC use MPI library for internal communication (e.g.
http://www-unix.mcs.anl.gov/mpi/mpich2) and are partly doing IO for the
initial, restart and output files based on UCAR's netCDF (see
http://www.unidata.ucar.edu/packages/netcdf).
The user has to edit config/mh-xxx for the machine dependent settings,
e.g. the user has to set the variables NETCDFROOT and MPIROOT.
Configuration files for Linux, Solaris and the DKRZ's sx are included.
Note: In case MPI2 is not available cpp keyword <use_com_MPI1> can be used to force MPI1.
ADDITIONAL INFORMATION
Bug reports/info/comments to:
Helmuth Haak
VISUALISATION
Cdo package (
http://code.zmaw.de/projects/cdo) can be used to create
NetCDF files outouf MPIOM EXTRA Files; grid description files for
scalar and vector points can be found in the pool directory, e.g.
> cdo -t mpiom1 -f nc -setgrid,GR30s.nc \ -selindexbox,2,121,1,101-setgrid,r122x101 file.ext file.nc
> '-t mpiom1'
usues a predefined table to create variable names ouf of codenumber
> '-f nc'
set output format to netCDF
> '-setgrid,GR30s.nc'
grid description file for scalar points
> '-selindexbox,2,121,1,101'
removes cyclic boundaries from the output file
> '-setgrid,r122x101'
tells cdo the number of lat and lons of the input grid
Note that for some plotting packages (e.g. ferret) vector properties
needs to be rotated back onto a N/S/E/W grid. A GMT based plotting utility
is available on request.
Back to startpage


