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 @ 10708

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

add possibility to generate report on older revision + no more mix of various revision in the report output (ticket #2239)

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