New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
user/ctlod/NVTKpage – NEMO
wiki:user/ctlod/NVTKpage

Version 21 (modified by ctlod, 15 years ago) (diff)

--

Last edited Timestamp?

NEMO Validation Tool Kit (NVTK)

The full documentation is attached at the end of this page.

Context: NVTK can be usefull for 3 purposes

I- the user made modifications in few modules of the NEMO code; he wants to check if these changes fit basic features such as the reproductibility, the restartability, or to check the global memory and/or the time consuming but also if results of the reference configurations ORCA2_LIM, GYRE and GYRE_LOBSTER are not modified.
II- the user has to perform sensitivity experiments (optimisation, physics parameters... ) with one configuration, he will be able to decline as many directories as he needs under ./config/NVTK directory. Each directory can be asociated with a specific namelist named with the directory name as extension (namelist_EXP1 for instance)
III- the user can build a new configuration directory (as for GYRE) based on different components OPA_SRC, TOP_SRC ..etc in using the script use_cfg; it could be usefull for idealised configuration with analytical horizontal/vertical grids and based also on analytical forcing (it doesn't concern the preparation of input data files)

The NEMO Validation Tool Kit (NVTK hereinafter) has been built to allow the user to perform a set of validation tests simply and quickly in using few commands. Here are summarised basic steps the user has to go through:

  1. Download and install the NVTK environment (to be done once)
  2. Compilation, job submission and assessment report

The user has to refer to the associated paper documentation to get details about the general organisation and scripts.

Color(grey, red, '''Note''')?: Here we suppose platforms used are either the NEC-SX8 either the IBM-SP6 from the French computing center IDRIS, else the user will have to adapt some scripts (following instructions in part II-d Add a new target ?) once the NVTK environment will be downloaded. Furthermore it is also assumed that the code management environement is modipsl.

All remarks, suggestions to improve this tool are welcome, you can write them here: http://forge.ipsl.jussieu.fr/nemo/milestone/NEMO%20Validation%20Tool%20Kit

A - Download and Install NVTK under modipsl:


a. Downloading

  1. Download the modipsl architecture under the TEST directory.
    > mkdir TEST
    > cd TEST
    > svn co http://forge.ipsl.jussieu.fr/igcmg/svn/modipsl/trunk modipsl
    
  1. Download NEMO code, NVTK and reference configurations from the NEMO SVN trunk
> cd TEST/modipsl/util
> ./model NEMO_DEV  		(download the trunk of NEMO code as NVTK package )
  1. For MAC users only

In the TEST/modipsl/util/AA_make.gdef:

  • Set the good directory pathnames for NetCDF library through NCDF_INC and NCDF_LIB variables
  • Eventually change the compilator name if other than "xlf"
  • change M_K=make into M_K=gmake

In the ./modipsl/util/w_i_h script, transform the "DSYS="Darwin"" name into "DSYS="osxxlf"" if you are using the xlf compiler.
Under your OS, if you only have the "make" command, you will have to be able to use gmake one in executing following commands:

> which make
> /usr/bin
> cd /usr/bin
> sudo ln -s make gmake

b. Installing
User has to fill following variables in the ins_nvtk.ksh script header under the TEST/modipsl/config/NVTK/INSTALL/ directory:

> cd TEST/modipsl/config/NVTK/INSTALL
> vi ins_nvtk.ksh

##########################################################
##### Begin Users modifications
##########################################################
# OUTDIR : working directory from which jobs will be launched & results stored
# INPUTD : directory where to get ORCA2_LIM_nemo_v3.tar (once downloaded here: http://dodsp.idris.fr/reee512/NEMO/)
# REFDAT : directory where to get results from reference tags
# MAIL : give your e-mail
# UAGRIF : one of the standard configurations is based on AGRIF yes/no
##########################################################
OUTDIR=
INPUTD=
REFDAT=
MAIL="your_email@xxxxxxx"
UAGRIF=no
##########################################################
##### End Users modifications
##########################################################

  1. Once the ins_nvtk.ksh header is changed, check you are under TEST/modipsl/config/NVTK/INSTALL directory and launch the script.
> ./ins_nvtk.ksh

B - Compilation, Jobs submission and assessment report:

This could be performed in using just one command as just below or in managing each step separately “by hand” (see documentation).

  1. store modified modules (to test) under TEST/modipsl/config/NVTK/2TEST
  1. set the following 7 variables in the TEST/modipsl/config/NVTK/Makefile file:
> cd TEST/modipsl/config/NVTK
> vi Makefile
  • NAM_V: name of the experiment (associated to the same directory name) the default one is 2TEST
  • LISTE_CONF: ORCA2_LIM or/and GYRE or/and GYRE_LOBSTER: name of standard configurations to be tested with modified routines under 2TEST directory
  • JOBS_2LAUN: nojob or all or long or short or gtime: choose the job type to launch
  • BUILD_MAKE: mon or/and mpi: compilation type to perform:mono-processor (mon) and/or multi-processors MPI (mpi)
  • MPI_I: number of processors along i- direction
  • MPI_J: number of processors along j- direction
  • MPIIJ: total number of processors
  • MAK_TIME: timing or notiming to perform or not a timing check
  • USE_IOMPUT: use or not the new I/O interface
  • USE_IOSERVER: use the I/O interface using the server possibility
  • NB_PROCS_IOSERVER : number of processors dedicated to the I/O server
  • MAK_MEMO: memo or nomemo to perform or not a memory check
  • REF_TAGV: (optional) tag/experience name to which compare results
  1. launch the whole process (compilation, jobs submission & assessment report) using gmake command from TEST/modipsl/config/NVTK
> gmake

Note: since this environment has been built to use UNIX multi-process possibilities, it is possible to speed-up the compilation in using the gmake option -j :“gmake -j number_of_configurations_to_compile”

C - NVTK package alone

If you just want to donwnload NVTK alone, use the following svn command:

> svn co --username nemo_user http://forge.ipsl.jussieu.fr/nemo/svn/trunk/NVTK

D - Paper documentation

Note: The paper documentation is not up-to-date yet with the last NEMO tag nemo_v3_2

Attachments (1)

Download all attachments as: .zip