New URL for NEMO forge!

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.
README in NEMO/branches/2019/fix_sette_ticket2239 – NEMO

source: NEMO/branches/2019/fix_sette_ticket2239/README @ 10819

Last change on this file since 10819 was 10819, checked in by mathiot, 5 years ago

update README and add comments in param.cfg (ticket #2239)

File size: 9.0 KB
1usage of SETTE package:
4The sette directory have to be located in the main directory (at the same level as src/ or cfg/).
7 * is a simple wrapper that runs tests on the reference configurations, test cases and generates the report at the end.
8 * is able to take a list of configurations in argument ( -t "CFG1 CFG2 CFG3").
9       - The list of available configurations is available in running ./
10       - The default for sette is to run all of the reference and test configurations.
11 * Users need to set up the param.cfg file correctly and download input files before running the script.
14 * run sette tests on the reference configurations
15 *             : run sette tests on test cases
16 *         : generate a listing on all the revisions available in the validation directory for each configuration.
17 *         : generate a listing of all the available configurations.
19USER SETUP (recommended)
20 * in param.cfg :
21      - variables (COMPILER, NEMO_VALIDATION_REF, NEMO_REV_REF) have to be specified in param.cfg
23           can be exported from your shell startup files. It is advise to setup the default value in your startup file if it doesn't fit your need.
24           If you prefer not doing so, you need to update the default initialisation
25      - variable NEMO_VALIDATION_DIR is sette by default in MAIN_DIR/NEMO_VALIDATION (this is to avoid overwritting results when running sette on different branches).
26      - description of variables listed in param.cfg:
27               COMPILER            : compiler among those available in NEMOGCM/ARCH
28               #
29               # reference version for bit reproducibility results
30               NEMO_VALIDATION_REF : reference directory
31               NEMO_REV_REF        : reference revision
32               #
33               # batch command needed
34               BATCH_CMD           : command for job submission in batch mode
35               BATCH_STAT          : command to check job status
36               BATCH_NAME          : generic sette job name (as it appears with $BATCH_STAT command)
37               #
38               # file storing
39               FORCING_DIR         : directory in which will be found input.tar file (same name in input_CONFIG_NAME.cfg)
40                                     reference configuration input tar file could be found here :
41               NEMO_VALIDATION_DIR : directory in which will be stored restart, run.stat, tracer.stat and ocean.output files for each configuration
43               INPUT_DIR           : directory in which store input files (DO NOT CHANGE IT)
44               #
45               # misc.
46               SVN_CMD             : svn command use to do svn info (default svn). Could be useful if you are using git svn
47                                   : Reference directory for result comparison will be NEMO_VALIDATION_REF/COMPILER/NEMO_REV_REF
48               ADD_NODIGNEDZERO    : set "yes" if you need key_nosignedzero to run nemo
50USAGE of main scripts:
51 *                : it is a simple wrapper to run tests on the reference configurations, test-cases and generate the report at the end.
52          - if no argument is given, sette run all the reference configurations and test cases
53          - if a list of argument is provided ( -t "CFG1 CFG2 CFG3"), sette will only run these configurations.
54             The list of available configurations is available in running ./
55          - user need to set up the param.cfg file correctly and download input file before running the script.
56 *            : it generates the sette report.
57          - if no argument is given, the report will be generated on the last changed revision.
58          - if an argument is given (revision number) the report will be generated for this revision only
59          - if 'old' is given as argument the former behavior is applied (the latest revision is check whatever the current revision
60          - it is possible to retreive all the available revision test using
61          - it is NOT possible to run for a single configuration.
62 * : generate a listing on all the revisions available in the validation directory for each configuration.
63          - no argument needed
64 * : generate a listing of all the available configurations.
65          - no argument needed
68 * compilation issues:
69   - in case of error you can remove you NEW_CONF directory and all files doing :
70     ./makenemo -n MY_CONFIG clean_config
71   - if you want recompile nemo but before you want to clean compiled code do :
72     ./makenemo clean
73   - if you have already compiled you can re-run all and compilation part will be by-passed.
74 * verbose sette output:
75   - if you want a completly verbose makenemo you can uncomment "set -x" in makenemo script
76     and then launch ./ 2>&1 | tee out.sette . This creates out.sette file in ${SETTE_DIR}
791. makenemo -n NEW_CONFIG (see makenemo -h for help) OR
802. makenemo -n NEW_CONFIG -r REF_CONFIG (if it is based on another reference configuration)
813. for creates a new input_NEW_CONFIG.cfg if you need tar file (if you use same tar file of GYRE, ORCA2_LIM or ORCA2_LIM_PISCES you can use it)
824. add a bloc in one of the or script
835. add your configuration to the list in param.cfg
861. add arch-compiler.fcm in NEMOGCM/ARCH directory
872. makenemo -m new_compiler  (see makenemo -h for help)
883. add new batch-file
911. see in SETTE/BATCH_TEMPLATE directory existing examples
922. create you own batch file like: batch-${COMPILER}
93   (note: and will copy it in job_batch_template if you run tests in INTERACT_FLAG="no")
99USER MODIFICATIONS (sequential/parrallel (default), interacive or not (default) and mpi (default) or not )
100 * in and script :
101     - BATCH_COMMAND_PAR is the command for job submission in batch mode parallel (MMIÂ) specified in param.cfg
102     - BATCH_COMMAND_SEQ is the command for job submission in batch mode sequential (NB_PROC = 1)
103                                 the default value is the BATCH_COMMAND_PAR value
104          - INTERACT_FLAG : "yes" if you want to run in interactive mode
105                            "no"  if you want to run in batch mode (default)     
106     - MPIRUN_FLAG   : "yes" if you want to run in parallel (MPI) (default)
107                  "no"  if you want to run in sequential mode (NB_PROC = 1)
109USAGE of internal function/script
110 * makenemo -m : machine (compilator); see ./makenemo -m help (in NEMOGCM/CONFIG directory)
111            -n : config name (in examples config_name_nproci_nprocj), see ./makenemo -n help
112            -r : reference configuration (if you don't give it you have to choise directories to install)
113       add_key : to add list of keys
114       del_key : to del list of keys
115       and for more details and options of makenemo see ./makenemo -h
116 * set_namelist       : to set namelist values
117                          (example : to set 75 time steps for one test : namelist nn_itend 75)
118                          (        : to change cn_icerst_in name : namelist_ice cn_icerst_in  \"test_00101231_restart_icemod\")
119                          (        : to activate control print : namelist ln_ctl false )
120 * : creates execution directory for each test
121                          - for EACH JOB EXECUTION it is needed to set TEST_NAME variable
122                          - TEST_NAME variable gives name to execution directory (created in
123                          - It is mandatory to have different TEST_NAME for each job run if not existing files are re-written (for example namelist)
124 *     : generates the script to be executed
125                          - input arguments are INPUT_FILE_CONFIG_NAME NUMBER_PROC TEST_NAME MPIRUN_FLAG JOB_FILE
126 *         : input arguments are TOTAL_NUMBER_OF_PROCS_used JOB_FILE_NAME INTERACT_FLAG MPIRUN_FLAG
127                        (for example if you run with 4 procs JOB_FILE batch parallel
128                        and only run short test ===> ./fcm_job 4 SHORT no    yes   )
129                          - IMPORTANT control that name of tar file in FORCING directory
130                            is the same of that in input_REF_CONFIG.cfg, if not change one.
131                          - change in "RUN OPA" if [ ${INTERACT_FLAG} == "yes" ] mpirun command line (some examples are already written)
132                          - if INTERACT_FLAG="no" it is needed a batch_file (see below to create a new one)
Note: See TracBrowser for help on using the repository browser.