source: NEMO/branches/2019/fix_sette_ticket2239 @ 10744

Name Size Rev Age Author Last Change
../
BATCH_TEMPLATE 10703   2 years mathiot reverse change in BATCH_TEMPLATE (ticket #2239)
fcm_job.sh 2.1 KB 3635   9 years acc Branch dev_NOC_2012_r3555. #1006. Step 13: Merge in trunk changes between …
input_ORCA2_OFF_PISCES.cfg 34 bytes 9904   3 years acc Minor corrections to sette.sh to recover valid sette tests. Also added …
SETTE.pdf 71.1 KB 3608   9 years acc Branch dev_NOC_2012_r3555. #1006. Step 3: Merge in trunk changes between …
input_AGRIF.cfg 70 bytes 9776   3 years clem change sette accordingly to the previous commit
input_EMPTY.cfg 0 bytes 9522   3 years clem debug test cases
input_ICE_AGRIF.cfg 34 bytes 10517   3 years clem complete previous commit for sette tests
input_ORCA2_ICE_AGRIF.cfg 34 bytes 9663   3 years clem change the names of the configurations (1st step)
input_ORCA2_ICE_OBS.cfg 34 bytes 9663   3 years clem change the names of the configurations (1st step)
input_ORCA2_ICE_PISCES.cfg 35 bytes 9663   3 years clem change the names of the configurations (1st step)
input_SPITZ12.cfg 30 bytes 9553   3 years clem add SPITZ12 into SETTE tests
prepare_job.sh 14.4 KB 9663   3 years clem change the names of the configurations (1st step)
sette_beginner.sh 6.2 KB 9605   3 years clem change some names to comply with the new architecture
sette_rpt.SAS.sh 9.9 KB 9663   3 years clem change the names of the configurations (1st step)
sette_xios.sh 16.2 KB 9605   3 years clem change some names to comply with the new architecture
input_GYRE.cfg 1 bytes 2354   11 years flavoni first draft for SETTE (SET tests for NEMO), a new version of NVTK, see …
all_functions.sh 17.0 KB 10704   2 years mathiot apply Simon suggestion + minor change in report display (ticket #2239)
input_ISOMIP.cfg 0 bytes 9362   3 years mathiot clean input file list for ISOMIP. ISOMIP do not need any input file …
param.cfg 1.2 KB 10732   2 years mathiot restore default parameter (compiler, batch cmd …) (ticket #2239)
prepare_exe_dir.sh 2.0 KB 10698   2 years mathiot check exit code from NEMO (do not copy anything if it failed on exit code …
README 6.3 KB 10732   2 years mathiot restore default parameter (compiler, batch cmd …) (ticket #2239)
sette.sh 1.5 KB 10717   2 years mathiot change related to discussion with Simon (ticket #2239)
sette_list_avail_rev.sh 1.7 KB 10718   2 years mathiot cosmetic changes (ticket #2239)
sette_reference-configurations.sh 59.3 KB 10732   2 years mathiot restore default parameter (compiler, batch cmd …) (ticket #2239)
sette_rpt.sh 18.3 KB 10717   2 years mathiot change related to discussion with Simon (ticket #2239)
sette_test-cases.sh 30.0 KB 10717   2 years mathiot change related to discussion with Simon (ticket #2239)
input_AMM12.cfg 26 bytes 9579   3 years nicolasmartin Updating of the forcing archives names to prepare the release of v4.0
input_SAS.cfg 58 bytes 9579   3 years nicolasmartin Updating of the forcing archives names to prepare the release of v4.0
iodef_sette.xml 9.3 KB 9931   3 years smasson sette: reactivate predefined zoom with xios2, see #2115

README

usage of SETTE package:

PRINCIPAL SCRIPT: sette.sh 
sette.sh is a simple wrapper running test on the reference configuration, test cases and generate the report at the end.
User need to set up the param.cfg file correctly and download input file before running the script.

SECONDARY SCRIPT
sette_reference-configuration.sh, sette_test-cases.sh: run sette tests on the reference configurations and test cases respectively
sette_rpt.sh: generate the sette report. See below in USER MODIFICATIONS the usage of the script
sette_list_avail_rev.sh: generate a listing on all the revision available in the validation directory for each configuration.

VERY IMPORTANT : for a verbose debug do:
./sette.sh 2>&1 | tee out.sette
this create out.sette file in ${SETTE_DIR}

USER MODIFICATIONS
 in sette_cfg-ref.sh and sette_test-cases.sh script :
               OPTIONAL ARGUMENT : compiler among those available in NEMOGCM/ARCH (if nothing will use the one specified in paramd.cfg)
          BATCH_COMMAND_PAR : command for job submission in batch mode parallel (MMIÂ) specified in param.cfg
          BATCH_COMMAND_SEQ : command for job submission in batch mode sequential (NB_PROC = 1)
                                   default value is the BATCH_COMMAND_PAR value
          INTERACT_FLAG : "yes" if you want to run in interactive mode 
                      "no" if you want to run in batch mode
          MPIRUN_FLAG   : "yes" if you want to run in parallel (MPI)
                "no" if you want to run in sequential mode (NB_PROC = 1)

               makenemo -m : machine (compilator); see ./makenemo -m help (in NEMOGCM/CONFIG directory)
                        -n : config name (in examples config_name_nproci_nprocj), see ./makenemo -n help
                        -r : reference configuration (if you don't give it you have to choise directories to install)
                        add_key : to add list of keys
                        del_key : to del list of keys
               and for more details and options of makenemo see ./makenemo -h

          set_namelist : to set namelist values 
         (example : to set 75 time steps for one test : namelist nn_itend 75)
         (        : to change cn_icerst_in name : namelist_ice cn_icerst_in  \"test_00101231_restart_icemod\")
         (      : to activate control print : namelist ln_ctl false )
          prepare_exe_dir.sh creates execution directory for each test
                    : NOTE for EACH JOB EXECUTION it is needed to set TEST_NAME variable
                TEST_NAME variable gives name to execution directory (created in prepare_exe_dir.sh)
                IT is mandatory to have different TEST_NAME for each job run if not existing files are re-written (for example namelist)

               prepare_job.sh generates the script to be executed 
         input: INPUT_FILE_CONFIG_NAME NUMBER_PROC TEST_NAME MPIRUN_FLAG JOB_FILE

               fcm_job.sh needs input: TOTAL_NUMBER_OF_PROCS_used JOB_FILE_NAME INTERACT_FLAG MPIRUN_FLAG 
         (for example if you run with 4 procs JOB_FILE batch parallel 
         and only run short test ===> ./fcm_job 4 SHORT no    yes   )

 in param.cfg :
               
               COMPILER    : compiler among those available in NEMOGCM/ARCH
               FORCING_DIR       : directory in which will be found input.tar file (same name in input_CONFIG_NAME.cfg)
               INPUT_DIR         : directory in which store input files (tar file)
                                     reference configuration input tar file could be found here : https://zenodo.org/record/1472245
               TMPDIR            : temporary directory NEEDED ONLY FOR IBM machines (put EXP00 directory)
          NEMO_VALIDATION_DIR : directory in which create NEMO_VALIDATION tree, and store restart, run.stat, tracer.stat and ocean.output files in
                            tree NEMO_VALIDATION_DIR/WCONFIG_NAME/WCOMPILER_NAME/TEST_NAME/REVISION_NUMBER(or DATE)
               BATCH_CMD           : command for job submission in batch mode
               SVN_CMD             : svn command use to do svn info (default svn). Could be useful if you are using git svn
               NEMO_VALIDATION_REF : reference directory
               NEMO_REV_REF        : reference revision
                                   : Reference directory for result comparison will be NEMO_VALIDATION_REF/COMPILER/NEMO_REV_REF
               ADD_NODIGNEDZERO    : set "yes" if you need key_nosignedzero to run nemo

 in fcm_job.sh :
               IMPORTANT : control that name of tar file in FORCING directory
               is the same of that in input_REF_CONFIG.cfg, if not change one.

               change in "RUN OPA" if [ ${INTERACT_FLAG} == "yes" ] mpirun command line (some examples are already written)
          NOTE: if INTERACT_FLAG="no" it is needed a batch_file (see below to create a new one)

 in sette_rpt.sh : - if no argument are given, the report will be generated on the last changed revision.
                   - if an argument is given (revision number) the report will be generated for this revision
                   - if 'old' is given as argument the former behavior is applied (the latest revision is check whatever the current revision
                   - it is possible to retreive all the available revision test using sette_list_avail_rev.sh

NOTE:
in case of error you can remove you NEW_CONF directory and all files doing :
./makenemo -n MY_CONFIG clean_config

if you want recompile nemo but before you want to clean compiled code do :
./makenemo clean

and if you have already compiled you can re-run all sette.sh and compilation part will be by-passed.

NOTE 2: 
if you want a completly verbose makenemo you can uncomment "set -x" in makenemo script
and then launch ./sette.sh 2>&1 | tee out.sette

TO ADD NEW CONFIGURATION:
1. makenemo -n NEW_CONFIG (see makenemo -h for help) OR
2. makenemo -n NEW_CONFIG -r REF_CONFIG (if it is based on another reference configuration)
3. 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)

TO ADD NEW MACHINE:
1. add arch-compiler.fcm in NEMOGCM/ARCH directory
2. makenemo -m new_compiler  (see makenemo -h for help)

TO ADD NEW BATCH-FILE:
1. see in SETTE/BATCH_TEMPLATE directory existing examples
2. create you own batch file like: batch-${COMPILER}
(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.