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

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

Last change on this file since 10732 was 10732, checked in by mathiot, 4 years ago

restore default parameter (compiler, batch cmd ...) (ticket #2239)

File size: 6.3 KB
Line 
1usage of SETTE package:
2
3PRINCIPAL SCRIPT: sette.sh
4sette.sh is a simple wrapper running test on the reference configuration, test cases and generate the report at the end.
5User need to set up the param.cfg file correctly and download input file before running the script.
6
7SECONDARY SCRIPT
8sette_reference-configuration.sh, sette_test-cases.sh: run sette tests on the reference configurations and test cases respectively
9sette_rpt.sh: generate the sette report. See below in USER MODIFICATIONS the usage of the script
10sette_list_avail_rev.sh: generate a listing on all the revision available in the validation directory for each configuration.
11
12VERY IMPORTANT : for a verbose debug do:
13./sette.sh 2>&1 | tee out.sette
14this create out.sette file in ${SETTE_DIR}
15
16USER MODIFICATIONS
17 in sette_cfg-ref.sh and sette_test-cases.sh script :
18               OPTIONAL ARGUMENT : compiler among those available in NEMOGCM/ARCH (if nothing will use the one specified in paramd.cfg)
19          BATCH_COMMAND_PAR : command for job submission in batch mode parallel (MMIÂ) specified in param.cfg
20          BATCH_COMMAND_SEQ : command for job submission in batch mode sequential (NB_PROC = 1)
21                                   default value is the BATCH_COMMAND_PAR value
22          INTERACT_FLAG : "yes" if you want to run in interactive mode
23                      "no" if you want to run in batch mode
24          MPIRUN_FLAG   : "yes" if you want to run in parallel (MPI)
25                "no" if you want to run in sequential mode (NB_PROC = 1)
26
27               makenemo -m : machine (compilator); see ./makenemo -m help (in NEMOGCM/CONFIG directory)
28                        -n : config name (in examples config_name_nproci_nprocj), see ./makenemo -n help
29                        -r : reference configuration (if you don't give it you have to choise directories to install)
30                        add_key : to add list of keys
31                        del_key : to del list of keys
32               and for more details and options of makenemo see ./makenemo -h
33
34          set_namelist : to set namelist values
35         (example : to set 75 time steps for one test : namelist nn_itend 75)
36         (        : to change cn_icerst_in name : namelist_ice cn_icerst_in  \"test_00101231_restart_icemod\")
37         (      : to activate control print : namelist ln_ctl false )
38          prepare_exe_dir.sh creates execution directory for each test
39                    : NOTE for EACH JOB EXECUTION it is needed to set TEST_NAME variable
40                TEST_NAME variable gives name to execution directory (created in prepare_exe_dir.sh)
41                IT is mandatory to have different TEST_NAME for each job run if not existing files are re-written (for example namelist)
42
43               prepare_job.sh generates the script to be executed
44         input: INPUT_FILE_CONFIG_NAME NUMBER_PROC TEST_NAME MPIRUN_FLAG JOB_FILE
45
46               fcm_job.sh needs input: TOTAL_NUMBER_OF_PROCS_used JOB_FILE_NAME INTERACT_FLAG MPIRUN_FLAG
47         (for example if you run with 4 procs JOB_FILE batch parallel
48         and only run short test ===> ./fcm_job 4 SHORT no    yes   )
49
50 in param.cfg :
51               
52               COMPILER    : compiler among those available in NEMOGCM/ARCH
53               FORCING_DIR       : directory in which will be found input.tar file (same name in input_CONFIG_NAME.cfg)
54               INPUT_DIR         : directory in which store input files (tar file)
55                                     reference configuration input tar file could be found here : https://zenodo.org/record/1472245
56               TMPDIR            : temporary directory NEEDED ONLY FOR IBM machines (put EXP00 directory)
57          NEMO_VALIDATION_DIR : directory in which create NEMO_VALIDATION tree, and store restart, run.stat, tracer.stat and ocean.output files in
58                            tree NEMO_VALIDATION_DIR/WCONFIG_NAME/WCOMPILER_NAME/TEST_NAME/REVISION_NUMBER(or DATE)
59               BATCH_CMD           : command for job submission in batch mode
60               SVN_CMD             : svn command use to do svn info (default svn). Could be useful if you are using git svn
61               NEMO_VALIDATION_REF : reference directory
62               NEMO_REV_REF        : reference revision
63                                   : Reference directory for result comparison will be NEMO_VALIDATION_REF/COMPILER/NEMO_REV_REF
64               ADD_NODIGNEDZERO    : set "yes" if you need key_nosignedzero to run nemo
65
66 in fcm_job.sh :
67               IMPORTANT : control that name of tar file in FORCING directory
68               is the same of that in input_REF_CONFIG.cfg, if not change one.
69
70               change in "RUN OPA" if [ ${INTERACT_FLAG} == "yes" ] mpirun command line (some examples are already written)
71          NOTE: if INTERACT_FLAG="no" it is needed a batch_file (see below to create a new one)
72
73 in sette_rpt.sh : - if no argument are given, the report will be generated on the last changed revision.
74                   - if an argument is given (revision number) the report will be generated for this revision
75                   - if 'old' is given as argument the former behavior is applied (the latest revision is check whatever the current revision
76                   - it is possible to retreive all the available revision test using sette_list_avail_rev.sh
77
78NOTE:
79in case of error you can remove you NEW_CONF directory and all files doing :
80./makenemo -n MY_CONFIG clean_config
81
82if you want recompile nemo but before you want to clean compiled code do :
83./makenemo clean
84
85and if you have already compiled you can re-run all sette.sh and compilation part will be by-passed.
86
87NOTE 2:
88if you want a completly verbose makenemo you can uncomment "set -x" in makenemo script
89and then launch ./sette.sh 2>&1 | tee out.sette
90
91TO ADD NEW CONFIGURATION:
921. makenemo -n NEW_CONFIG (see makenemo -h for help) OR
932. makenemo -n NEW_CONFIG -r REF_CONFIG (if it is based on another reference configuration)
943. for fcm_job.sh 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)
95
96TO ADD NEW MACHINE:
971. add arch-compiler.fcm in NEMOGCM/ARCH directory
982. makenemo -m new_compiler  (see makenemo -h for help)
99
100TO ADD NEW BATCH-FILE:
1011. see in SETTE/BATCH_TEMPLATE directory existing examples
1022. create you own batch file like: batch-${COMPILER}
103(note: sette_test-cases.sh and sette_cfg-ref.sh will copy it in job_batch_template if you run tests in INTERACT_FLAG="no")
Note: See TracBrowser for help on using the repository browser.