Changeset 14981
- Timestamp:
- 2021-06-11T15:47:19+02:00 (3 years ago)
- Location:
- utils/CI/sette
- Files:
-
- 19 edited
- 4 copied
Legend:
- Unmodified
- Added
- Removed
-
utils/CI/sette/all_functions.sh
r13795 r14981 91 91 usage=" if value is a string ths is neede syntax : ./set_namelist namelist_name var_name \"new_value\" " 92 92 93 # sync MYSRC files (input CFG and CFG_ST )93 # sync MYSRC files (input CFG and CFG_STg; where g is an optional, single, alphanumeric character) 94 94 sync_config() { 95 95 if [ ${SYNC_CONFIGS} == "yes" ]; then … … 144 144 } 145 145 146 # clean _ST config (input CFG CFG_STTYPE (test or ref))146 # clean _STg config (input CFG CFG_STg TYPE (test or ref)) 147 147 clean_config() { 148 148 if [ ${CLEAN_CONFIGS} == "yes" ]; then … … 184 184 fi 185 185 [ `${SVN_CMD} status -q ${SETTE_DIR}/../{cfgs,tests,src} | wc -l` -ge 1 ] && REVISION_NB=${REVISION_NB}+ 186 NEMO_VALID=${NEMO_VALIDATION_DIR}/W${NEW_CONF}/${CMP_NAM}/${REVISION_NB}/${TEST_NAME} 186 # remove last _ST followed by zero or more alphanumeric characters 187 NEW_CONF1=$( echo $NEW_CONF | sed -e 's/_ST\([0-9a-zA-Z]*\)$//' ) 188 export NEMO_VALID=${NEMO_VALIDATION_DIR}/${CMP_NAM}/${REVISION_NB}/${NEW_CONF1}/${TEST_NAME} 187 189 } 188 190 … … 198 200 } 199 201 200 # function to set namelists parameters 202 # set_namelist_opt: function to set namelists parameters based on a yes/no selection 203 # Mandatory arguments are, in order: 204 # 1. namelist to be edited 205 # 2. variable to be set 206 # 3. yes or no switch setting 207 # 4. value to set variable to if switch is yes 208 # 5. value to set variable to if switch is no 209 set_namelist_opt () { 210 minargcount=5 211 if [ ${#} -lt ${minargcount} ] 212 then 213 echo "not enough arguments for set_namelist_opt" >> ${SETTE_DIR}/output.sette 214 echo "Usage: set_namelist_opt namelist varname yes_or_no value_if_yes value_if_no" >> ${SETTE_DIR}/output.sette 215 exit 1 216 fi 217 unset minargcount 218 if [ $3 != 'yes' ] && [ $3 != 'no' ] ; then 219 echo 'option switch must be "yes" or "no"' >> ${SETTE_DIR}/output.sette 220 echo "${usage}" >> ${SETTE_DIR}/output.sette 221 exit 1 222 fi 223 if [ $3 == 'yes' ] ; then 224 set_namelist $1 $2 $4 225 else 226 set_namelist $1 $2 $5 227 fi 228 } 229 230 # set_namelist: function to set namelists parameters 201 231 set_namelist () { 202 232 minargcount=3 … … 351 381 [ -f ${EXE_DIR}/run.stat ] && cp ${EXE_DIR}/*run.stat ${NEMO_VALIDATION_DIR}/. 352 382 [ -f ${EXE_DIR}/output.namelist.dyn ] && cp ${EXE_DIR}/*output.nam* ${NEMO_VALIDATION_DIR}/. 383 [ -f ${EXE_DIR}/namelist_cfg ] && cp ${EXE_DIR}/*nam*_cfg ${NEMO_VALIDATION_DIR}/. 353 384 [ -f ${EXE_DIR}/tracer.stat ] && cp ${EXE_DIR}/*tracer.stat ${NEMO_VALIDATION_DIR}/. 354 385 [ -f ${EXE_DIR}/timing.output ] && cp ${EXE_DIR}/*timing.output ${NEMO_VALIDATION_DIR}/. 386 [ -f ${EXE_DIR}/sette_config ] && cp ${EXE_DIR}/sette_config ${NEMO_VALIDATION_DIR}/. 355 387 356 388 if [ -n "$(ls ${NEMO_VALIDATION_DIR}/*run*)" ] ; then … … 448 480 exit 1 449 481 fi 450 if [ $2 != "true" ] && [ $2 != "false" ] 482 inarg=$2 483 if [ ${inarg} == "yes" ] ; then inarg="true" ; fi 484 if [ ${inarg} == "no" ] ; then inarg="false" ; fi 485 if [ ${inarg} != "true" ] && [ ${inarg} != "false" ] 451 486 then 452 487 echo "unrecognised argument for set_xio_using_server" 453 488 echo "${usage2}" 454 echo $ 2489 echo ${inarg} 455 490 exit 1 456 491 fi … … 474 509 exit 1 475 510 fi 476 if [ $ 2== "false" ]511 if [ ${inarg} == "false" ] 477 512 then 478 513 sed -e "/using_server/s:true:false:" ${EXE_DIR}/$1 > ${EXE_DIR}/$1.tmp -
utils/CI/sette/input_AGRIF.cfg
r13292 r14981 1 ORCA2_ICE_v4. x.tar.gz ORCA2_ICE_v4.x2 AGRIF_DEMO_v4. x.tar.gz AGRIF_DEMO_v4.x1 ORCA2_ICE_v4.2_RC.tar.gz ORCA2_ICE_v4.2_RC 2 AGRIF_DEMO_v4.2_RC.tar.gz AGRIF_DEMO_v4.2_RC -
utils/CI/sette/input_AMM12.cfg
r9579 r14981 1 AMM12_v4. 0.tar AMM12_v4.01 AMM12_v4.2_RC.tar.gz AMM12_v4.2_RC -
utils/CI/sette/input_ICE_AGRIF.cfg
r13292 r14981 1 ICE_AGRIF_v4. x.tar.gz ICE_AGRIF_v4.x1 ICE_AGRIF_v4.2_RC.tar.gz ICE_AGRIF_v4.2_RC -
utils/CI/sette/input_ISOMIP+.cfg
r13382 r14981 1 ISOMIP+_v4. 0.tar ISOMIP+_v4.01 ISOMIP+_v4.2_RC.tar.gz ISOMIP+_v4.2_RC -
utils/CI/sette/input_ORCA2_ICE_OBS.cfg
r13292 r14981 1 ORCA2_ICE_v4. x.tar.gz ORCA2_ICE_v4.x1 ORCA2_ICE_v4.2_RC.tar.gz ORCA2_ICE_v4.2_RC -
utils/CI/sette/input_ORCA2_ICE_PISCES.cfg
r13292 r14981 1 ORCA2_ICE_v4. x.tar.gz ORCA2_ICE_v4.x1 ORCA2_ICE_v4.2_RC.tar.gz ORCA2_ICE_v4.2_RC -
utils/CI/sette/input_ORCA2_OFF_PISCES.cfg
r13292 r14981 1 ORCA2_OFF_v4. x.tar.gz ORCA2_OFF_v4.x1 ORCA2_OFF_v4.2_RC.tar.gz ORCA2_OFF_v4.2_RC -
utils/CI/sette/input_SAS.cfg
r13292 r14981 1 ORCA2_ICE_v4. x.tar.gz ORCA2_ICE_v4.x2 SAS_v4. x.tar.gz SAS_v4.x1 ORCA2_ICE_v4.2_RC.tar.gz ORCA2_ICE_v4.2_RC 2 SAS_v4.2_RC.tar.gz SAS_v4.2_RC -
utils/CI/sette/input_WED025.cfg
r13382 r14981 1 WED025_v4.2 .tar WED025_v4.21 WED025_v4.2_RC.tar.gz WED025_v4.2_RC -
utils/CI/sette/param.cfg
r14832 r14981 8 8 # ------------------------------------------------------------------------------------------ 9 9 # IMPORTANT: 10 # variables (COMPILER, USING_XIOS, USING_MPMD, USING_LOOP_FUSION, BATCH_CMD, BATCH_STAT, BATCH_NAME, FORCING_DIR, SVN_CMD, ADD_NOSIGNEDZERO)10 # variables (COMPILER, BATCH_CMD, BATCH_STAT, BATCH_NAME, FORCING_DIR, SVN_CMD) 11 11 # can be exported from your shell startup files. 12 12 # If it is the case, nothing to do … … 40 40 # ------------------------------------------------------------------------------------------ 41 41 # 42 # RUN set up 43 # USING_XIOS : flag to control the activation of key_xios 44 # "yes" to compile using key_xios and link to the external XIOS library 45 # "no" to compile without key_xios and link to the old IOIPSL library 46 USING_XIOS=${SETTE_XIOS:-"yes"} 47 # USING_MPMD : flag to control the use of stand-alone IO servers 48 # requires USING_XIOS="yes" 49 # "yes" to run in MPMD (detached) mode with stand-alone IO servers 50 # "no" to run in SPMD (attached) mode without separate IO servers 51 # MPMD 52 USING_MPMD=${SETTE_MPMD:-"no"} 53 # USING_LOOP_FUSION : flag to control the activation of key_loop_fusion 54 # "yes" to use the loop fusion adv routines when halo = 2 55 # "no" to use standard adv routines 56 USING_LOOP_FUSION=${SETTE_LOOP_FUSION:-"no"} 57 # generique batch scrip prefix name if MPMD set to true/false 42 # RUN setup 43 # generic batch scrip prefix name if MPMD set to true/false 58 44 JOB_PREFIX_MPMD=${SETTE_JOB_PREFIX_MPMD:-batch-mpmd} 59 45 JOB_PREFIX_NOMPMD=${SETTE_JOB_PREFIX_NOMPMD:-batch} 60 46 # ------------------------------------------------------------------------------------------ 61 47 # 62 # MISCEL ENIOUS48 # MISCELLANEOUS 63 49 # command for svn (some people use git svn) 64 50 # used in sette_rpt and in all_function to display revision and build correct repository name 65 51 SVN_CMD=${SETTE_SVN_CMD:-svn} 66 # add key key_nosignedzero at the compilation step67 ADD_NOSIGNEDZERO=${SETTE_ADD_NOSIGNEDZERO:-"yes"}68 52 # only for IBM 69 53 #TMPDIR=${CONFIG_DIR}/${NEW_CONF}/EXP00 … … 83 67 # 84 68 # TYPES OF TESTS TO PERFORM 85 export DO_RESTART=1 # The restart test is always needed because this compiles the code 69 # Note an attempt will be made to compile each configuration even if none of these tests are activated 70 export DO_RESTART=0 86 71 export DO_REPRO=0 87 72 export DO_CORRUPT=0 88 73 export DO_PHYOPTS=0 89 74 TEST_TYPES=(${SETTE_TEST_TYPES[@]:-"RESTART REPRO PHYOPTS CORRUPT"}) 90 if [[ ! ${TEST_TYPES[*]} =~ .*RESTART.* ]]; then export TEST_TYPES=("RESTART" ${TEST_TYPES[@]});fi75 if [[ ${TEST_TYPES[*]} =~ .*RESTART.* ]]; then export DO_RESTART=1 ;fi 91 76 if [[ ${TEST_TYPES[*]} =~ .*REPRO.* ]]; then export DO_REPRO=1 ;fi 92 77 if [[ ${TEST_TYPES[*]} =~ .*CORRUPT.* ]]; then export DO_CORRUPT=1 ;fi -
utils/CI/sette/prepare_exe_dir.sh
r11161 r14981 75 75 #cat ${SETTE_DIR}/iodef_sette.xml | sed -e"s;DEF_SHARED;${CONFIG_DIR0}/SHARED;" > ${EXE_DIR}/iodef.xml 76 76 cd ${EXE_DIR} 77 # 78 # Add summary of the sette.sh set-up used and the current list of keys added or deleted 79 COMP_KEYS="`cat ${CONFIG_DIR}/${NEW_CONF}/cpp_${NEW_CONF}.fcm | sed -e 's/.*fppkeys *//'`" 80 echo "Summary of sette environment" > ./sette_config 81 echo "----------------------------" >> ./sette_config 82 echo "requested by the command : "$cmd $cmdargs >> ./sette_config 83 printf "%-33s : %s\n" USING_TIMING $USING_TIMING >> ./sette_config 84 printf "%-33s : %s\n" USING_ICEBERGS $USING_ICEBERGS >> ./sette_config 85 printf "%-33s : %s\n" USING_EXTRA_HALO $USING_EXTRA_HALO >> ./sette_config 86 printf "%-33s : %s\n" USING_TILING $USING_TILING >> ./sette_config 87 printf "%-33s : %s\n" USING_COLLECTIVES $USING_COLLECTIVES >> ./sette_config 88 printf "%-33s : %s\n" USING_QCO $USING_QCO >> ./sette_config 89 printf "%-33s : %s\n" USING_LOOP_FUSION $USING_LOOP_FUSION >> ./sette_config 90 printf "%-33s : %s\n" USING_XIOS $USING_XIOS >> ./sette_config 91 printf "%-33s : %s\n" USING_MPMD $USING_MPMD >> ./sette_config 92 printf "%-33s : %s\n" USING_RK3 $USING_RK3 >> ./sette_config 93 printf "%-33s : %s\n" "Common compile keys added" "$ADD_KEYS" >> ./sette_config 94 printf "%-33s : %s\n" "Common compile keys deleted" "$DEL_KEYS" >> ./sette_config 95 printf "%-33s : %s\n" "Compile keys actually used" "${COMP_KEYS}" >> ./sette_config 77 96 78 97 # Remove previously generated output files used for test evaluation -
utils/CI/sette/prepare_job.sh
r14825 r14981 200 200 ;; 201 201 X86_ARCHER2*) 202 MK_TEMPLATE=$( /work/n01/shared/acc/mkslurm_settejob -S $NXIO_PROC -s 8 -m 4 -C $NB_PROC -g 2 -a n01-CLASS -j sette_job -t 20:00 > ${SETTE_DIR}/job_batch_template )202 MK_TEMPLATE=$( /work/n01/shared/acc/mkslurm_settejob_4.2 -S $NXIO_PROC -s 8 -m 4 -C $NB_PROC -g 2 -a n01-CLASS -j sette_job -t 20:00 > ${SETTE_DIR}/job_batch_template ) 203 203 ;; 204 204 XC40_METO*) #Setup for Met Office XC40 with any compiler -
utils/CI/sette/sette.sh
r14826 r14981 1 1 #!/bin/sh 2 2 # initialise user dependent variable 3 export cmd=$0 ; export cmdargs=$@ 3 4 SETTE_DIR=$(cd $(dirname "$0"); pwd) 4 5 MAIN_DIR=$(dirname $SETTE_DIR) 5 export SETTE_TIMING='no' 6 export NOT_USING_QCO='no' 7 export USING_RK3='no' 8 export USING_ICEBERGS='yes' 9 export USING_EXTRA_HALO='no' 10 export USING_TILING='no' 6 export CMPL_CORES=8 # Number of threads to use for compiling 7 export SETTE_STG="_ST" # Base suffix to append to configuration name 8 dry_run=0 9 NO_REPORT=0 10 # 11 # controls for some common namelist, run-time options: 12 # 13 export USING_TIMING='yes' # Default: yes => set ln_timing=.true. ; use -T to disable 14 export USING_ICEBERGS='yes' # Default: yes => set ln_icebergs=.true. ; use -i to disable 15 export USING_EXTRA_HALO='yes' # Default: yes => set nn_hls=2 ; use -e to set nn_hls=1 16 export USING_COLLECTIVES='yes' # Default: yes => set nn_comm=2 ; use -C to set nn_comm=1 17 export USING_TILING='yes' # Default: yes => set ln_tile=.true. ; use -t to disable 18 # Note: yes also ensures nn_hls=2 but -t will not alter nn_hls 19 # 20 # controls for some common compile-time keys: 21 # 22 export USING_QCO='yes' # Default: yes => add key_qco ; use -q to delete key_qco 23 export USING_RK3='no' # Default: yes => add key_RK3 & key_qco ; use -Q to delete key_RK3 24 export USING_LOOP_FUSION='yes' # Default: yes => add key_loop_fusion ; use -F to delete key_loop_fusion 25 export USING_XIOS='yes' # Default: yes => add key_xios ; use -X to delete key_xios 26 # Note: changing USING_XIOS may require a change in arch file 27 # 28 # controls for some common batch-script, run-time options: 29 # 30 export USING_MPMD='yes' # Default: yes => run with detached XIOS servers ; use -A to run in attached (SPMD) mode 31 # Note: yes also ensures key_xios but -A will not remove it 32 export SETTE_SUB_VAL="MAIN" # Default subdirectory below NEMO_VALIDATION_DIR 11 33 12 34 # Parse command-line arguments 13 35 if [ $# -gt 0 ]; then 14 while getopts n:x: cshTqQteioption; do36 while getopts n:x:v:g:cdrshTqQteiACFX option; do 15 37 case $option in 16 38 c) export SETTE_CLEAN_CONFIGS='yes' 17 39 export SETTE_SYNC_CONFIGS='yes' 18 echo "" 19 echo "Configuration $SETTE_TEST_CONFIGS will be cleaned; this option enforces also synchronisation" 40 echo "-c: Configuration ${SETTE_TEST_CONFIGS[@]} will be cleaned; this option enforces also synchronisation" 41 echo "";; 42 d) dry_run=1 43 echo "";; 44 r) NO_REPORT=1 20 45 echo "";; 21 46 s) export SETTE_SYNC_CONFIGS='yes' 22 echo "" 23 echo "MY_SRC and EXP00 in $SETTE_TEST_CONFIGS will be synchronised with the MY_SRC and EXPREF from the reference configuration" 24 echo "";; 25 n) export SETTE_TEST_CONFIGS=($OPTARG) 26 echo "" 47 echo "-s: MY_SRC and EXP00 in ${SETTE_TEST_CONFIGS[@]} will be synchronised with the MY_SRC and EXPREF from the reference configuration" 48 echo "";; 49 n) OPTSTR="$OPTARG" 50 OPTSTR="${OPTSTR/ORCA2_SAS_ICE/SAS}" # Permit either shortened (expected) or full name for SAS 51 OPTSTR="${OPTSTR/AGRIF_DEMO/AGRIF}" # Permit either shortened (expected) or full name for AGRIF 52 export SETTE_TEST_CONFIGS=(${OPTSTR}) 53 echo "==================================" 27 54 if [ ${#SETTE_TEST_CONFIGS[@]} -gt 1 ]; then 28 echo " Configurations ${SETTE_TEST_CONFIGS[@]} will be tested if they are available"55 echo "-n: Configurations ${SETTE_TEST_CONFIGS[@]} will be tested if they are available" 29 56 else 30 echo " Configuration ${SETTE_TEST_CONFIGS[@]} will be tested if it is available"57 echo "-n: Configuration ${SETTE_TEST_CONFIGS[@]} will be tested if it is available" 31 58 fi 32 echo "" ;; 33 x) export SETTE_TEST_TYPES=($OPTARG) 34 ;; 35 T) export SETTE_TIMING='yes' 36 echo "" 37 echo "ln_timing will be set to true" 38 echo "";; 39 q) export NOT_USING_QCO='yes' 40 echo "" 41 echo "key_qco and key_linssh will NOT be activated" 42 echo "";; 43 Q) export USING_RK3='no' 44 echo "" 45 echo "key_qco and key_RK3 will be activated" 46 echo "..when they are ready; disabled for now: USING_RK3='no'" 47 echo "";; 48 t) export USING_TILING='yes' 49 echo "" 50 echo "ln_tile will be set to true AND nn_hls will be set to 2" 51 echo "";; 52 e) export USING_EXTRA_HALO='yes' 53 echo "" 54 echo "nn_hls will be set to 2" 59 echo "";; 60 g) case $OPTARG in 61 [0-9,a-z,A-Z] ) echo "-g: Using ${SETTE_STG}${OPTARG} as the configuration suffix";; 62 * ) echo "-g only accepts a single, alphanumeric character. Processing halted"; exit 42;; 63 esac 64 export SETTE_STG=${SETTE_STG}${OPTARG} 65 echo "";; 66 x) export SETTE_TEST_TYPES=(${OPTARG}) 67 echo "-x: ${SETTE_TEST_TYPES[@]} tests requested" 68 echo "";; 69 v) export SETTE_SUB_VAL=($OPTARG) 70 echo "-v: $SETTE_SUB_VAL validation sub-directory requested" 71 echo "";; 72 T) export USING_TIMING='no' 73 echo "-T: ln_timing will be set to false" 74 echo "";; 75 t) export USING_TILING='no' 76 echo "-t: ln_tile will be set to false" 77 echo "";; 78 e) export USING_EXTRA_HALO='no' 79 echo "-e: nn_hls will be set to 1" 55 80 echo "";; 56 81 i) export USING_ICEBERGS='no' 57 echo "" 58 echo "ln_icebergs will be set to false" 59 echo "";; 60 h | *) echo 'sette.sh with no arguments (in this case all configuration will be tested)' 82 echo "-i: ln_icebergs will be set to false" 83 echo "";; 84 C) export USING_COLLECTIVES='no' 85 echo "-C: nn_comm will be set to 1" 86 echo "";; 87 q) export USING_QCO='no' 88 echo "-q: key_qco and key_linssh will NOT be activated" 89 echo "";; 90 Q) export USING_RK3='no' 91 echo "-Q: key_qco and key_RK3 will not be activated" 92 echo " This is the curent default for now since RK3 is not ready" 93 echo "";; 94 F) export USING_LOOP_FUSION='no' 95 echo "-F: key_loop_fusion will not be activated" 96 echo "";; 97 X) export USING_XIOS='no' 98 echo "-X: key_xios will not be activated" 99 echo "";; 100 A) export USING_MPMD='no' 101 echo "-A: Tasks will be run in attached (SPMD) mode" 102 echo "";; 103 h | *) echo 'sette.sh with no arguments (in this case all configuration will be tested with default options)' 104 echo '-T to set ln_timing false for all non-AGRIF configurations (default: true)' 105 echo '-t set ln_tile false in all tests that support it (default: true)' 106 echo '-e set nn_hls=1 (default: nn_hls=2)' 107 echo '-i set ln_icebergs false (default: true)' 108 echo '-C set nn_comm=1 (default: nn_comm=2 ==> use MPI3 collective comms)' 109 echo '-q to remove the key_qco key (default: added)' 110 echo '-X to remove the key_xios key (default: added)' 111 echo '-F to remove the key_loop_fusion key (default: added)' 112 echo '-Q to remove the key_RK3 key (currently a null-op since key_RK3 is not used)' 113 echo '-A to run tests in attached (SPMD) mode (default: MPMD with key_xios)' 61 114 echo '-n "CFG1_to_test CFG2_to_test ..." to test some specific configurations' 62 echo '-x "TEST_type TEST_type ..." to specify particular types of test (RESTART is mandatory)' 63 echo '-T to set ln_timing true for all non-AGRIF configurations' 115 echo '-x "TEST_type TEST_type ..." to specify particular type(s) of test(s) to run after compilation' 116 echo ' TEST_type choices are: RESTART REPRO CORRUPT PHYSICS - anything else will COMPILE only' 117 echo '-v "subdir" optional validation record subdirectory to be created below NEMO_VALIDATION_DIR' 118 echo '-g "group_suffix" single character suffix to be appended to the standard _ST suffix used' 119 echo ' for SETTE-built configurations (needed if sette.sh invocations may overlap)' 120 echo '-r to execute without waiting to run sette_rpt.sh at the end (useful for chaining sette.sh invocations)' 121 echo '-d to perform a dryrun to simply report what settings will be used' 64 122 echo '-c to clean each configuration' 65 echo '-q run without qco environment'66 echo '-Q run with key_qco AND key_RK3 (currently disabled)'67 echo '-t activate ln_tile in all tests that support it; also forces nn_hls=2 (default: off)'68 echo '-e activate extended halo (nn_hls=2) in all tests that support it (default: nn_hls=1)'69 echo '-i run without icebergs even in tests that support them (default: on)'70 123 echo '-s to synchronise the sette MY_SRC and EXP00 with the reference MY_SRC and EXPREF'; exit 42 ;; 71 124 esac … … 73 126 shift $((OPTIND - 1)) 74 127 fi 75 128 # 129 # Option dependency tests 130 # 131 if [ ${USING_TILING} == "yes" ] ; then 132 if [ ${USING_EXTRA_HALO} == "no" ] ; then 133 while true; do 134 read -p "Tiling requires the extra halo but you have used -e to deselect it. Would you like to reselect it? (y/n)?: " yn 135 case $yn in 136 [Yy]* ) echo "Ok, ignoring the -e option"; USING_EXTRA_HALO="yes"; break;; 137 [Nn]* ) echo "Ok, exiting instead"; exit 42;; 138 * ) echo "Please answer yes or no.";; 139 esac 140 done 141 fi 142 fi 143 if [ ${USING_LOOP_FUSION} == "yes" ] ; then 144 if [ ${USING_EXTRA_HALO} == "no" ] ; then 145 while true; do 146 read -p "Loop fusion requires the extra halo but you have used -e to deselect it. Would you like to reselect it? (y/n)?: " yn 147 case $yn in 148 [Yy]* ) echo "Ok, ignoring the -e option"; USING_EXTRA_HALO="yes"; break;; 149 [Nn]* ) echo "Ok, exiting instead"; exit 42;; 150 * ) echo "Please answer yes or no.";; 151 esac 152 done 153 fi 154 fi 155 # 156 # Get SETTE parameters 76 157 . ./param.cfg 77 158 159 # 160 # Set the common compile keys to add or delete based on command-line arguments: 161 # 162 export ADD_KEYS="" ; export DEL_KEYS="" 163 if [ ${USING_XIOS} == "yes" ] ; then export ADD_KEYS="${ADD_KEYS}key_xios " ; fi 164 if [ ${USING_XIOS} == "no" ] ; then export DEL_KEYS="${DEL_KEYS}key_xios " ; fi 165 # 166 if [ ${USING_LOOP_FUSION} == "yes" ] ; then export ADD_KEYS="${ADD_KEYS}key_loop_fusion " ; fi 167 if [ ${USING_LOOP_FUSION} == "no" ] ; then export DEL_KEYS="${DEL_KEYS}key_loop_fusion " ; fi 168 # 169 if [ ${USING_QCO} == "yes" ] ; then export ADD_KEYS="${ADD_KEYS}key_qco " ; fi 170 if [ ${USING_QCO} == "no" ] ; then export DEL_KEYS="${DEL_KEYS}key_qco key_linssh " ; fi 171 # 172 if [ ${USING_RK3} == "yes" ] ; then export ADD_KEYS="${ADD_KEYS}key_qco key_RK3 " ; fi 173 if [ ${USING_RK3} == "no" ] ; then export DEL_KEYS="${DEL_KEYS}key_RK3 " ; fi 174 175 # 176 # Set validation record sub-directories (if required) 177 # 178 if [ ! -d $NEMO_VALIDATION_DIR ] ; then 179 if [ ${dry_run} -eq 0 ] ; then 180 while true; do 181 read -p "$NEMO_VALIDATION_DIR does not exist. Do you wish to create it? " yn 182 case $yn in 183 [Yy]* ) echo "Ok, creating $NEMO_VALIDATION_DIR"; mkdir $NEMO_VALIDATION_DIR; break;; 184 [Nn]* ) echo "Ok, exiting instead"; exit 42;; 185 * ) echo "Please answer yes or no.";; 186 esac 187 done 188 else 189 echo "$NEMO_VALIDATION_DIR does not exist" 190 echo "but this is a dry run so it will not be created" 191 fi 192 fi 193 if [ ! -d $NEMO_VALIDATION_DIR/$SETTE_SUB_VAL ] && [ ${dry_run} -eq 0 ] ; then 194 mkdir $NEMO_VALIDATION_DIR/$SETTE_SUB_VAL 195 fi 196 export NEMO_VALIDATION_DIR=$NEMO_VALIDATION_DIR/$SETTE_SUB_VAL 197 78 198 if [ ${#SETTE_TEST_CONFIGS[@]} -eq 0 ]; then 79 echo " "199 echo "==================================" 80 200 echo "Configurations $TEST_CONFIGS will be tested if they are available" 81 echo "" 82 fi 83 echo "" 84 echo "Carrying out the following tests: ${TEST_TYPES[@]}" 85 echo "" 201 fi 202 echo "Carrying out the following tests : ${TEST_TYPES[@]}" 203 echo "requested by the command : "$cmd $cmdargs 204 printf "%-33s : %s\n" USING_TIMING $USING_TIMING 205 printf "%-33s : %s\n" USING_ICEBERGS $USING_ICEBERGS 206 printf "%-33s : %s\n" USING_EXTRA_HALO $USING_EXTRA_HALO 207 printf "%-33s : %s\n" USING_TILING $USING_TILING 208 printf "%-33s : %s\n" USING_COLLECTIVES $USING_COLLECTIVES 209 printf "%-33s : %s\n" USING_QCO $USING_QCO 210 printf "%-33s : %s\n" USING_LOOP_FUSION $USING_LOOP_FUSION 211 printf "%-33s : %s\n" USING_XIOS $USING_XIOS 212 printf "%-33s : %s\n" USING_MPMD $USING_MPMD 213 printf "%-33s : %s\n" USING_RK3 $USING_RK3 214 printf "%-33s : %s\n" "Common compile keys to be added" "$ADD_KEYS" 215 printf "%-33s : %s\n" "Common compile keys to be deleted" "$DEL_KEYS" 216 echo "Validation records to appear under: "$NEMO_VALIDATION_DIR 217 echo "==================================" 218 echo "" 219 # 220 # Option compatibility tests 221 # 222 if [ ${USING_MPMD} == "yes" ] && [ ${USING_XIOS} == "no" ] ; then echo "Incompatible choices. MPMD mode requires the XIOS server" ; exit ; fi 223 224 if [ ${dry_run} -eq 1 ] ; then echo "dryrun only: no tests performed" ; exit ; fi 86 225 87 226 # run sette on reference configuration … … 107 246 fi 108 247 248 if [ ${NO_REPORT} -ne 0 ] ; then exit ; fi 109 249 # run sette report 110 250 echo "" -
utils/CI/sette/sette_list_avail_cfg.sh
r13382 r14981 16 16 printf "%-15s \n" VORTEX 17 17 printf "%-15s \n" ICE_AGRIF 18 printf "%-15s \n" SWG 18 19 printf "%-15s \n" ISOMIP+ 19 20 echo '' -
utils/CI/sette/sette_list_avail_rev.sh
r12569 r14981 4 4 SETTE_DIR=$(cd $(dirname "$0"); pwd) 5 5 MAIN_DIR=$(dirname $SETTE_DIR) 6 USE_REF=0 6 7 7 8 . ./param.cfg 8 9 9 10 if [ $# -gt 0 ]; then 10 while getopts c: h option; do11 while getopts c:v:Rh option; do 11 12 case $option in 12 13 c) COMPILER=$OPTARG;; 14 v) SETTE_SUB_VAL=$OPTARG;; 15 R) USE_REF=1;; 13 16 h | *) echo '' 14 17 echo 'sette_list_avail_rev.sh : ' … … 16 19 echo '-c COMPILER_name :' 17 20 echo ' list all sette directory and available revisions created with the compiler specified' 21 echo ' -v sub_dir :' 22 echo ' validation sub-directory below NEMO_VALIDATION_DIR' 18 23 echo '' 19 24 exit 42;; … … 22 27 shift $((OPTIND - 1)) 23 28 fi 29 if [ ! -z $SETTE_SUB_VAL ] ; then 30 NEMO_VALIDATION_DIR=$NEMO_VALIDATION_DIR/$SETTE_SUB_VAL 31 NEMO_VALIDATION_REF=$NEMO_VALIDATION_REF/$SETTE_SUB_VAL 32 else 33 NEMO_VALIDATION_DIR=$NEMO_VALIDATION_DIR/MAIN 34 NEMO_VALIDATION_REF=$NEMO_VALIDATION_REF/MAIN 35 fi 24 36 25 37 # 26 38 lst_rev () { 27 39 # get the list of revision available for a configuration 28 if [ ! -d $1 ] ; then 29 CFGLST=-9999 30 else 31 CFGLST=`ls $1 | sort -u -r ` 32 fi 40 # base directory 41 VALSUB=$1 33 42 # config name 34 43 CONFIG=$2 35 44 # list of all revision available 36 45 ALLLST=${@:3} 37 # number of revision total and for CONFIG38 nrevall=`echo $ALLLST | wc -w`39 nrevcfg=`echo $CFGLST | wc -w`40 46 # display 41 echo "" 42 printf "%-27s : " $CONFIG 43 irev=1 44 irevcfg=1 45 while [[ $irev -le $nrevall ]] ; do 46 rev=`echo $ALLLST | cut -d\ -f ${irev}` 47 cfgrev=`echo $CFGLST | cut -d\ -f ${irevcfg}` 48 if [ -z $cfgrev ] ; then cfgrev=-9999 ; fi 49 if [ $cfgrev == $rev ] ; then 47 printf "\n %-28s : " $CONFIG 48 for rev in $ALLLST 49 do 50 if [ -d ${VALSUB}/$rev/${CONFIG} ] ; then 50 51 printf "%-6s " $rev 51 irevcfg=$((irevcfg+1))52 52 else 53 printf "%-5s " " *****"53 printf "%-5s " "----- " 54 54 fi 55 irev=$((irev+1))56 55 done 57 56 } … … 59 58 60 59 NEMO_VALID=${NEMO_VALIDATION_DIR}/ 60 if [ ${USE_REF} == 1 ] ; then 61 NEMO_VALID=${NEMO_VALIDATION_REF}/ 62 fi 61 63 62 64 # list of all revision available 63 DIRLST=`find ${NEMO_VALID} -maxdepth 3 -mindepth 3 -type d -regex ".*\/W.*\/${COMPILER}\/.*" | sed -e "s/.*\/W.*\/${COMPILER}\///" | sort -u -r` 65 DIRLIST=`find ${NEMO_VALID}/${COMPILER} -maxdepth 1 -mindepth 1 -type d | sort -u` 66 DIRLIST=`basename -a $DIRLIST` 64 67 65 68 # display header … … 67 70 echo " Compiler used is : $COMPILER" 68 71 echo "" 69 printf " List of all avail. rev. is : " 70 for dir in `echo $DIRLST`; do printf "%-6s " $dir ; done 72 printf " List of all avail. rev. in :"${NEMO_VALID}"\n" 73 printf " is : " 74 for dir in `echo $DIRLIST`; do printf "%-6s " $dir ; done 71 75 printf "\n" 72 76 73 77 # start checking configuration revision 74 echo " "75 echo " !---- check revision available for each configuration ----!"76 for CONFIG in WGYRE_PISCES_ST WORCA2_ICE_PISCES_ST WORCA2_OFF_PISCES_ST WAMM12_ST WORCA2_SAS_ICE_ST WAGRIF_DEMO_ST WSPITZ12_ST WISOMIP_ST WOVERFLOW_ST WLOCK_EXCHANGE_ST WVORTEX_ST WICE_AGRIF_ST78 echo " Availability for each config.: " 79 echo -n " ------------------------------" 80 for CONFIG in GYRE_PISCES ORCA2_ICE_PISCES ORCA2_OFF_PISCES AMM12 ORCA2_SAS_ICE AGRIF_DEMO SWG ISOMIP+ OVERFLOW LOCK_EXCHANGE VORTEX ICE_AGRIF 77 81 do 78 DIR=${NEMO_VALID ATION_DIR}/${CONFIG}/${COMPILER}79 lst_rev $DIR $CONFIG $DIRL ST82 DIR=${NEMO_VALID}/${COMPILER}/ 83 lst_rev $DIR $CONFIG $DIRLIST 80 84 done 81 85 printf "\n" -
utils/CI/sette/sette_reference-configurations.sh
r14830 r14981 29 29 # MPIRUN_FLAG : flag to run in parallel (MPI) "yes" 30 30 # to run in sequential mode (NB_PROC = 1) "no" 31 # USING_XIOS : flag to control the activation of key_xios32 # "yes" to compile using key_xios and link to the external XIOS library33 # "no" to compile without key_xios and link to the old IOIPSL library34 # USING_MPMD : flag to control the use of stand-alone IO servers35 # requires USING_XIOS="yes"36 # "yes" to run in MPMD (detached) mode with stand-alone IO servers37 # "no" to run in SPMD (attached) mode without separate IO servers38 # SETTE_TIMING : flag to control the production of timing.output39 # requires SETTE_TIMING="yes"40 31 41 32 # NUM_XIOSERVERS : number of stand-alone IO servers to employ 42 33 # set to zero if USING_MPMD="no" 43 # USING_LOOP_FUSION : flag to control the activation of key_loop_fusion44 # "yes" to use the loop fusion adv routines when halo = 245 # "no" to use standard adv routines46 34 # 47 35 # Principal script is sette.sh, that calls … … 108 96 export MPIRUN_FLAG="yes" 109 97 # 110 if [ ${USING_TILING} == "yes" ]111 then112 export USING_EXTRA_HALO="yes"113 fi114 #115 export ADD_KEYS=""116 export DEL_KEYS=""117 if [ ${USING_XIOS} == "yes" ]118 then119 export ADD_KEYS="${ADD_KEYS} key_xios"120 else121 export DEL_KEYS="${DEL_KEYS} key_xios"122 fi123 #124 if [ ${ADD_NOSIGNEDZERO} == "yes" ]125 then126 export ADD_KEYS="${ADD_KEYS} key_nosignedzero"127 else128 export DEL_KEYS="${DEL_KEYS} key_nosignedzero"129 fi130 #131 if [ ${USING_LOOP_FUSION} == "yes" ]132 then133 export ADD_KEYS="${ADD_KEYS} key_loop_fusion"134 fi135 #136 if [ ${NOT_USING_QCO} == "yes" ]137 then138 export DEL_KEYS="${DEL_KEYS} key_qco key_linssh"139 fi140 #141 if [ ${USING_RK3} == "yes" ]142 then143 export ADD_KEYS="${ADD_KEYS} key_qco key_RK3"144 else145 export DEL_KEYS="${DEL_KEYS} key_RK3"146 fi147 #148 98 # Settings which control the use of stand alone servers (only relevant if using xios) 149 99 # … … 157 107 fi 158 108 # 159 #160 if [ ${USING_MPMD} == "yes" ] && [ ${USING_XIOS} == "no" ]161 then162 echo "Incompatible choices. MPMD mode requires the XIOS server"163 exit164 fi165 109 166 110 # Directory to run the tests … … 177 121 # ORCA2_OFF_PISCES : 178 122 # AMM12 : 179 # SAS : 123 # SAS : aka ORCA2_SAS_ICE 180 124 # ORCA2_ICE_OBS : 181 # AGRIF : test AGRIF in a double zoom configuration in the nordic seas + 1 zoom in the eq. Pacific (AGRIF_DEMO) 182 # and check that key_agrif without zoom = no key_agrif 183 # WED025 : regional configuration including sea-ice and tides (Spitzbergen) 184 125 # AGRIF : AGRIF_DEMO: test AGRIF in a double zoom configuration in the nordic seas + 1 zoom in the eq. Pacific and 126 # AGRIF_DEMO_NOAGRIF: check that key_agrif without zoom = no key_agrif 127 # WED025 : regional configuration including sea-ice and tides (Spitzbergen) 128 129 . ./all_functions.sh 185 130 for config in ${TEST_CONFIGS[@]} 186 131 do … … 189 134 # GYRE_PISCES 190 135 # ----------- 191 if [ ${config} == "GYRE_PISCES" ] && [ ${DO_RESTART} == "1" ]; then192 ## Restartability tests for GYRE_PISCES 136 if [ ${config} == "GYRE_PISCES" ] ; then 137 SETTE_CONFIG="GYRE_PISCES"${SETTE_STG} 193 138 if [ $( echo ${CMP_NAM} | grep -ic debug ) -eq 1 ] 194 139 then … … 198 143 fi 199 144 ITRST=$( printf "%08d" $(( ${ITEND} / 2 )) ) 145 cd ${MAIN_DIR} 146 # 147 # syncronisation if target directory/file exist (not done by makenemo) 148 sync_config GYRE_PISCES ${SETTE_CONFIG} 'cfgs' 149 clean_config GYRE_PISCES ${SETTE_CONFIG} 'cfgs' 150 # 151 # GYRE uses linssh so remove key_qco if added by default 152 . ./makenemo -m ${CMP_NAM} -n ${SETTE_CONFIG} -r GYRE_PISCES -j ${CMPL_CORES} add_key "${ADD_KEYS/key_qco/}" del_key "${DEL_KEYS}" 153 fi 154 if [ ${config} == "GYRE_PISCES" ] && [ ${DO_RESTART} == "1" ] ; then 155 ## Restartability tests for GYRE_PISCES 200 156 export TEST_NAME="LONG" 201 cd ${MAIN_DIR} 202 # 203 # syncronisation if target directory/file exist (not done by makenemo) 204 . ${SETTE_DIR}/all_functions.sh 205 sync_config GYRE_PISCES GYRE_PISCES_ST 'cfgs' 206 clean_config GYRE_PISCES GYRE_PISCES_ST 'cfgs' 207 # 208 . ./makenemo -m ${CMP_NAM} -n GYRE_PISCES_ST -r GYRE_PISCES -j 8 add_key "${ADD_KEYS}" del_key "${DEL_KEYS}" 209 cd ${SETTE_DIR} 210 . ./param.cfg 211 . ./all_functions.sh 157 cd ${SETTE_DIR} 212 158 . ./prepare_exe_dir.sh 213 159 set_valid_dir … … 226 172 set_namelist namelist_cfg sn_cfctl%l_runstat .true. 227 173 set_namelist namelist_cfg sn_cfctl%l_trcstat .true. 228 if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 229 if [ ${USING_MPMD} == "yes" ] ; then 230 set_xio_using_server iodef.xml true 231 else 232 set_xio_using_server iodef.xml false 233 fi 174 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 175 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 176 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 177 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 178 set_xio_using_server iodef.xml ${USING_MPMD} 234 179 cd ${SETTE_DIR} 235 180 . ./prepare_job.sh input_GYRE.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 256 201 set_namelist namelist_cfg cn_ocerst_in \"GYREPIS_LONG_${ITRST}_restart\" 257 202 set_namelist namelist_top_cfg cn_trcrst_in \"GYREPIS_LONG_${ITRST}_restart_trc\" 258 if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 259 if [ ${USING_MPMD} == "yes" ] ; then 260 set_xio_using_server iodef.xml true 261 else 262 set_xio_using_server iodef.xml false 263 fi 203 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 204 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 205 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 206 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 207 set_xio_using_server iodef.xml ${USING_MPMD} 264 208 for (( i=1; i<=$NPROC; i++)) ; do 265 209 L_NPROC=$(( $i - 1 )) … … 280 224 cd ${MAIN_DIR} 281 225 cd ${SETTE_DIR} 282 . ./param.cfg283 . ./all_functions.sh284 226 . ./prepare_exe_dir.sh 285 227 set_valid_dir … … 297 239 set_namelist namelist_cfg sn_cfctl%l_runstat .true. 298 240 set_namelist namelist_cfg sn_cfctl%l_trcstat .true. 299 if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 300 if [ ${USING_MPMD} == "yes" ] ; then 301 set_xio_using_server iodef.xml true 302 else 303 set_xio_using_server iodef.xml false 304 fi 241 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 242 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 243 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 244 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 245 set_xio_using_server iodef.xml ${USING_MPMD} 305 246 cd ${SETTE_DIR} 306 247 . ./prepare_job.sh input_GYRE.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 325 266 set_namelist namelist_cfg sn_cfctl%l_runstat .true. 326 267 set_namelist namelist_cfg sn_cfctl%l_trcstat .true. 327 if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 328 if [ ${USING_MPMD} == "yes" ] ; then 329 set_xio_using_server iodef.xml true 330 else 331 set_xio_using_server iodef.xml false 332 fi 268 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 269 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 270 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 271 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 272 set_xio_using_server iodef.xml ${USING_MPMD} 333 273 cd ${SETTE_DIR} 334 274 . ./prepare_job.sh input_GYRE.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 341 281 # ORCA2_ICE_PISCES 342 282 # ----------------- 343 if [ ${config} == "ORCA2_ICE_PISCES" ] && [ ${DO_RESTART} == "1" ]; then344 ## Restartability tests for ORCA2_ICE_PISCES 283 if [ ${config} == "ORCA2_ICE_PISCES" ] ; then 284 SETTE_CONFIG="ORCA2_ICE_PISCES"${SETTE_STG} 345 285 if [ $( echo ${CMP_NAM} | grep -ic debug ) -eq 1 ] 346 286 then … … 350 290 fi 351 291 ITRST=$( printf "%08d" $(( ${ITEND} / 2 )) ) 292 cd ${MAIN_DIR} 293 # 294 # syncronisation if target directory/file exist (not done by makenemo) 295 sync_config ORCA2_ICE_PISCES ${SETTE_CONFIG} 'cfgs' 296 clean_config ORCA2_ICE_PISCES ${SETTE_CONFIG} 'cfgs' 297 # 298 . ./makenemo -m ${CMP_NAM} -n ${SETTE_CONFIG} -r ORCA2_ICE_PISCES -j ${CMPL_CORES} add_key "${ADD_KEYS}" del_key "${DEL_KEYS}" 299 fi 300 if [ ${config} == "ORCA2_ICE_PISCES" ] && [ ${DO_RESTART} == "1" ] ; then 301 ## Restartability tests for ORCA2_ICE_PISCES 352 302 export TEST_NAME="LONG" 353 cd ${MAIN_DIR} 354 # 355 # syncronisation if target directory/file exist (not done by makenemo) 356 . ${SETTE_DIR}/all_functions.sh 357 sync_config ORCA2_ICE_PISCES ORCA2_ICE_PISCES_ST 'cfgs' 358 clean_config ORCA2_ICE_PISCES ORCA2_ICE_PISCES_ST 'cfgs' 359 # 360 . ./makenemo -m ${CMP_NAM} -n ORCA2_ICE_PISCES_ST -r ORCA2_ICE_PISCES -j 8 add_key "${ADD_KEYS}" del_key "${DEL_KEYS}" 361 cd ${SETTE_DIR} 362 . ./param.cfg 363 . ./all_functions.sh 303 cd ${SETTE_DIR} 364 304 . ./prepare_exe_dir.sh 365 305 set_valid_dir … … 383 323 set_namelist namelist_cfg ln_stcor .true. 384 324 # 385 if [ ${USING_ICEBERGS} == "no" ] ; then set_namelist namelist_cfg ln_icebergs .false. ; fi 386 if [ ${USING_ICEBERGS} == "yes" ] ; then set_namelist namelist_cfg ln_icebergs .true. ; fi 387 if [ ${USING_EXTRA_HALO} == "no" ] ; then set_namelist namelist_cfg nn_hls 1 ; fi 388 if [ ${USING_EXTRA_HALO} == "yes" ] ; then set_namelist namelist_cfg nn_hls 2 ; fi 389 if [ ${USING_TILING} == "no" ] ; then set_namelist namelist_cfg ln_tile .false. ; fi 390 if [ ${USING_TILING} == "yes" ] ; then set_namelist namelist_cfg ln_tile .true. ; fi 325 set_namelist_opt namelist_cfg ln_icebergs ${USING_ICEBERGS} .true. .false. 326 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 327 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 328 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 391 329 # for debugging purposes set_namelist namelist_cfg rn_test_box -180.0, 180.0, -90.0, -55.0 392 330 # … … 402 340 # put ln_pisdmp to false : no restoring to global mean value 403 341 set_namelist namelist_pisces_cfg ln_pisdmp .false. 404 if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 405 if [ ${USING_MPMD} == "yes" ] ; then 406 set_xio_using_server iodef.xml true 407 else 408 set_xio_using_server iodef.xml false 409 fi 342 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 343 set_xio_using_server iodef.xml ${USING_MPMD} 410 344 cd ${SETTE_DIR} 411 345 . ./prepare_job.sh input_ORCA2_ICE_PISCES.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 433 367 set_namelist namelist_cfg ln_stcor .true. 434 368 # 435 if [ ${USING_ICEBERGS} == "no" ] ; then set_namelist namelist_cfg ln_icebergs .false. ; fi 436 if [ ${USING_ICEBERGS} == "yes" ] ; then set_namelist namelist_cfg ln_icebergs .true. ; fi 437 if [ ${USING_EXTRA_HALO} == "no" ] ; then set_namelist namelist_cfg nn_hls 1 ; fi 438 if [ ${USING_EXTRA_HALO} == "yes" ] ; then set_namelist namelist_cfg nn_hls 2 ; fi 439 if [ ${USING_TILING} == "no" ] ; then set_namelist namelist_cfg ln_tile .false. ; fi 440 if [ ${USING_TILING} == "yes" ] ; then set_namelist namelist_cfg ln_tile .true. ; fi 369 set_namelist_opt namelist_cfg ln_icebergs ${USING_ICEBERGS} .true. .false. 370 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 371 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 372 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 441 373 # for debugging purposes set_namelist namelist_cfg rn_test_box -180.0, 180.0, -90.0, -55.0 442 374 # … … 468 400 fi 469 401 done 470 if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 471 if [ ${USING_MPMD} == "yes" ] ; then 472 set_xio_using_server iodef.xml true 473 else 474 set_xio_using_server iodef.xml false 475 fi 402 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 403 set_xio_using_server iodef.xml ${USING_MPMD} 476 404 cd ${SETTE_DIR} 477 405 . ./prepare_job.sh input_ORCA2_ICE_PISCES.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 486 414 cd ${MAIN_DIR} 487 415 cd ${SETTE_DIR} 488 . ./param.cfg489 . ./all_functions.sh490 416 . ./prepare_exe_dir.sh 491 417 set_valid_dir … … 507 433 set_namelist namelist_cfg ln_stcor .true. 508 434 509 if [ ${USING_ICEBERGS} == "no" ] ; then set_namelist namelist_cfg ln_icebergs .false. ; fi 510 if [ ${USING_ICEBERGS} == "yes" ] ; then set_namelist namelist_cfg ln_icebergs .true. ; fi 511 if [ ${USING_EXTRA_HALO} == "no" ] ; then set_namelist namelist_cfg nn_hls 1 ; fi 512 if [ ${USING_EXTRA_HALO} == "yes" ] ; then set_namelist namelist_cfg nn_hls 2 ; fi 513 if [ ${USING_TILING} == "no" ] ; then set_namelist namelist_cfg ln_tile .false. ; fi 514 if [ ${USING_TILING} == "yes" ] ; then set_namelist namelist_cfg ln_tile .true. ; fi 435 set_namelist_opt namelist_cfg ln_icebergs ${USING_ICEBERGS} .true. .false. 436 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 437 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 438 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 515 439 # for debugging purposes set_namelist namelist_cfg rn_test_box -180.0, 180.0, -90.0, -55.0 516 440 … … 525 449 # put ln_pisdmp to false : no restoring to global mean value 526 450 set_namelist namelist_pisces_cfg ln_pisdmp .false. 527 if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 528 if [ ${USING_MPMD} == "yes" ] ; then 529 set_xio_using_server iodef.xml true 530 else 531 set_xio_using_server iodef.xml false 532 fi 451 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 452 set_xio_using_server iodef.xml ${USING_MPMD} 533 453 cd ${SETTE_DIR} 534 454 . ./prepare_job.sh input_ORCA2_ICE_PISCES.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 557 477 set_namelist namelist_cfg ln_stcor .true. 558 478 559 if [ ${USING_ICEBERGS} == "no" ] ; then set_namelist namelist_cfg ln_icebergs .false. ; fi 560 if [ ${USING_ICEBERGS} == "yes" ] ; then set_namelist namelist_cfg ln_icebergs .true. ; fi 561 if [ ${USING_EXTRA_HALO} == "no" ] ; then set_namelist namelist_cfg nn_hls 1 ; fi 562 if [ ${USING_EXTRA_HALO} == "yes" ] ; then set_namelist namelist_cfg nn_hls 2 ; fi 563 if [ ${USING_TILING} == "no" ] ; then set_namelist namelist_cfg ln_tile .false. ; fi 564 if [ ${USING_TILING} == "yes" ] ; then set_namelist namelist_cfg ln_tile .true. ; fi 479 set_namelist_opt namelist_cfg ln_icebergs ${USING_ICEBERGS} .true. .false. 480 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 481 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 482 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 565 483 # for debugging purposes set_namelist namelist_cfg rn_test_box -180.0, 180.0, -90.0, -55.0 566 484 … … 575 493 # put ln_pisdmp to false : no restoring to global mean value 576 494 set_namelist namelist_pisces_cfg ln_pisdmp .false. 577 if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 578 if [ ${USING_MPMD} == "yes" ] ; then 579 set_xio_using_server iodef.xml true 580 else 581 set_xio_using_server iodef.xml false 582 fi 495 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 496 set_xio_using_server iodef.xml ${USING_MPMD} 583 497 cd ${SETTE_DIR} 584 498 . ./prepare_job.sh input_ORCA2_ICE_PISCES.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 590 504 # ORCA2_OFF_PISCES 591 505 # ---------------- 592 if [ ${config} == "ORCA2_OFF_PISCES" ] && [ ${DO_RESTART} == "1" ]; then593 ## Restartability tests for ORCA2_OFF_PISCES 506 if [ ${config} == "ORCA2_OFF_PISCES" ] ; then 507 SETTE_CONFIG="ORCA2_OFF_PISCES"${SETTE_STG} 594 508 if [ $( echo ${CMP_NAM} | grep -ic debug ) -eq 1 ] 595 509 then … … 599 513 fi 600 514 ITRST=$( printf "%08d" $(( ${ITEND} / 2 )) ) 515 cd ${MAIN_DIR} 516 # 517 # syncronisation if target directory/file exist (not done by makenemo) 518 sync_config ${SETTE_CONFIG} ORCA2_OFF_PISCES_ST 'cfgs' 519 clean_config ${SETTE_CONFIG} ORCA2_OFF_PISCES_ST 'cfgs' 520 # 521 # ORCA2_OFF_PISCES uses linssh so remove key_qco if added by default 522 . ./makenemo -m ${CMP_NAM} -n ${SETTE_CONFIG} -r ORCA2_OFF_PISCES -j ${CMPL_CORES} add_key "${ADD_KEYS/key_qco/}" del_key "${DEL_KEYS}" 523 fi 524 if [ ${config} == "ORCA2_OFF_PISCES" ] && [ ${DO_RESTART} == "1" ] ; then 525 ## Restartability tests for ORCA2_OFF_PISCES 601 526 export TEST_NAME="LONG" 602 cd ${MAIN_DIR} 603 # 604 # syncronisation if target directory/file exist (not done by makenemo) 605 . ${SETTE_DIR}/all_functions.sh 606 sync_config ORCA2_OFF_PISCES ORCA2_OFF_PISCES_ST 'cfgs' 607 clean_config ORCA2_OFF_PISCES ORCA2_OFF_PISCES_ST 'cfgs' 608 # 609 . ./makenemo -m ${CMP_NAM} -n ORCA2_OFF_PISCES_ST -r ORCA2_OFF_PISCES -j 8 add_key "${ADD_KEYS}" del_key "${DEL_KEYS}" 610 cd ${SETTE_DIR} 611 . ./param.cfg 612 . ./all_functions.sh 527 cd ${SETTE_DIR} 613 528 . ./prepare_exe_dir.sh 614 529 set_valid_dir … … 637 552 # put ln_pisdmp to false : no restoring to global mean value 638 553 set_namelist namelist_pisces_cfg ln_pisdmp .false. 639 if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 640 if [ ${USING_MPMD} == "yes" ] ; then 641 set_xio_using_server iodef.xml true 642 else 643 set_xio_using_server iodef.xml false 644 fi 554 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 555 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 556 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 557 set_xio_using_server iodef.xml ${USING_MPMD} 645 558 cd ${SETTE_DIR} 646 559 . ./prepare_job.sh input_ORCA2_OFF_PISCES.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 678 591 # put ln_pisdmp to false : no restoring to global mean value 679 592 set_namelist namelist_pisces_cfg ln_pisdmp .false. 680 if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 681 if [ ${USING_MPMD} == "yes" ] ; then 682 set_xio_using_server iodef.xml true 683 else 684 set_xio_using_server iodef.xml false 685 fi 593 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 594 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 595 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 596 set_xio_using_server iodef.xml ${USING_MPMD} 686 597 cd ${SETTE_DIR} 687 598 . ./prepare_job.sh input_ORCA2_OFF_PISCES.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 696 607 cd ${MAIN_DIR} 697 608 cd ${SETTE_DIR} 698 . ./param.cfg699 . ./all_functions.sh700 609 . ./prepare_exe_dir.sh 701 610 set_valid_dir … … 723 632 # put ln_pisdmp to false : no restoring to global mean value 724 633 set_namelist namelist_pisces_cfg ln_pisdmp .false. 725 if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 726 if [ ${USING_MPMD} == "yes" ] ; then 727 set_xio_using_server iodef.xml true 728 else 729 set_xio_using_server iodef.xml false 730 fi 634 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 635 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 636 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 637 set_xio_using_server iodef.xml ${USING_MPMD} 731 638 cd ${SETTE_DIR} 732 639 . ./prepare_job.sh input_ORCA2_OFF_PISCES.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 761 668 # put ln_pisdmp to false : no restoring to global mean value 762 669 set_namelist namelist_pisces_cfg ln_pisdmp .false. 763 if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 764 if [ ${USING_MPMD} == "yes" ] ; then 765 set_xio_using_server iodef.xml true 766 else 767 set_xio_using_server iodef.xml false 768 fi 670 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 671 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 672 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 673 set_xio_using_server iodef.xml ${USING_MPMD} 769 674 cd ${SETTE_DIR} 770 675 . ./prepare_job.sh input_ORCA2_OFF_PISCES.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 776 681 # AMM12 777 682 # ----- 778 if [ ${config} == "AMM12" ] && [ ${DO_RESTART} == "1" ]; then779 ## Restartability tests for AMM12683 if [ ${config} == "AMM12" ] ; then 684 SETTE_CONFIG="AMM12"${SETTE_STG} 780 685 if [ $( echo ${CMP_NAM} | grep -ic debug ) -eq 1 ] 781 686 then … … 785 690 fi 786 691 ITRST=$( printf "%08d" $(( ${ITEND} / 2 )) ) 692 cd ${MAIN_DIR} 693 # 694 # syncronisation if target directory/file exist (not done by makenemo) 695 sync_config AMM12 ${SETTE_CONFIG} 'cfgs' 696 clean_config AMM12 ${SETTE_CONFIG} 'cfgs' 697 # 698 . ./makenemo -m ${CMP_NAM} -n ${SETTE_CONFIG} -r AMM12 -j ${CMPL_CORES} add_key "${ADD_KEYS}" del_key "${DEL_KEYS}" 699 fi 700 if [ ${config} == "AMM12" ] && [ ${DO_RESTART} == "1" ] ; then 701 ## Restartability tests for AMM12 787 702 export TEST_NAME="LONG" 788 cd ${MAIN_DIR} 789 # 790 # syncronisation if target directory/file exist (not done by makenemo) 791 . ${SETTE_DIR}/all_functions.sh 792 sync_config AMM12 AMM12_ST 'cfgs' 793 clean_config AMM12 AMM12_ST 'cfgs' 794 # 795 . ./makenemo -m ${CMP_NAM} -n AMM12_ST -r AMM12 -j 8 add_key "${ADD_KEYS}" del_key "${DEL_KEYS}" 796 cd ${SETTE_DIR} 797 . ./param.cfg 798 . ./all_functions.sh 703 cd ${SETTE_DIR} 799 704 . ./prepare_exe_dir.sh 800 705 set_valid_dir … … 811 716 set_namelist namelist_cfg jpnj 8 812 717 set_namelist namelist_cfg sn_cfctl%l_runstat .true. 813 if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 814 if [ ${USING_MPMD} == "yes" ] ; then 815 set_xio_using_server iodef.xml true 816 else 817 set_xio_using_server iodef.xml false 818 fi 718 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 719 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 720 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 721 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 722 set_xio_using_server iodef.xml ${USING_MPMD} 819 723 cd ${SETTE_DIR} 820 724 . ./prepare_job.sh input_AMM12.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 842 746 ln -sf ../LONG/AMM12_LONG_${ITRST}_restart_${L_NPROC}.nc . 843 747 done 844 if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 845 if [ ${USING_MPMD} == "yes" ] ; then 846 set_xio_using_server iodef.xml true 847 else 848 set_xio_using_server iodef.xml false 849 fi 748 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 749 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 750 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 751 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 752 set_xio_using_server iodef.xml ${USING_MPMD} 850 753 cd ${SETTE_DIR} 851 754 . ./prepare_job.sh input_AMM12.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 860 763 cd ${MAIN_DIR} 861 764 cd ${SETTE_DIR} 862 . ./param.cfg863 . ./all_functions.sh864 765 . ./prepare_exe_dir.sh 865 766 set_valid_dir … … 875 776 set_namelist namelist_cfg jpnj 4 876 777 set_namelist namelist_cfg sn_cfctl%l_runstat .true. 877 if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 878 if [ ${USING_MPMD} == "yes" ] ; then 879 set_xio_using_server iodef.xml true 880 else 881 set_xio_using_server iodef.xml false 882 fi 778 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 779 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 780 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 781 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 782 set_xio_using_server iodef.xml ${USING_MPMD} 883 783 cd ${SETTE_DIR} 884 784 . ./prepare_job.sh input_AMM12.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 900 800 set_namelist namelist_cfg jpnj 8 901 801 set_namelist namelist_cfg sn_cfctl%l_runstat .true. 902 if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 903 if [ ${USING_MPMD} == "yes" ] ; then 904 set_xio_using_server iodef.xml true 905 else 906 set_xio_using_server iodef.xml false 907 fi 802 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 803 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 804 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 805 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 806 set_xio_using_server iodef.xml ${USING_MPMD} 908 807 cd ${SETTE_DIR} 909 808 . ./prepare_job.sh input_AMM12.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 914 813 915 814 # --------- 916 # ORCA2_SAS 815 # ORCA2_SAS_ICE 917 816 # --------- 918 if [ ${config} == "SAS" ] && [ ${DO_RESTART} == "1" ]; then919 ## Restartability tests 817 if [ ${config} == "SAS" ] ; then 818 SETTE_CONFIG="ORCA2_SAS_ICE"${SETTE_STG} 920 819 if [ $( echo ${CMP_NAM} | grep -ic debug ) -eq 1 ] 921 820 then … … 925 824 fi 926 825 ITRST=$( printf "%08d" $(( ${ITEND} / 2 )) ) 826 cd ${MAIN_DIR} 827 # 828 # syncronisation if target directory/file exist (not done by makenemo) 829 sync_config ORCA2_SAS_ICE ${SETTE_CONFIG} 'cfgs' 830 clean_config ORCA2_SAS_ICE ${SETTE_CONFIG} 'cfgs' 831 # 832 # ORCA2_SAS_ICE uses linssh so remove key_qco if added by default 833 . ./makenemo -m ${CMP_NAM} -n ${SETTE_CONFIG} -r ORCA2_SAS_ICE -j ${CMPL_CORES} add_key "${ADD_KEYS/key_qco/}" del_key "${DEL_KEYS}" 834 fi 835 if [ ${config} == "SAS" ] && [ ${DO_RESTART} == "1" ] ; then 836 ## Restartability tests 927 837 export TEST_NAME="LONG" 928 cd ${MAIN_DIR} 929 # 930 # syncronisation if target directory/file exist (not done by makenemo) 931 . ${SETTE_DIR}/all_functions.sh 932 sync_config ORCA2_SAS_ICE ORCA2_SAS_ICE_ST 'cfgs' 933 clean_config ORCA2_SAS_ICE ORCA2_SAS_ICE_ST 'cfgs' 934 # 935 . ./makenemo -m ${CMP_NAM} -n ORCA2_SAS_ICE_ST -r ORCA2_SAS_ICE -j 8 add_key "${ADD_KEYS}" del_key "${DEL_KEYS}" 936 cd ${SETTE_DIR} 937 . ./param.cfg 938 . ./all_functions.sh 838 cd ${SETTE_DIR} 939 839 . ./prepare_exe_dir.sh 940 840 set_valid_dir … … 952 852 set_namelist namelist_cfg sn_cfctl%l_runstat .true. 953 853 set_namelist namelist_ice_cfg ln_icediachk .true. 954 if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 955 if [ ${USING_MPMD} == "yes" ] ; then 956 set_xio_using_server iodef.xml true 957 else 958 set_xio_using_server iodef.xml false 959 fi 854 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 855 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 856 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 857 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 858 set_xio_using_server iodef.xml ${USING_MPMD} 960 859 cd ${SETTE_DIR} 961 860 . ./prepare_job.sh input_SAS.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 979 878 set_namelist namelist_cfg cn_ocerst_in \"SAS_${ITRST}_restart\" 980 879 set_namelist namelist_ice_cfg cn_icerst_in \"SAS_${ITRST}_restart_ice\" 981 if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 982 if [ ${USING_MPMD} == "yes" ] ; then 983 set_xio_using_server iodef.xml true 984 else 985 set_xio_using_server iodef.xml false 986 fi 880 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 881 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 882 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 883 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 884 set_xio_using_server iodef.xml ${USING_MPMD} 987 885 for (( i=1; i<=$NPROC; i++)) ; do 988 886 L_NPROC=$(( $i - 1 )) … … 1009 907 cd ${MAIN_DIR} 1010 908 cd ${SETTE_DIR} 1011 . ./param.cfg1012 . ./all_functions.sh1013 909 . ./prepare_exe_dir.sh 1014 910 set_valid_dir … … 1024 920 set_namelist namelist_cfg jpnj 8 1025 921 set_namelist namelist_cfg sn_cfctl%l_runstat .true. 1026 if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 1027 if [ ${USING_MPMD} == "yes" ] ; then 1028 set_xio_using_server iodef.xml true 1029 else 1030 set_xio_using_server iodef.xml false 1031 fi 922 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 923 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 924 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 925 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 926 set_xio_using_server iodef.xml ${USING_MPMD} 1032 927 cd ${SETTE_DIR} 1033 928 . ./prepare_job.sh input_SAS.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 1050 945 set_namelist namelist_cfg jpnj 4 1051 946 set_namelist namelist_cfg sn_cfctl%l_runstat .true. 1052 if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 1053 if [ ${USING_MPMD} == "yes" ] ; then 1054 set_xio_using_server iodef.xml true 1055 else 1056 set_xio_using_server iodef.xml false 1057 fi 947 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 948 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 949 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 950 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 951 set_xio_using_server iodef.xml ${USING_MPMD} 1058 952 cd ${SETTE_DIR} 1059 953 . ./prepare_job.sh input_SAS.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 1069 963 ## Test assimilation interface code, OBS and ASM for reproducibility 1070 964 ## Restartability not tested (ASM code not restartable while increments are being applied) 1071 if [ ${config} == "ORCA2_ICE_OBS" ] && [ ${DO_RESTART} == "1" ] ; then 965 if [ ${config} == "ORCA2_ICE_OBS" ] ; then 966 SETTE_CONFIG="ORCA2_ICE_OBS"${SETTE_STG} 1072 967 ## Reproducibility tests 1073 968 if [ $( echo ${CMP_NAM} | grep -ic debug ) -eq 1 ] … … 1077 972 ITEND=80 # 5 days 1078 973 fi 974 cd ${MAIN_DIR} 975 # 976 # syncronisation if target directory/file exist (not done by makenemo) 977 sync_config ORCA2_ICE_PISCES ${SETTE_CONFIG} 'cfgs' 978 clean_config ORCA2_ICE_PISCES ${SETTE_CONFIG} 'cfgs' 979 # 980 . ./makenemo -m ${CMP_NAM} -n ${SETTE_CONFIG} -r ORCA2_ICE_PISCES -d "OCE ICE" -j ${CMPL_CORES} add_key "key_asminc ${ADD_KEYS}" del_key "key_top ${DEL_KEYS}" 981 fi 982 if [ ${config} == "ORCA2_ICE_OBS" ] && [ ${DO_RESTART} == "1" ] ; then 983 ## Reproducibility tests 1079 984 export TEST_NAME="REPRO_4_8" 1080 cd ${MAIN_DIR} 1081 # 1082 # syncronisation if target directory/file exist (not done by makenemo) 1083 . ${SETTE_DIR}/all_functions.sh 1084 sync_config ORCA2_ICE_PISCES ORCA2_ICE_OBS_ST 'cfgs' 1085 clean_config ORCA2_ICE_PISCES ORCA2_ICE_OBS_ST 'cfgs' 1086 # 1087 . ./makenemo -m ${CMP_NAM} -n ORCA2_ICE_OBS_ST -r ORCA2_ICE_PISCES -d "OCE ICE" -j 8 add_key "key_asminc ${ADD_KEYS}" del_key "key_top ${DEL_KEYS}" 1088 cd ${SETTE_DIR} 1089 . ./param.cfg 1090 . ./all_functions.sh 985 cd ${SETTE_DIR} 1091 986 . ./prepare_exe_dir.sh 1092 987 set_valid_dir … … 1125 1020 set_namelist namelist_pisces_cfg ln_ironice .false. 1126 1021 set_namelist namelist_pisces_cfg ln_hydrofe .false. 1127 if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 1128 if [ ${USING_MPMD} == "yes" ] ; then 1129 set_xio_using_server iodef.xml true 1130 else 1131 set_xio_using_server iodef.xml false 1132 fi 1022 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 1023 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 1024 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 1025 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 1026 set_xio_using_server iodef.xml ${USING_MPMD} 1133 1027 cd ${SETTE_DIR} 1134 1028 . ./prepare_job.sh input_ORCA2_ICE_OBS.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 1174 1068 set_namelist namelist_pisces_cfg ln_ironice .false. 1175 1069 set_namelist namelist_pisces_cfg ln_hydrofe .false. 1176 if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 1177 if [ ${USING_MPMD} == "yes" ] ; then 1178 set_xio_using_server iodef.xml true 1179 else 1180 set_xio_using_server iodef.xml false 1181 fi 1070 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 1071 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 1072 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 1073 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 1074 set_xio_using_server iodef.xml ${USING_MPMD} 1182 1075 cd ${SETTE_DIR} 1183 1076 . ./prepare_job.sh input_ORCA2_ICE_OBS.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 1189 1082 # AGRIF ICE 1190 1083 # ----------- 1191 if [ ${config} == "AGRIF" ] && [ ${DO_RESTART} == "1" ]; then1192 ## Restartability tests 1084 if [ ${config} == "AGRIF" ] ; then 1085 SETTE_CONFIG="AGRIF_DEMO"${SETTE_STG} 1193 1086 if [ $( echo ${CMP_NAM} | grep -ic debug ) -eq 1 ] 1194 1087 then … … 1201 1094 ITRST_2=$( printf "%08d" $(( ${ITEND} * 4 / 2 )) ) 1202 1095 ITRST_3=$( printf "%08d" $(( ${ITEND} * 4 * 3 / 2 )) ) 1096 cd ${MAIN_DIR} 1097 # 1098 # syncronisation if target directory/file exist (not done by makenemo) 1099 sync_config AGRIF_DEMO ${SETTE_CONFIG} 'cfgs' 1100 clean_config AGRIF_DEMO ${SETTE_CONFIG} 'cfgs' 1101 # 1102 # AGRIF_DEMO does not yet support nn_hls=2 => key_loop_fusion can not be used 1103 . ./makenemo -m ${CMP_NAM} -n ${SETTE_CONFIG} -r AGRIF_DEMO -j ${CMPL_CORES} add_key "${ADD_KEYS/key_loop_fusion}" del_key "${DEL_KEYS}" 1104 fi 1105 if [ ${config} == "AGRIF" ] && [ ${DO_RESTART} == "1" ] ; then 1106 ## Restartability tests 1203 1107 export TEST_NAME="LONG" 1204 cd ${MAIN_DIR} 1205 # 1206 # syncronisation if target directory/file exist (not done by makenemo) 1207 . ${SETTE_DIR}/all_functions.sh 1208 sync_config AGRIF_DEMO AGRIF_DEMO_ST 'cfgs' 1209 clean_config AGRIF_DEMO AGRIF_DEMO_ST 'cfgs' 1210 # 1211 . ./makenemo -m ${CMP_NAM} -n AGRIF_DEMO_ST -r AGRIF_DEMO -j 8 add_key "${ADD_KEYS}" del_key "${DEL_KEYS}" 1212 cd ${SETTE_DIR} 1213 . ./param.cfg 1214 . ./all_functions.sh 1108 cd ${SETTE_DIR} 1215 1109 . ./prepare_exe_dir.sh 1216 1110 set_valid_dir … … 1225 1119 set_namelist namelist_cfg nn_stock $(( ${ITEND} / 2 )) 1226 1120 set_namelist namelist_cfg sn_cfctl%l_runstat .true. 1121 #set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 1227 1122 set_namelist 1_namelist_cfg cn_exp \"AGRIF_LONG\" 1228 1123 set_namelist 1_namelist_cfg nn_it000 1 … … 1241 1136 set_namelist 3_namelist_cfg sn_cfctl%l_runstat .true. 1242 1137 1243 #if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 1244 if [ ${USING_MPMD} == "yes" ] ; then 1245 set_xio_using_server iodef.xml true 1246 else 1247 set_xio_using_server iodef.xml false 1248 fi 1138 set_xio_using_server iodef.xml ${USING_MPMD} 1249 1139 cd ${SETTE_DIR} 1250 1140 . ./prepare_job.sh input_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 1263 1153 set_namelist namelist_cfg ln_rstart .true. 1264 1154 set_namelist namelist_cfg nn_rstctl 2 1155 #set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 1265 1156 set_namelist 1_namelist_cfg cn_exp \"AGRIF_SHORT\" 1266 1157 set_namelist 1_namelist_cfg nn_it000 $(( ${ITEND} / 2 + 1 )) … … 1305 1196 ln -sf ../LONG/3_AGRIF_LONG_${ITRST_3}_restart_ice_${L_NPROC}.nc . 1306 1197 done 1307 #if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 1308 if [ ${USING_MPMD} == "yes" ] ; then 1309 set_xio_using_server iodef.xml true 1310 else 1311 set_xio_using_server iodef.xml false 1312 fi 1198 set_xio_using_server iodef.xml ${USING_MPMD} 1313 1199 cd ${SETTE_DIR} 1314 1200 . ./prepare_job.sh input_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 1323 1209 cd ${MAIN_DIR} 1324 1210 cd ${SETTE_DIR} 1325 . ./param.cfg1326 . ./all_functions.sh1327 1211 . ./prepare_exe_dir.sh 1328 1212 set_valid_dir … … 1338 1222 set_namelist namelist_cfg jpnj 8 1339 1223 set_namelist namelist_cfg sn_cfctl%l_runstat .true. 1224 #set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 1340 1225 set_namelist 1_namelist_cfg cn_exp \"AGRIF_28\" 1341 1226 set_namelist 1_namelist_cfg nn_it000 1 … … 1357 1242 set_namelist 3_namelist_cfg sn_cfctl%l_runstat .true. 1358 1243 1359 #if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 1360 if [ ${USING_MPMD} == "yes" ] ; then 1361 set_xio_using_server iodef.xml true 1362 else 1363 set_xio_using_server iodef.xml false 1364 fi 1244 set_xio_using_server iodef.xml ${USING_MPMD} 1365 1245 cd ${SETTE_DIR} 1366 1246 . ./prepare_job.sh input_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 1383 1263 set_namelist namelist_cfg jpnj 4 1384 1264 set_namelist namelist_cfg sn_cfctl%l_runstat .true. 1265 #set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 1266 set_xio_using_server iodef.xml ${USING_MPMD} 1385 1267 set_namelist 1_namelist_cfg cn_exp \"AGRIF_44\" 1386 1268 set_namelist 1_namelist_cfg nn_it000 1 … … 1402 1284 set_namelist 3_namelist_cfg sn_cfctl%l_runstat .true. 1403 1285 1404 #if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi1405 if [ ${USING_MPMD} == "yes" ] ; then1406 set_xio_using_server iodef.xml true1407 else1408 set_xio_using_server iodef.xml false1409 fi1410 1286 cd ${SETTE_DIR} 1411 1287 . ./prepare_job.sh input_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 1426 1302 cd ${MAIN_DIR} 1427 1303 cd ${SETTE_DIR} 1428 . ./param.cfg1429 . ./all_functions.sh1430 1304 . ./prepare_exe_dir.sh 1431 1305 set_valid_dir … … 1439 1313 set_namelist namelist_cfg nn_itend ${ITEND} 1440 1314 set_namelist namelist_cfg sn_cfctl%l_runstat .true. 1315 #set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 1441 1316 1442 1317 # Set the number of fine grids to zero: 1443 1318 sed -i "1s/.*/0/" ${EXE_DIR}/AGRIF_FixedGrids.in 1444 1319 1445 #if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 1446 if [ ${USING_MPMD} == "yes" ] ; then 1447 set_xio_using_server iodef.xml true 1448 else 1449 set_xio_using_server iodef.xml false 1450 fi 1320 set_xio_using_server iodef.xml ${USING_MPMD} 1451 1321 cd ${SETTE_DIR} 1452 1322 . ./prepare_job.sh input_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 1459 1329 ## test code corruption with AGRIF (phase 2) ==> Compile without key_agrif (to be compared with AGRIF_DEMO_ST/ORCA2) 1460 1330 if [ ${config} == "AGRIF" ] && [ ${DO_CORRUPT} == "1" ] ; then 1331 SETTE_CONFIG="AGRIF_DEMO_NOAGRIF"${SETTE_STG} 1461 1332 export TEST_NAME="ORCA2" 1462 1333 cd ${MAIN_DIR} 1463 1334 # 1464 1335 # syncronisation if target directory/file exist (not done by makenemo) 1465 . ${SETTE_DIR}/all_functions.sh 1466 sync_config AGRIF_DEMO AGRIF_DEMO_NOAGRIF_ST 'cfgs' 1467 clean_config AGRIF_DEMO AGRIF_DEMO_NOAGRIF_ST 'cfgs' 1468 # 1469 . ./makenemo -m ${CMP_NAM} -n AGRIF_DEMO_NOAGRIF_ST -r AGRIF_DEMO -j 8 add_key "${ADD_KEYS}" del_key "key_agrif ${DEL_KEYS}" 1470 cd ${SETTE_DIR} 1471 . ./param.cfg 1472 . ./all_functions.sh 1336 sync_config AGRIF_DEMO ${SETTE_CONFIG} 'cfgs' 1337 clean_config AGRIF_DEMO ${SETTE_CONFIG} 'cfgs' 1338 # 1339 # AGRIF_DEMO does not yet support nn_hls=2 => key_loop_fusion can not be used 1340 . ./makenemo -m ${CMP_NAM} -n ${SETTE_CONFIG} -r AGRIF_DEMO -j ${CMPL_CORES} add_key "${ADD_KEYS/key_loop_fusion}" del_key "key_agrif ${DEL_KEYS}" 1341 cd ${SETTE_DIR} 1473 1342 . ./prepare_exe_dir.sh 1474 1343 set_valid_dir … … 1482 1351 set_namelist namelist_cfg nn_itend ${ITEND} 1483 1352 set_namelist namelist_cfg sn_cfctl%l_runstat .true. 1484 # 1485 #if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 1486 if [ ${USING_MPMD} == "yes" ] ; then 1487 set_xio_using_server iodef.xml true 1488 else 1489 set_xio_using_server iodef.xml false 1490 fi 1353 #set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 1354 # 1355 set_xio_using_server iodef.xml ${USING_MPMD} 1491 1356 cd ${SETTE_DIR} 1492 1357 . ./prepare_job.sh input_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 1499 1364 # WED025 1500 1365 # ------- 1501 if [ ${config} == "WED025" ] && [ ${DO_RESTART} == "1" ]; then1502 ## Restartability tests 1366 if [ ${config} == "WED025" ] ; then 1367 SETTE_CONFIG="WED025"${SETTE_STG} 1503 1368 if [ $( echo ${CMP_NAM} | grep -ic debug ) -eq 1 ] 1504 1369 then … … 1508 1373 fi 1509 1374 ITRST=$( printf "%08d" $(( ${ITEND} / 2 )) ) 1375 cd ${MAIN_DIR} 1376 # 1377 # syncronisation if target directory/file exist (not done by makenemo) 1378 sync_config WED025 ${SETTE_CONFIG} 'cfgs' 1379 clean_config WED025 ${SETTE_CONFIG} 'cfgs' 1380 # 1381 # WED025 uses ln_hpg_isf so remove key_qco if added by default 1382 . ./makenemo -m ${CMP_NAM} -n ${SETTE_CONFIG} -r WED025 -j ${CMPL_CORES} add_key "${ADD_KEYS/key_qco/}" del_key "${DEL_KEYS}" 1383 fi 1384 if [ ${config} == "WED025" ] && [ ${DO_RESTART} == "1" ] ; then 1385 ## Restartability tests 1510 1386 export TEST_NAME="LONG" 1511 cd ${MAIN_DIR} 1512 # 1513 # syncronisation if target directory/file exist (not done by makenemo) 1514 . ${SETTE_DIR}/all_functions.sh 1515 sync_config WED025 WED025_ST 'cfgs' 1516 clean_config WED025 WED025_ST 'cfgs' 1517 # 1518 . ./makenemo -m ${CMP_NAM} -n WED025_ST -r WED025 -j 8 add_key "${ADD_KEYS}" del_key "${DEL_KEYS}" 1519 cd ${SETTE_DIR} 1520 . ./param.cfg 1521 . ./all_functions.sh 1387 cd ${SETTE_DIR} 1522 1388 . ./prepare_exe_dir.sh 1523 1389 set_valid_dir … … 1536 1402 set_namelist namelist_cfg sn_cfctl%l_runstat .true. 1537 1403 #set_namelist namelist_ice_cfg ln_icediachk .true. 1538 if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 1539 if [ ${USING_MPMD} == "yes" ] ; then 1540 set_xio_using_server iodef.xml true 1541 else 1542 set_xio_using_server iodef.xml false 1543 fi 1404 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 1405 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 1406 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 1407 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 1408 set_xio_using_server iodef.xml ${USING_MPMD} 1544 1409 cd ${SETTE_DIR} 1545 1410 . ./prepare_job.sh input_WED025.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 1568 1433 ln -sf ../LONG/WED025_LONG_${ITRST}_restart_ice_${L_NPROC}.nc . 1569 1434 done 1570 if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 1571 if [ ${USING_MPMD} == "yes" ] ; then 1572 set_xio_using_server iodef.xml true 1573 else 1574 set_xio_using_server iodef.xml false 1575 fi 1435 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 1436 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 1437 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 1438 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 1439 set_xio_using_server iodef.xml ${USING_MPMD} 1576 1440 cd ${SETTE_DIR} 1577 1441 . ./prepare_job.sh input_WED025.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 1586 1450 cd ${MAIN_DIR} 1587 1451 cd ${SETTE_DIR} 1588 . ./param.cfg1589 . ./all_functions.sh1590 1452 . ./prepare_exe_dir.sh 1591 1453 set_valid_dir … … 1602 1464 set_namelist namelist_cfg jpnj 7 1603 1465 set_namelist namelist_cfg sn_cfctl%l_runstat .true. 1604 if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 1605 if [ ${USING_MPMD} == "yes" ] ; then 1606 set_xio_using_server iodef.xml true 1607 else 1608 set_xio_using_server iodef.xml false 1609 fi 1466 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 1467 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 1468 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 1469 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 1470 set_xio_using_server iodef.xml ${USING_MPMD} 1610 1471 cd ${SETTE_DIR} 1611 1472 . ./prepare_job.sh input_WED025.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 1629 1490 set_namelist namelist_cfg jpnj 4 1630 1491 set_namelist namelist_cfg sn_cfctl%l_runstat .true. 1631 if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 1632 if [ ${USING_MPMD} == "yes" ] ; then 1633 set_xio_using_server iodef.xml true 1634 else 1635 set_xio_using_server iodef.xml false 1636 fi 1492 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 1493 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 1494 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 1495 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 1496 set_xio_using_server iodef.xml ${USING_MPMD} 1637 1497 cd ${SETTE_DIR} 1638 1498 . ./prepare_job.sh input_WED025.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} -
utils/CI/sette/sette_rpt.sh
r14844 r14981 13 13 function get_dorv() { 14 14 if [ $lastchange == 'old' ] ; then 15 dorv=`ls -1rt $vdir/$ nam/$mach/ | tail -1l `15 dorv=`ls -1rt $vdir/$mach/ | tail -1l ` 16 16 dorv=`echo $dorv | sed -e 's:.*/::'` 17 dorv2=`ls -1rt $vdir/$ nam2/$mach/ 2>/dev/null | tail -1l `17 dorv2=`ls -1rt $vdir/$mach/ 2>/dev/null | tail -1l ` 18 18 dorv2=`echo $dorv2 | sed -e 's:.*/::'` 19 19 else … … 44 44 # 45 45 # check if directory is here 46 if [ ! -d $vdir/$ nam/$mach/$dorv]; then46 if [ ! -d $vdir/$mach/$dorv/$nam ]; then 47 47 printf "%-27s %s %s\n" $nam " directory MISSING : " $dorv 48 48 return 49 49 fi 50 50 51 if [ -d $vdir/$ nam/$mach/$dorv]; then51 if [ -d $vdir/$mach/$dorv/$nam ]; then 52 52 # check ocean output 53 53 runtest $vdir $nam $pass RST 54 54 # 55 55 # run restartibility test 56 f1o=$vdir/$ nam/$mach/$dorv/LONG/ocean.output57 f1s=$vdir/$ nam/$mach/$dorv/LONG/run.stat58 f1t=$vdir/$ nam/$mach/$dorv/LONG/tracer.stat59 f2o=$vdir/$ nam/$mach/$dorv/SHORT/ocean.output60 f2s=$vdir/$ nam/$mach/$dorv/SHORT/run.stat61 f2t=$vdir/$ nam/$mach/$dorv/SHORT/tracer.stat56 f1o=$vdir/$mach/$dorv/$nam/LONG/ocean.output 57 f1s=$vdir/$mach/$dorv/$nam/LONG/run.stat 58 f1t=$vdir/$mach/$dorv/$nam/LONG/tracer.stat 59 f2o=$vdir/$mach/$dorv/$nam/SHORT/ocean.output 60 f2s=$vdir/$mach/$dorv/$nam/SHORT/run.stat 61 f2t=$vdir/$mach/$dorv/$nam/SHORT/tracer.stat 62 62 63 63 if [ ! -f $f1s ] && [ ! -f $f1t ] ; then … … 150 150 # 151 151 # check if directory is here 152 if [ ! -d $vdir/$ nam/$mach/$dorv]; then152 if [ ! -d $vdir/$mach/$dorv/$nam ]; then 153 153 printf "%-27s %s %s\n" $nam " directory MISSING : " $dorv 154 154 return 155 155 fi 156 156 # 157 if [ -d $vdir/$ nam/$mach/$dorv]; then157 if [ -d $vdir/$mach/$dorv/$nam ]; then 158 158 # check ocean output 159 159 runtest $vdir $nam $pass REPRO 160 160 # 161 161 # check reproducibility 162 rep1=`ls -1rt $vdir/$ nam/$mach/$dorv/ | grep REPRO | tail -2l | head -1 `163 rep2=`ls -1rt $vdir/$ nam/$mach/$dorv/ | grep REPRO | tail -1l`162 rep1=`ls -1rt $vdir/$mach/$dorv/$nam/ | grep REPRO | tail -2l | head -1 ` 163 rep2=`ls -1rt $vdir/$mach/$dorv/$nam/ | grep REPRO | tail -1l` 164 164 if [ $rep1 == $rep2 ]; then 165 165 rep2='' 166 166 fi 167 f1o=$vdir/$ nam/$mach/$dorv/$rep1/ocean.output168 f1s=$vdir/$ nam/$mach/$dorv/$rep1/run.stat169 f1t=$vdir/$ nam/$mach/$dorv/$rep1/tracer.stat170 f2o=$vdir/$ nam/$mach/$dorv/$rep2/ocean.output171 f2s=$vdir/$ nam/$mach/$dorv/$rep2/run.stat172 f2t=$vdir/$ nam/$mach/$dorv/$rep2/tracer.stat167 f1o=$vdir/$mach/$dorv/$nam/$rep1/ocean.output 168 f1s=$vdir/$mach/$dorv/$nam/$rep1/run.stat 169 f1t=$vdir/$mach/$dorv/$nam/$rep1/tracer.stat 170 f2o=$vdir/$mach/$dorv/$nam/$rep2/ocean.output 171 f2s=$vdir/$mach/$dorv/$nam/$rep2/run.stat 172 f2t=$vdir/$mach/$dorv/$nam/$rep2/tracer.stat 173 173 174 174 if [ ! -f $f1s ] && [ ! -f $f1t ] ; then … … 257 257 # 258 258 # check if reference directory is present 259 if [ ! -d $vdirref/$ nam/$mach/$dorvref]; then259 if [ ! -d $vdirref/$mach/$dorvref/$nam ]; then 260 260 printf "%-27s %s\n" $nam " REFERENCE directory at $dorvref is MISSING" 261 261 return 262 262 fi 263 if [ ! -d $vdir/$ nam/$mach/$dorv]; then263 if [ ! -d $vdir/$mach/$dorv/$nam ]; then 264 264 printf "%-27s %s\n" $nam " VALID directory at $dorv is MISSING" 265 265 return … … 267 267 268 268 # 269 if [ -d $vdir/$ nam/$mach/$dorv]; then270 f1s=$vdir/$ nam/$mach/$dorv/LONG/run.stat271 f1t=$vdir/$ nam/$mach/$dorv/LONG/tracer.stat272 f2s=$vdirref/$ nam/$mach/$dorvref/LONG/run.stat273 f2t=$vdirref/$ nam/$mach/$dorvref/LONG/tracer.stat269 if [ -d $vdir/$mach/$dorv/$nam ]; then 270 f1s=$vdir/$mach/$dorv/$nam/LONG/run.stat 271 f1t=$vdir/$mach/$dorv/$nam/LONG/tracer.stat 272 f2s=$vdirref/$mach/$dorvref/$nam/LONG/run.stat 273 f2t=$vdirref/$mach/$dorvref/$nam/LONG/tracer.stat 274 274 if [ ! -f $f1s ] && [ ! -f $f1t ] ; then 275 275 printf "%-20s %s\n" $nam " incomplete test"; … … 343 343 # 344 344 # check if reference directory is present 345 if [ ! -d $vdirref/$ nam/$mach/$dorvref]; then345 if [ ! -d $vdirref/$mach/$dorvref/$nam ]; then 346 346 return 347 347 fi 348 if [ ! -d $vdir/$ nam/$mach/$dorv]; then348 if [ ! -d $vdir/$mach/$dorv/$nam ]; then 349 349 return 350 350 fi 351 351 352 352 # 353 if [ -d $vdir/$ nam/$mach/$dorv]; then354 f1a=$vdir/$ nam/$mach/$dorv/LONG/timing.output355 f2a=$vdirref/$ nam/$mach/$dorvref/LONG/timing.output353 if [ -d $vdir/$mach/$dorv/$nam ]; then 354 f1a=$vdir/$mach/$dorv/$nam/LONG/timing.output 355 f2a=$vdirref/$mach/$dorvref/$nam/LONG/timing.output 356 356 # 357 357 # Report average CPU time differences (if available) … … 390 390 # no print needed if the repository is not here (already catch before) 391 391 # 392 if [ -d $vdir/$ nam/$mach/$dorv/ ]; then392 if [ -d $vdir/$mach/$dorv/$nam/ ]; then 393 393 # 394 394 # apply check for all ttype directory 395 rep1=$(ls -rt $vdir/$ nam/$mach/$dorv/ | grep -E $ttype)395 rep1=$(ls -rt $vdir/$mach/$dorv/$nam/ | grep -E $ttype) 396 396 for tdir in $rep1 ; do 397 f1o=$vdir/$ nam/$mach/$dorv/$tdir/ocean.output397 f1o=$vdir/$mach/$dorv/$nam/$tdir/ocean.output 398 398 if [ ! -f $f1o ] ; then 399 399 if [ $pass == 0 ]; then printf "%-27s %s %s\n" $nam " ocean.output MISSING : " $dorv ; fi … … 430 430 get_dorv 431 431 # 432 rep=`ls -1rt $vdir/$ nam/$mach/$dorv/ | tail -1l`433 f1s=${vdir}/${ nam}/${mach}/${dorv}/${rep}/run.stat434 f2s=${vdir}/${ nam2}/${mach}/${dorv2}/${rep}/run.stat432 rep=`ls -1rt $vdir/$mach/$dorv/$nam/ | tail -1l` 433 f1s=${vdir}/${mach}/${dorv}/${nam}/${rep}/run.stat 434 f2s=${vdir}/${mach}/${dorv2}/${nam2}/${rep}/run.stat 435 435 # 436 436 if [ -f $f1s ] && [ -f $f2s ] ; then … … 470 470 471 471 mach=${COMPILER} 472 NEMO_VALID=${NEMO_VALIDATION_DIR} 473 NEMO_VALID_REF=${NEMO_VALIDATION_REF} 474 # 475 if [ ! -d $NEMO_VALID ]; then 476 echo "$NEMO_VALID validation directory not found" 477 exit 478 fi 479 # 480 # 481 # Show current revision tag and branch name 482 # 483 echo "" 484 lastchange=`${SVN_CMD} info ${MAIN_DIR} | grep 'Last Changed Rev' | awk '{print $NF}'` 485 revision=`${SVN_CMD} info ${MAIN_DIR} | grep 'Revision' | awk '{print $NF}'` 486 branchname=`${SVN_CMD} info ${MAIN_DIR} | grep ^URL | awk -F ipsl/forge/projets/nemo/svn/ '{print $NF}'` 487 echo "Current code is : $branchname @ r$revision ( last change @ r$lastchange )" 488 [ `${SVN_CMD} status -q ${MAIN_DIR}/{cfgs,tests,src} | wc -l` -ge 1 ] && lastchange=${lastchange}+ 489 490 # overwrite revision or compiler 472 # overwrite revision (later) or compiler 491 473 if [ $# -gt 0 ]; then 492 while getopts r: c:h option; do474 while getopts r:R:c:v:V:h option; do 493 475 case $option in 494 476 c) mach=$OPTARG;; 495 477 r) rev=$OPTARG;; 478 R) refrev=$OPTARG;; 479 v) SETTE_SUB_VAL=$OPTARG;; 480 V) SETTE_SUB_VAL2=$OPTARG 481 if [ -d ${NEMO_VALIDATION_DIR}/${SETTE_SUB_VAL2} ] ; then 482 export NEMO_VALIDATION_REF=${NEMO_VALIDATION_DIR}/${SETTE_SUB_VAL2} 483 else 484 echo "Requested comparison subdirectory: ${NEMO_VALIDATION_DIR}/${SETTE_SUB_VAL2} does not exist" 485 fi 486 ;; 496 487 h | *) echo '' 497 488 echo 'sette_rpt.sh : ' … … 501 492 echo ' -r REVISION_number :' 502 493 echo ' display sette results for the specified revision (set old for the latest revision available for each config)' 494 echo ' -R REFERENCE REVISION_number :' 495 echo ' compare sette results against the specified revision (use to over-ride value set in param.cfg)' 496 echo ' -v sub_dir :' 497 echo ' validation sub-directory below NEMO_VALIDATION_DIR' 498 echo ' -V sub_dir2 :' 499 echo ' 2nd validation sub-directory below NEMO_VALIDATION_DIR' 500 echo ' if set the comparison is between two subdirectory trees beneath NEMO_VALIDATION_DIR' 503 501 echo '' 504 502 exit 42;; … … 506 504 done 507 505 shift $((OPTIND - 1)) 508 fi 509 506 fi 510 507 # if $1 (remaining arguments) 511 if [[ ! -z $1 ]] ; then rev=$1 ; fi 508 if [[ ! -z $1 ]] ; then rev=$1 ; fi 509 510 if [ ! -z $SETTE_SUB_VAL ] ; then 511 export NEMO_VALIDATION_DIR=$NEMO_VALIDATION_DIR/$SETTE_SUB_VAL 512 if [ -d $NEMO_VALIDATION_REF/$SETTE_SUB_VAL ] && [ -z $SETTE_SUB_VAL2 ] ; then 513 while true; do 514 read -p "$NEMO_VALIDATION_REF/$SETTE_SUB_VAL exists. Do you wish to use it as a reference? " yn 515 case $yn in 516 [Yy]* ) export $NEMO_VALIDATION_REF/$SETTE_SUB_VAL; break;; 517 [Nn]* ) echo "Ok, continuing with ${NEMO_VALIDATION_REF}/MAIN as the reference directory" 518 export NEMO_VALIDATION_REF=${NEMO_VALIDATION_REF}/MAIN 519 break 520 ;; 521 * ) echo "Please answer yes or no.";; 522 esac 523 done 524 fi 525 else 526 export NEMO_VALIDATION_DIR=${NEMO_VALIDATION_DIR}/MAIN 527 export NEMO_VALIDATION_REF=${NEMO_VALIDATION_REF}/MAIN 528 fi 529 NEMO_VALID=${NEMO_VALIDATION_DIR} 530 NEMO_VALID_REF=${NEMO_VALIDATION_REF} 531 if [ ! -z $refrev ] ; then 532 NEMO_REV_REF=${refrev} 533 fi 534 # 535 if [ ! -d $NEMO_VALID ]; then 536 echo "$NEMO_VALID validation directory not found" 537 exit 538 fi 539 # 540 # 541 # Show current revision tag and branch name 542 # 543 echo "" 544 lastchange=`${SVN_CMD} info ${MAIN_DIR} | grep 'Last Changed Rev' | awk '{print $NF}'` 545 revision=`${SVN_CMD} info ${MAIN_DIR} | grep 'Revision' | awk '{print $NF}'` 546 branchname=`${SVN_CMD} info ${MAIN_DIR} | grep ^URL | awk -F ipsl/forge/projets/nemo/svn/ '{print $NF}'` 547 echo "Current code is : $branchname @ r$revision ( last change @ r$lastchange )" 548 [ `${SVN_CMD} status -q ${MAIN_DIR}/{cfgs,tests,src} | wc -l` -ge 1 ] && lastchange=${lastchange}+ 512 549 513 550 # by default use the current lastchanged revision … … 541 578 echo "" 542 579 echo " !----restart----! " 543 for restart_test in WGYRE_PISCES_ST WORCA2_ICE_PISCES_ST WORCA2_OFF_PISCES_ST WAMM12_ST WORCA2_SAS_ICE_ST WAGRIF_DEMO_ST WWED025_ST WISOMIP+_ST WOVERFLOW_ST WLOCK_EXCHANGE_ST WVORTEX_ST WICE_AGRIF_ST WSWG_ST580 for restart_test in GYRE_PISCES ORCA2_ICE_PISCES ORCA2_OFF_PISCES AMM12 ORCA2_SAS_ICE AGRIF_DEMO WED025 ISOMIP+ OVERFLOW LOCK_EXCHANGE VORTEX ICE_AGRIF SWG 544 581 do 545 582 resttest $NEMO_VALID $restart_test $pass … … 549 586 echo "" 550 587 echo " !----repro----! " 551 for repro_test in WGYRE_PISCES_ST WORCA2_ICE_PISCES_ST WORCA2_OFF_PISCES_ST WAMM12_ST WORCA2_SAS_ICE_ST WORCA2_ICE_OBS_ST WAGRIF_DEMO_ST WWED025_ST WISOMIP+_ST WVORTEX_ST WICE_AGRIF_ST WSWG_ST588 for repro_test in GYRE_PISCES ORCA2_ICE_PISCES ORCA2_OFF_PISCES AMM12 ORCA2_SAS_ICE ORCA2_ICE_OBS AGRIF_DEMO WED025 ISOMIP+ VORTEX ICE_AGRIF SWG 552 589 do 553 590 reprotest $NEMO_VALID $repro_test $pass … … 557 594 echo "" 558 595 echo " !----agrif check----! " 559 dir1= WAGRIF_DEMO_NOAGRIF_ST560 dir2= WAGRIF_DEMO_ST596 dir1=AGRIF_DEMO_NOAGRIF 597 dir2=AGRIF_DEMO 561 598 identictest $NEMO_VALID $dir1 $dir2 $pass 562 599 # … … 576 613 echo "REFERENCE directory : $NEMO_VALID_REF at rev $NEMO_REV_REF" 577 614 echo '' 578 checklist=( WGYRE_PISCES_ST WORCA2_ICE_PISCES_ST WORCA2_OFF_PISCES_ST WAMM12_ST WORCA2_SAS_ICE_ST WAGRIF_DEMO_ST WWED025_ST WISOMIP+_ST WVORTEX_ST WICE_AGRIF_ST WOVERFLOW_ST WLOCK_EXCHANGE_ST WSWG_ST)615 checklist=(GYRE_PISCES ORCA2_ICE_PISCES ORCA2_OFF_PISCES AMM12 ORCA2_SAS_ICE AGRIF_DEMO WED025 ISOMIP+ VORTEX ICE_AGRIF OVERFLOW LOCK_EXCHANGE SWG) 579 616 for repro_test in ${checklist[@]} 580 617 do -
utils/CI/sette/sette_test-cases.sh
r14826 r14981 31 31 # MPIRUN_FLAG : flag to run in parallel (MPI) "yes" 32 32 # to run in sequential mode (NB_PROC = 1) "no" 33 # USING_XIOS : flag to control the activation of key_xios34 # "yes" to compile using key_xios and link to the external XIOS library35 # "no" to compile without key_xios and link to the old IOIPSL library36 # USING_MPMD : flag to control the use of stand-alone IO servers37 # requires USING_XIOS="yes"38 # "yes" to run in MPMD (detached) mode with stand-alone IO servers39 # "no" to run in SPMD (attached) mode without separate IO servers40 33 # NUM_XIOSERVERS : number of stand-alone IO servers to employ 41 34 # set to zero if USING_MPMD="no" 42 # USING_LOOP_FUSION : flag to control the activation of key_loop_fusion43 # "yes" to use the loop fusion adv routines when halo = 244 # "no" to use standard adv routines45 35 # 46 36 # Principal script is sette_test-cases.sh, that calls … … 107 97 export MPIRUN_FLAG="yes" 108 98 # 109 export ADD_KEYS=""110 export DEL_KEYS=""111 if [ ${USING_XIOS} == "yes" ]112 then113 export ADD_KEYS="${ADD_KEYS} key_xios"114 else115 export DEL_KEYS="${DEL_KEYS} key_xios"116 fi117 #118 if [ ${ADD_NOSIGNEDZERO} == "yes" ]119 then120 export ADD_KEYS="${ADD_KEYS} key_nosignedzero"121 else122 export DEL_KEYS="${DEL_KEYS} key_nosignedzero"123 fi124 #125 if [ ${USING_LOOP_FUSION} == "yes" ]126 then127 export ADD_KEYS="${ADD_KEYS} key_loop_fusion"128 fi129 #130 if [ ${NOT_USING_QCO} == "yes" ]131 then132 export DEL_KEYS="${DEL_KEYS} key_qco key_linssh"133 fi134 #135 if [ ${USING_RK3} == "yes" ]136 then137 export ADD_KEYS="${ADD_KEYS} key_qco key_RK3"138 fi139 #140 99 # Settings which control the use of stand alone servers (only relevant if using xios) 141 100 # … … 149 108 fi 150 109 # 151 #152 if [ ${USING_MPMD} == "yes" ] && [ ${USING_XIOS} == "no" ]153 then154 echo "Incompatible choices. MPMD mode requires the XIOS server"155 exit156 fi157 158 110 # Directory to run the tests 159 111 CONFIG_DIR0=${MAIN_DIR}/cfgs … … 175 127 # WAD 176 128 129 . ./all_functions.sh 177 130 for config in ${TEST_CONFIGS[@]} 178 131 do … … 181 134 # OVERFLOW 182 135 # --------- 183 if [ ${config} == "OVERFLOW" ] && [ ${DO_RESTART} == "1" ]; then184 ## Restartability tests for OVERFLOW136 if [ ${config} == "OVERFLOW" ] ; then 137 SETTE_CONFIG="OVERFLOW"${SETTE_STG} 185 138 if [ $( echo ${CMP_NAM} | grep -ic debug ) -eq 1 ] 186 139 then … … 190 143 fi 191 144 ITRST=$( printf "%08d" $(( ${ITEND} / 2 )) ) 145 cd ${MAIN_DIR} 146 # 147 # 148 clean_config OVERFLOW ${SETTE_CONFIG} 'tests' 149 # 150 sync_config OVERFLOW ${SETTE_CONFIG} 'tests' 151 # 152 . ./makenemo -m ${CMP_NAM} -n ${SETTE_CONFIG} -a OVERFLOW -j ${CMPL_CORES} add_key "${ADD_KEYS}" del_key "${DEL_KEYS}" 153 fi 154 if [ ${config} == "OVERFLOW" ] && [ ${DO_RESTART} == "1" ] ; then 155 ## Restartability tests for OVERFLOW 192 156 export TEST_NAME="LONG" 193 cd ${MAIN_DIR} 194 # 195 . ${SETTE_DIR}/all_functions.sh 196 # 197 clean_config OVERFLOW OVERFLOW_ST 'tests' 198 # 199 sync_config OVERFLOW OVERFLOW_ST 'tests' 200 # 201 . ./makenemo -m ${CMP_NAM} -n OVERFLOW_ST -a OVERFLOW -j 8 add_key "${ADD_KEYS}" del_key "${DEL_KEYS}" 202 cd ${SETTE_DIR} 203 . ./param.cfg 204 . ./all_functions.sh 157 cd ${SETTE_DIR} 205 158 . ./prepare_exe_dir.sh 206 159 set_valid_dir … … 215 168 set_namelist namelist_cfg nn_stock $(( ${ITEND} / 2 )) 216 169 set_namelist namelist_cfg sn_cfctl%l_runstat .true. 217 if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 218 if [ ${USING_MPMD} == "yes" ] ; then 219 set_xio_using_server iodef.xml true 220 else 221 set_xio_using_server iodef.xml false 222 fi 170 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 171 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 172 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 173 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 174 set_xio_using_server iodef.xml ${USING_MPMD} 223 175 cd ${SETTE_DIR} 224 176 . ./prepare_job.sh input_EMPTY.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 238 190 set_namelist namelist_cfg nn_rstctl 2 239 191 set_namelist namelist_cfg cn_ocerst_in \"OVF_LONG_${ITRST}_restart\" 240 if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 241 if [ ${USING_MPMD} == "yes" ] ; then 242 set_xio_using_server iodef.xml true 243 else 244 set_xio_using_server iodef.xml false 245 fi 192 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 193 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 194 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 195 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 196 set_xio_using_server iodef.xml ${USING_MPMD} 246 197 ln -sf ../LONG/OVF_LONG_${ITRST}_restart.nc . 247 198 … … 272 223 ## 273 224 cd ${SETTE_DIR} 274 . ./param.cfg275 . ./all_functions.sh276 225 . ./prepare_exe_dir.sh 277 226 set_valid_dir … … 285 234 set_namelist namelist_cfg nn_it000 1 286 235 set_namelist namelist_cfg nn_itend ${ITEND} 287 if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 288 if [ ${USING_MPMD} == "yes" ] ; then 289 set_xio_using_server iodef.xml true 290 else 291 set_xio_using_server iodef.xml false 292 fi 236 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 237 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 238 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 239 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 240 set_xio_using_server iodef.xml ${USING_MPMD} 293 241 cd ${SETTE_DIR} 294 242 . ./prepare_job.sh input_EMPTY.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 302 250 # LOCK_EXCHANGE 303 251 # -------------- 304 if [ ${config} == "LOCK_EXCHANGE" ] && [ ${DO_RESTART} == "1" ]; then305 ## Restartability tests for LOCK_EXCHANGE252 if [ ${config} == "LOCK_EXCHANGE" ] ; then 253 SETTE_CONFIG="LOCK_EXCHANGE"${SETTE_STG} 306 254 if [ $( echo ${CMP_NAM} | grep -ic debug ) -eq 1 ] 307 255 then … … 311 259 fi 312 260 ITRST=$( printf "%08d" $(( ${ITEND} / 2 )) ) 261 cd ${MAIN_DIR} 262 # 263 # syncronisation if target directory/file exist (not done by makenemo) 264 # 265 clean_config LOCK_EXCHANGE ${SETTE_CONFIG} 'tests' 266 # 267 sync_config LOCK_EXCHANGE ${SETTE_CONFIG} 'tests' 268 # 269 . ./makenemo -m ${CMP_NAM} -n ${SETTE_CONFIG} -a LOCK_EXCHANGE -j ${CMPL_CORES} add_key "${ADD_KEYS}" del_key "${DEL_KEYS}" 270 fi 271 if [ ${config} == "LOCK_EXCHANGE" ] && [ ${DO_RESTART} == "1" ] ; then 272 ## Restartability tests for LOCK_EXCHANGE 313 273 export TEST_NAME="LONG" 314 cd ${MAIN_DIR} 315 # 316 # syncronisation if target directory/file exist (not done by makenemo) 317 . ${SETTE_DIR}/all_functions.sh 318 # 319 clean_config LOCK_EXCHANGE LOCK_EXCHANGE_ST 'tests' 320 # 321 sync_config LOCK_EXCHANGE LOCK_EXCHANGE_ST 'tests' 322 # 323 . ./makenemo -m ${CMP_NAM} -n LOCK_EXCHANGE_ST -a LOCK_EXCHANGE -j 8 add_key "${ADD_KEYS}" del_key "${DEL_KEYS}" 324 cd ${SETTE_DIR} 325 . ./param.cfg 326 . ./all_functions.sh 274 cd ${SETTE_DIR} 327 275 . ./prepare_exe_dir.sh 328 276 set_valid_dir … … 337 285 set_namelist namelist_cfg nn_stock $(( ${ITEND} / 2 )) 338 286 set_namelist namelist_cfg sn_cfctl%l_runstat .true. 339 if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 340 if [ ${USING_MPMD} == "yes" ] ; then 341 set_xio_using_server iodef.xml true 342 else 343 set_xio_using_server iodef.xml false 344 fi 287 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 288 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 289 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 290 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 291 set_xio_using_server iodef.xml ${USING_MPMD} 345 292 cd ${SETTE_DIR} 346 293 . ./prepare_job.sh input_EMPTY.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 360 307 set_namelist namelist_cfg nn_rstctl 2 361 308 set_namelist namelist_cfg cn_ocerst_in \"LOCK_LONG_${ITRST}_restart\" 362 if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 363 if [ ${USING_MPMD} == "yes" ] ; then 364 set_xio_using_server iodef.xml true 365 else 366 set_xio_using_server iodef.xml false 367 fi 309 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 310 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 311 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 312 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 313 set_xio_using_server iodef.xml ${USING_MPMD} 368 314 ln -sf ../LONG/LOCK_LONG_${ITRST}_restart.nc . 369 315 … … 394 340 ## 395 341 cd ${SETTE_DIR} 396 . ./param.cfg397 . ./all_functions.sh398 342 . ./prepare_exe_dir.sh 399 343 set_valid_dir … … 405 349 rm namelist_*_*_*_* 406 350 cp -pL ${CONFIG_DIR}/${NEW_CONF}/EXP00/$file namelist_cfg 407 if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi408 351 set_namelist namelist_cfg nn_it000 1 409 352 set_namelist namelist_cfg nn_itend ${ITEND} 410 if [ ${USING_MPMD} == "yes" ] ; then411 set_xio_using_server iodef.xml true412 else413 set_xio_using_server iodef.xml false414 fi353 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 354 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 355 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 356 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 357 set_xio_using_server iodef.xml ${USING_MPMD} 415 358 cd ${SETTE_DIR} 416 359 . ./prepare_job.sh input_EMPTY.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 425 368 # VORTEX 426 369 # --------- 427 if [ ${config} == "VORTEX" ] && [ ${DO_RESTART} == "1" ]; then428 ## Restartability tests for VORTEX 370 if [ ${config} == "VORTEX" ] ; then 371 SETTE_CONFIG="VORTEX"${SETTE_STG} 429 372 if [ $( echo ${CMP_NAM} | grep -ic debug ) -eq 1 ] 430 373 then … … 435 378 ITRST=$( printf "%08d" $(( ${ITEND} / 2 )) ) 436 379 ITRST_1=$( printf "%08d" $(( ${ITEND} * 3 / 2 )) ) 380 cd ${MAIN_DIR} 381 # 382 # syncronisation if target directory/file exist (not done by makenemo) 383 # 384 clean_config VORTEX ${SETTE_CONFIG} 'tests' 385 # 386 sync_config VORTEX ${SETTE_CONFIG} 'tests' 387 # 388 . ./makenemo -m ${CMP_NAM} -n ${SETTE_CONFIG} -a VORTEX -j ${CMPL_CORES} add_key "${ADD_KEYS}" del_key "${DEL_KEYS}" 389 fi 390 if [ ${config} == "VORTEX" ] && [ ${DO_RESTART} == "1" ] ; then 391 ## Restartability tests for VORTEX 437 392 export TEST_NAME="LONG" 438 cd ${MAIN_DIR} 439 # 440 # syncronisation if target directory/file exist (not done by makenemo) 441 . ${SETTE_DIR}/all_functions.sh 442 # 443 clean_config VORTEX VORTEX_ST 'tests' 444 # 445 sync_config VORTEX VORTEX_ST 'tests' 446 # 447 . ./makenemo -m ${CMP_NAM} -n VORTEX_ST -a VORTEX -j 8 add_key "${ADD_KEYS}" del_key "${DEL_KEYS}" 448 cd ${SETTE_DIR} 449 . ./param.cfg 450 . ./all_functions.sh 393 cd ${SETTE_DIR} 451 394 . ./prepare_exe_dir.sh 452 395 set_valid_dir … … 461 404 set_namelist namelist_cfg nn_stock $(( ${ITEND} / 2 )) 462 405 set_namelist namelist_cfg sn_cfctl%l_runstat .true. 406 #set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 407 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 408 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 409 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 463 410 464 411 set_namelist 1_namelist_cfg cn_exp \"VORTEX_LONG\" … … 467 414 set_namelist 1_namelist_cfg nn_stock $(( ${ITEND} * 3 / 2 )) 468 415 set_namelist 1_namelist_cfg sn_cfctl%l_runstat .true. 416 set_namelist_opt 1_namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 417 set_namelist_opt 1_namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 418 set_namelist_opt 1_namelist_cfg ln_tile ${USING_TILING} .true. .false. 469 419 470 #if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 471 if [ ${USING_MPMD} == "yes" ] ; then 472 set_xio_using_server iodef.xml true 473 else 474 set_xio_using_server iodef.xml false 475 fi 420 set_xio_using_server iodef.xml ${USING_MPMD} 476 421 cd ${SETTE_DIR} 477 422 . ./prepare_job.sh input_EMPTY.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 491 436 set_namelist namelist_cfg nn_rstctl 2 492 437 set_namelist namelist_cfg cn_ocerst_in \"VORTEX_LONG_${ITRST}_restart\" 438 #set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 439 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 440 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 441 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 493 442 494 443 set_namelist 1_namelist_cfg cn_exp \"VORTEX_SHORT\" … … 500 449 set_namelist 1_namelist_cfg nn_rstctl 2 501 450 set_namelist 1_namelist_cfg cn_ocerst_in \"VORTEX_LONG_${ITRST_1}_restart\" 451 set_namelist_opt 1_namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 452 set_namelist_opt 1_namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 453 set_namelist_opt 1_namelist_cfg ln_tile ${USING_TILING} .true. .false. 502 454 503 #if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 504 if [ ${USING_MPMD} == "yes" ] ; then 505 set_xio_using_server iodef.xml true 506 else 507 set_xio_using_server iodef.xml false 508 fi 455 set_xio_using_server iodef.xml ${USING_MPMD} 509 456 if [ $NPROC -eq 1 ] ; then 510 457 ln -sf ../LONG/VORTEX_LONG_${ITRST}_restart.nc . … … 530 477 cd ${MAIN_DIR} 531 478 cd ${SETTE_DIR} 532 . ./param.cfg533 . ./all_functions.sh534 479 . ./prepare_exe_dir.sh 535 480 set_valid_dir … … 546 491 set_namelist namelist_cfg jpnj 3 547 492 set_namelist namelist_cfg sn_cfctl%l_runstat .true. 493 #if [ ${USING_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 494 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 495 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 496 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 548 497 549 498 set_namelist 1_namelist_cfg cn_exp \"VORTEX_23\" … … 554 503 set_namelist 1_namelist_cfg jpnj 3 555 504 set_namelist 1_namelist_cfg sn_cfctl%l_runstat .true. 556 557 #if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 505 set_namelist_opt 1_namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 506 set_namelist_opt 1_namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 507 set_namelist_opt 1_namelist_cfg ln_tile ${USING_TILING} .true. .false. 508 558 509 if [ ${USING_MPMD} == "yes" ] ; then 559 510 set_xio_using_server iodef.xml true … … 583 534 set_namelist namelist_cfg jpnj 2 584 535 set_namelist namelist_cfg sn_cfctl%l_runstat .true. 536 #set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 537 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 538 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 539 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 585 540 586 541 set_namelist 1_namelist_cfg cn_exp \"VORTEX_32\" … … 591 546 set_namelist 1_namelist_cfg jpnj 2 592 547 set_namelist 1_namelist_cfg sn_cfctl%l_runstat .true. 593 594 #if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 595 if [ ${USING_MPMD} == "yes" ] ; then 596 set_xio_using_server iodef.xml true 597 else 598 set_xio_using_server iodef.xml false 599 fi 548 set_namelist_opt 1_namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 549 set_namelist_opt 1_namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 550 set_namelist_opt 1_namelist_cfg ln_tile ${USING_TILING} .true. .false. 551 552 set_xio_using_server iodef.xml ${USING_MPMD} 600 553 cd ${SETTE_DIR} 601 554 . ./prepare_job.sh input_EMPTY.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 609 562 # ICE_AGRIF 610 563 # --------- 611 if [ ${config} == "ICE_AGRIF" ] && [ ${DO_RESTART} == "1" ]; then612 ## Restartability tests for ICE_AGRIF 564 if [ ${config} == "ICE_AGRIF" ] ; then 565 SETTE_CONFIG="ICE_AGRIF"${SETTE_STG} 613 566 if [ $( echo ${CMP_NAM} | grep -ic debug ) -eq 1 ] 614 567 then … … 619 572 ITRST=$( printf "%08d" $(( ${ITEND} / 2 )) ) 620 573 ITRST_1=$( printf "%08d" $(( ${ITEND} * 3 / 2 )) ) 574 cd ${MAIN_DIR} 575 # 576 # syncronisation if target directory/file exist (not done by makenemo) 577 # 578 clean_config ICE_AGRIF ${SETTE_CONFIG} 'tests' 579 # 580 sync_config ICE_AGRIF ${SETTE_CONFIG} 'tests' 581 # 582 # ICE_AGRIF uses linssh so remove key_qco if added by default 583 . ./makenemo -m ${CMP_NAM} -n ${SETTE_CONFIG} -a ICE_AGRIF -j ${CMPL_CORES} add_key "${ADD_KEYS/key_qco/}" del_key "${DEL_KEYS}" 584 fi 585 if [ ${config} == "ICE_AGRIF" ] && [ ${DO_RESTART} == "1" ] ; then 586 ## Restartability tests for ICE_AGRIF 621 587 export TEST_NAME="LONG" 622 cd ${MAIN_DIR} 623 # 624 # syncronisation if target directory/file exist (not done by makenemo) 625 . ${SETTE_DIR}/all_functions.sh 626 # 627 clean_config ICE_AGRIF ICE_AGRIF_ST 'tests' 628 # 629 sync_config ICE_AGRIF ICE_AGRIF_ST 'tests' 630 # 631 . ./makenemo -m ${CMP_NAM} -n ICE_AGRIF_ST -a ICE_AGRIF -j 8 add_key "${ADD_KEYS}" del_key "${DEL_KEYS}" 632 cd ${SETTE_DIR} 633 . ./param.cfg 634 . ./all_functions.sh 588 cd ${SETTE_DIR} 635 589 . ./prepare_exe_dir.sh 636 590 set_valid_dir … … 645 599 set_namelist namelist_cfg nn_stock $(( ${ITEND} / 2 )) 646 600 set_namelist namelist_cfg sn_cfctl%l_runstat .true. 601 #set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 602 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 603 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 604 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 647 605 648 606 set_namelist 1_namelist_cfg cn_exp \"ICE_AGRIF_LONG\" … … 651 609 set_namelist 1_namelist_cfg nn_stock $(( ${ITEND} * 3 / 2 )) 652 610 set_namelist 1_namelist_cfg sn_cfctl%l_runstat .true. 653 654 #if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 655 if [ ${USING_MPMD} == "yes" ] ; then 656 set_xio_using_server iodef.xml true 657 else 658 set_xio_using_server iodef.xml false 659 fi 611 set_namelist_opt 1_namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 612 set_namelist_opt 1_namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 613 set_namelist_opt 1_namelist_cfg ln_tile ${USING_TILING} .true. .false. 614 615 set_xio_using_server iodef.xml ${USING_MPMD} 660 616 cd ${SETTE_DIR} 661 617 . ./prepare_job.sh input_ICE_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 676 632 set_namelist namelist_cfg cn_ocerst_in \"ICE_AGRIF_LONG_${ITRST}_restart\" 677 633 set_namelist namelist_ice_cfg cn_icerst_in \"ICE_AGRIF_LONG_${ITRST}_restart_ice\" 634 #set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 635 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 636 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 637 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 678 638 679 639 set_namelist 1_namelist_cfg cn_exp \"ICE_AGRIF_SHORT\" … … 686 646 set_namelist 1_namelist_cfg cn_ocerst_in \"ICE_AGRIF_LONG_${ITRST_1}_restart\" 687 647 set_namelist 1_namelist_ice_cfg cn_icerst_in \"ICE_AGRIF_LONG_${ITRST_1}_restart_ice\" 688 689 690 #if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 691 if [ ${USING_MPMD} == "yes" ] ; then 692 set_xio_using_server iodef.xml true 693 else 694 set_xio_using_server iodef.xml false 695 fi 648 set_namelist_opt 1_namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 649 set_namelist_opt 1_namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 650 set_namelist_opt 1_namelist_cfg ln_tile ${USING_TILING} .true. .false. 651 652 653 set_xio_using_server iodef.xml ${USING_MPMD} 696 654 if [ $NPROC -eq 1 ] ; then 697 655 ln -sf ../LONG/ICE_AGRIF_LONG_${ITRST}_restart.nc . … … 723 681 cd ${MAIN_DIR} 724 682 cd ${SETTE_DIR} 725 . ./param.cfg726 . ./all_functions.sh727 683 . ./prepare_exe_dir.sh 728 684 set_valid_dir … … 739 695 set_namelist namelist_cfg jpnj 3 740 696 set_namelist namelist_cfg sn_cfctl%l_runstat .true. 697 #set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 698 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 699 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 700 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 741 701 742 702 set_namelist 1_namelist_cfg cn_exp \"ICE_AGRIF_23\" … … 747 707 set_namelist 1_namelist_cfg jpnj 3 748 708 set_namelist 1_namelist_cfg sn_cfctl%l_runstat .true. 749 750 #if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 751 if [ ${USING_MPMD} == "yes" ] ; then 752 set_xio_using_server iodef.xml true 753 else 754 set_xio_using_server iodef.xml false 755 fi 709 set_namelist_opt 1_namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 710 set_namelist_opt 1_namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 711 set_namelist_opt 1_namelist_cfg ln_tile ${USING_TILING} .true. .false. 712 713 set_xio_using_server iodef.xml ${USING_MPMD} 756 714 cd ${SETTE_DIR} 757 715 . ./prepare_job.sh input_ICE_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 776 734 set_namelist namelist_cfg jpnj 2 777 735 set_namelist namelist_cfg sn_cfctl%l_runstat .true. 736 #set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 737 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 738 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 739 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 778 740 779 741 set_namelist 1_namelist_cfg cn_exp \"ICE_AGRIF_32\" … … 784 746 set_namelist 1_namelist_cfg jpnj 2 785 747 set_namelist 1_namelist_cfg sn_cfctl%l_runstat .true. 786 787 #if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 788 if [ ${USING_MPMD} == "yes" ] ; then 789 set_xio_using_server iodef.xml true 790 else 791 set_xio_using_server iodef.xml false 792 fi 748 set_namelist_opt 1_namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 749 set_namelist_opt 1_namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 750 set_namelist_opt 1_namelist_cfg ln_tile ${USING_TILING} .true. .false. 751 752 set_xio_using_server iodef.xml ${USING_MPMD} 793 753 cd ${SETTE_DIR} 794 754 . ./prepare_job.sh input_ICE_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 801 761 # ISOMIP+ 802 762 # ------ 803 if [ ${config} == "ISOMIP+" ] && [ ${DO_RESTART} == "1" ]; then804 ## Restartability tests 763 if [ ${config} == "ISOMIP+" ] ; then 764 SETTE_CONFIG="ISOMIP+"${SETTE_STG} 805 765 if [ $( echo ${CMP_NAM} | grep -ic debug ) -eq 1 ] 806 766 then … … 810 770 fi 811 771 ITRST=$( printf "%08d" $(( ${ITEND} / 2 )) ) 772 cd ${MAIN_DIR} 773 # 774 # syncronisation if target directory/file exist (not done by makenemo) 775 # 776 clean_config ISOMIP+ ${SETTE_CONFIG} 'tests' 777 # 778 sync_config ISOMIP+ ${SETTE_CONFIG} 'tests' 779 # 780 # ISOMIP+ uses ln_hpg_isf so remove key_qco if added by default 781 . ./makenemo -m ${CMP_NAM} -n ${SETTE_CONFIG} -a ISOMIP+ -j ${CMPL_CORES} add_key "${ADD_KEYS/key_qco/}" del_key "${DEL_KEYS}" 782 fi 783 if [ ${config} == "ISOMIP+" ] && [ ${DO_RESTART} == "1" ] ; then 784 ## Restartability tests 812 785 export TEST_NAME="LONG" 813 cd ${MAIN_DIR} 814 # 815 # syncronisation if target directory/file exist (not done by makenemo) 816 . ${SETTE_DIR}/all_functions.sh 817 # 818 clean_config ISOMIP+ ISOMIP+_ST 'tests' 819 # 820 sync_config ISOMIP+ ISOMIP+_ST 'tests' 821 # 822 . ./makenemo -m ${CMP_NAM} -n ISOMIP+_ST -a ISOMIP+ -j 8 add_key "${ADD_KEYS}" del_key "${DEL_KEYS}" 823 cd ${SETTE_DIR} 824 . ./param.cfg 825 . ./all_functions.sh 786 cd ${SETTE_DIR} 826 787 . ./prepare_exe_dir.sh 827 788 set_valid_dir … … 838 799 set_namelist namelist_cfg jpnj 3 839 800 set_namelist namelist_cfg sn_cfctl%l_runstat .true. 840 if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 841 if [ ${USING_MPMD} == "yes" ] ; then 842 set_xio_using_server iodef.xml true 843 else 844 set_xio_using_server iodef.xml false 845 fi 801 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 802 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 803 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 804 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 805 set_xio_using_server iodef.xml ${USING_MPMD} 846 806 cd ${SETTE_DIR} 847 807 . ./prepare_job.sh input_ISOMIP+.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 863 823 set_namelist namelist_cfg sn_cfctl%l_runstat .true. 864 824 set_namelist namelist_cfg cn_ocerst_in \"ISOMIP+_LONG_${ITRST}_restart\" 865 if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 866 if [ ${USING_MPMD} == "yes" ] ; then 867 set_xio_using_server iodef.xml true 868 else 869 set_xio_using_server iodef.xml false 870 fi 825 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 826 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 827 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 828 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 829 set_xio_using_server iodef.xml ${USING_MPMD} 871 830 for (( i=1; i<=$NPROC; i++)) ; do 872 831 L_NPROC=$(( $i - 1 )) … … 893 852 cd ${MAIN_DIR} 894 853 cd ${SETTE_DIR} 895 . ./param.cfg896 . ./all_functions.sh897 854 . ./prepare_exe_dir.sh 898 855 set_valid_dir … … 908 865 set_namelist namelist_cfg jpnj 3 909 866 set_namelist namelist_cfg sn_cfctl%l_runstat .true. 910 if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 911 if [ ${USING_MPMD} == "yes" ] ; then 912 set_xio_using_server iodef.xml true 913 else 914 set_xio_using_server iodef.xml false 915 fi 867 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 868 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 869 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 870 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 871 set_xio_using_server iodef.xml ${USING_MPMD} 916 872 cd ${SETTE_DIR} 917 873 . ./prepare_job.sh input_ISOMIP+.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 934 890 set_namelist namelist_cfg jpnj 4 935 891 set_namelist namelist_cfg sn_cfctl%l_runstat .true. 936 if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 937 if [ ${USING_MPMD} == "yes" ] ; then 938 set_xio_using_server iodef.xml true 939 else 940 set_xio_using_server iodef.xml false 941 fi 892 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 893 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 894 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 895 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 896 set_xio_using_server iodef.xml ${USING_MPMD} 942 897 cd ${SETTE_DIR} 943 898 . ./prepare_job.sh input_ISOMIP+.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 951 906 # SWG 952 907 # --------- 953 if [ ${config} == "SWG" ] && [ ${ DO_RESTART} == "1" ] && [ ${NOT_USING_QCO} == "no" ] ; then954 ## Restartability tests for SWG 908 if [ ${config} == "SWG" ] && [ ${USING_QCO} == "yes" ] ; then 909 SETTE_CONFIG="SWG"${SETTE_STG} 955 910 if [ $( echo ${CMP_NAM} | grep -ic debug ) -eq 1 ] 956 911 then … … 960 915 fi 961 916 ITRST=$( printf "%08d" $(( ${ITEND} / 2 )) ) 917 cd ${MAIN_DIR} 918 # 919 # syncronisation if target directory/file exist (not done by makenemo) 920 # 921 clean_config SWG ${SETTE_CONFIG} 'tests' 922 # 923 sync_config SWG ${SETTE_CONFIG} 'tests' 924 # 925 . ./makenemo -m ${CMP_NAM} -n ${SETTE_CONFIG} -a SWG -j ${CMPL_CORES} add_key "${ADD_KEYS}" del_key "${DEL_KEYS}" 926 fi 927 if [ ${config} == "SWG" ] && [ ${DO_RESTART} == "1" ] && [ ${USING_QCO} == "yes" ] ; then 928 ## Restartability tests for SWG 962 929 export TEST_NAME="LONG" 963 cd ${MAIN_DIR} 964 # 965 # syncronisation if target directory/file exist (not done by makenemo) 966 . ${SETTE_DIR}/all_functions.sh 967 # 968 clean_config SWG SWG_ST 'tests' 969 # 970 sync_config SWG SWG_ST 'tests' 971 # 972 . ./makenemo -m ${CMP_NAM} -n SWG_ST -a SWG -j 8 add_key "${ADD_KEYS}" del_key "${DEL_KEYS}" 973 cd ${SETTE_DIR} 974 . ./param.cfg 975 . ./all_functions.sh 930 cd ${SETTE_DIR} 976 931 . ./prepare_exe_dir.sh 977 932 set_valid_dir … … 986 941 set_namelist namelist_cfg nn_stock $(( ${ITEND} / 2 )) 987 942 set_namelist namelist_cfg sn_cfctl%l_runstat .true. 943 #set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 944 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 945 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 946 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 988 947 989 #if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 990 if [ ${USING_MPMD} == "yes" ] ; then 991 set_xio_using_server iodef.xml true 992 else 993 set_xio_using_server iodef.xml false 994 fi 948 set_xio_using_server iodef.xml ${USING_MPMD} 995 949 cd ${SETTE_DIR} 996 950 . ./prepare_job.sh input_EMPTY.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 1011 965 set_namelist namelist_cfg cn_ocerst_in \"SWG_LONG_${ITRST}_restart\" 1012 966 1013 #if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 1014 if [ ${USING_MPMD} == "yes" ] ; then 1015 set_xio_using_server iodef.xml true 1016 else 1017 set_xio_using_server iodef.xml false 1018 fi 967 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 968 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 969 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 970 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 971 set_xio_using_server iodef.xml ${USING_MPMD} 1019 972 if [ $NPROC -eq 1 ] ; then 1020 973 ln -sf ../LONG/SWG_LONG_${ITRST}_restart.nc . … … 1032 985 fi 1033 986 1034 if [ ${config} == "SWG" ] && [ ${DO_REPRO} == "1" ] && [ ${ NOT_USING_QCO} == "no" ] ; then987 if [ ${config} == "SWG" ] && [ ${DO_REPRO} == "1" ] && [ ${USING_QCO} == "yes" ] ; then 1035 988 1036 989 ## Reproducibility tests for SWG … … 1038 991 cd ${MAIN_DIR} 1039 992 cd ${SETTE_DIR} 1040 . ./param.cfg1041 . ./all_functions.sh1042 993 . ./prepare_exe_dir.sh 1043 994 set_valid_dir … … 1057 1008 1058 1009 1059 #if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 1060 if [ ${USING_MPMD} == "yes" ] ; then 1061 set_xio_using_server iodef.xml true 1062 else 1063 set_xio_using_server iodef.xml false 1064 fi 1010 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 1011 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 1012 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 1013 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 1014 set_xio_using_server iodef.xml ${USING_MPMD} 1065 1015 cd ${SETTE_DIR} 1066 1016 . ./prepare_job.sh input_EMPTY.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID} … … 1087 1037 set_namelist namelist_cfg sn_cfctl%l_prtctl .true. 1088 1038 1089 #if [ ${SETTE_TIMING} == "yes" ] ; then set_namelist namelist_cfg ln_timing .true. ; fi 1090 if [ ${USING_MPMD} == "yes" ] ; then 1091 set_xio_using_server iodef.xml true 1092 else 1093 set_xio_using_server iodef.xml false 1094 fi 1039 set_namelist_opt namelist_cfg ln_timing ${USING_TIMING} .true. .false. 1040 set_namelist_opt namelist_cfg nn_hls ${USING_EXTRA_HALO} 2 1 1041 set_namelist_opt namelist_cfg nn_comm ${USING_COLLECTIVES} 2 1 1042 set_namelist_opt namelist_cfg ln_tile ${USING_TILING} .true. .false. 1043 set_xio_using_server iodef.xml ${USING_MPMD} 1095 1044 cd ${SETTE_DIR} 1096 1045 . ./prepare_job.sh input_EMPTY.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID}
Note: See TracChangeset
for help on using the changeset viewer.