New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 11536 for NEMO/trunk/tests/BENCH – NEMO

Ignore:
Timestamp:
2019-09-11T15:54:18+02:00 (5 years ago)
Author:
smasson
Message:

trunk: merge dev_r10984_HPC-13 into the trunk

Location:
NEMO/trunk/tests/BENCH
Files:
1 deleted
13 edited

Legend:

Unmodified
Added
Removed
  • NEMO/trunk/tests/BENCH/EXPREF/best_jpni_jpnj_eorca025

    r9856 r11536  
    624624    nb_cores 36180 ( 180 x 201 ), nb_points 80 ( 10 x 8 ) 
    625625    nb_cores 38560 ( 160 x 241 ), nb_points 77 ( 11 x 7 ) 
     626    nb_cores 41406 ( 206 x 201 ), nb_points 72 ( 9 x 8 ) 
     627    nb_cores 43380 ( 180 x 241 ), nb_points 70 ( 10 x 7 ) 
     628    nb_cores 48240 ( 240 x 201 ), nb_points 64 ( 8 x 8 ) 
     629    nb_cores 49646 ( 206 x 241 ), nb_points 63 ( 9 x 7 ) 
     630    nb_cores 54360 ( 180 x 302 ), nb_points 60 ( 10 x 6 ) 
     631    nb_cores 54360 ( 360 x 151 ), nb_points 60 ( 6 x 10 ) 
     632    nb_cores 57840 ( 240 x 241 ), nb_points 56 ( 8 x 7 ) 
     633    nb_cores 62212 ( 206 x 302 ), nb_points 54 ( 9 x 6 ) 
     634    nb_cores 69408 ( 288 x 241 ), nb_points 49 ( 7 x 7 ) 
     635    nb_cores 72360 ( 360 x 201 ), nb_points 48 ( 6 x 8 ) 
     636    nb_cores 82812 ( 206 x 402 ), nb_points 45 ( 9 x 5 ) 
     637    nb_cores 86760 ( 360 x 241 ), nb_points 42 ( 6 x 7 ) 
     638    nb_cores 96480 ( 240 x 402 ), nb_points 40 ( 8 x 5 ) 
     639    nb_cores 96480 ( 480 x 201 ), nb_points 40 ( 5 x 8 ) 
  • NEMO/trunk/tests/BENCH/EXPREF/best_jpni_jpnj_eorca12

    r9856 r11536  
    13001300    nb_cores 49852 ( 206 x 242 ), nb_points 345 ( 23 x 15 ) 
    13011301    nb_cores 49950 ( 270 x 185 ), nb_points 342 ( 18 x 19 ) 
     1302    nb_cores 50400 ( 288 x 175 ), nb_points 340 ( 17 x 20 ) 
     1303    nb_cores 50400 ( 240 x 210 ), nb_points 340 ( 20 x 17 ) 
     1304    nb_cores 51294 ( 309 x 166 ), nb_points 336 ( 16 x 21 ) 
     1305    nb_cores 52272 ( 216 x 242 ), nb_points 330 ( 22 x 15 ) 
     1306    nb_cores 53190 ( 270 x 197 ), nb_points 324 ( 18 x 18 ) 
     1307    nb_cores 53280 ( 288 x 185 ), nb_points 323 ( 17 x 19 ) 
     1308    nb_cores 54000 ( 240 x 225 ), nb_points 320 ( 20 x 16 ) 
     1309    nb_cores 55176 ( 228 x 242 ), nb_points 315 ( 21 x 15 ) 
     1310    nb_cores 56199 ( 393 x 143 ), nb_points 312 ( 13 x 24 ) 
     1311    nb_cores 56700 ( 270 x 210 ), nb_points 306 ( 18 x 17 ) 
     1312    nb_cores 57165 ( 309 x 185 ), nb_points 304 ( 16 x 19 ) 
     1313    nb_cores 58080 ( 240 x 242 ), nb_points 300 ( 20 x 15 ) 
     1314    nb_cores 58916 ( 206 x 286 ), nb_points 299 ( 23 x 13 ) 
     1315    nb_cores 59760 ( 360 x 166 ), nb_points 294 ( 14 x 21 ) 
     1316    nb_cores 60480 ( 288 x 210 ), nb_points 289 ( 17 x 17 ) 
     1317    nb_cores 60750 ( 270 x 225 ), nb_points 288 ( 18 x 16 ) 
     1318    nb_cores 61605 ( 333 x 185 ), nb_points 285 ( 15 x 19 ) 
     1319    nb_cores 63000 ( 360 x 175 ), nb_points 280 ( 14 x 20 ) 
     1320    nb_cores 64800 ( 288 x 225 ), nb_points 272 ( 17 x 16 ) 
     1321    nb_cores 65340 ( 270 x 242 ), nb_points 270 ( 18 x 15 ) 
     1322    nb_cores 66600 ( 360 x 185 ), nb_points 266 ( 14 x 19 ) 
     1323    nb_cores 68040 ( 216 x 315 ), nb_points 264 ( 22 x 12 ) 
     1324    nb_cores 68640 ( 240 x 286 ), nb_points 260 ( 20 x 13 ) 
     1325    nb_cores 69525 ( 309 x 225 ), nb_points 256 ( 16 x 16 ) 
     1326    nb_cores 69696 ( 288 x 242 ), nb_points 255 ( 17 x 15 ) 
     1327    nb_cores 70920 ( 360 x 197 ), nb_points 252 ( 14 x 18 ) 
     1328    nb_cores 72705 ( 393 x 185 ), nb_points 247 ( 13 x 19 ) 
     1329    nb_cores 74778 ( 309 x 242 ), nb_points 240 ( 16 x 15 ) 
     1330    nb_cores 75600 ( 360 x 210 ), nb_points 238 ( 14 x 17 ) 
     1331    nb_cores 77220 ( 270 x 286 ), nb_points 234 ( 18 x 13 ) 
     1332    nb_cores 79680 ( 480 x 166 ), nb_points 231 ( 11 x 21 ) 
     1333    nb_cores 79920 ( 432 x 185 ), nb_points 228 ( 12 x 19 ) 
     1334    nb_cores 80586 ( 333 x 242 ), nb_points 225 ( 15 x 15 ) 
     1335    nb_cores 81000 ( 360 x 225 ), nb_points 224 ( 14 x 16 ) 
     1336    nb_cores 82368 ( 288 x 286 ), nb_points 221 ( 17 x 13 ) 
     1337    nb_cores 84000 ( 480 x 175 ), nb_points 220 ( 11 x 20 ) 
     1338    nb_cores 84000 ( 240 x 350 ), nb_points 220 ( 20 x 11 ) 
     1339    nb_cores 85050 ( 270 x 315 ), nb_points 216 ( 18 x 12 ) 
     1340    nb_cores 87120 ( 360 x 242 ), nb_points 210 ( 14 x 15 ) 
     1341    nb_cores 88374 ( 309 x 286 ), nb_points 208 ( 16 x 13 ) 
     1342    nb_cores 90720 ( 288 x 315 ), nb_points 204 ( 17 x 12 ) 
     1343    nb_cores 90720 ( 432 x 210 ), nb_points 204 ( 12 x 17 ) 
     1344    nb_cores 94500 ( 270 x 350 ), nb_points 198 ( 18 x 11 ) 
     1345    nb_cores 94680 ( 360 x 263 ), nb_points 196 ( 14 x 14 ) 
     1346    nb_cores 95106 ( 393 x 242 ), nb_points 195 ( 13 x 15 ) 
     1347    nb_cores 97200 ( 432 x 225 ), nb_points 192 ( 12 x 16 ) 
     1348    nb_cores 99900 ( 540 x 185 ), nb_points 190 ( 10 x 19 ) 
  • NEMO/trunk/tests/BENCH/EXPREF/namelist_cfg_orca025_like

    r10539 r11536  
    99   nn_it000    =       1   !  first time step 
    1010   nn_itend    =    1000   !  last time step  
    11    nn_stock    =       0   !  frequency of creation of a restart file (modulo referenced to 1) 
    12    nn_write    =       0   !  frequency of write in the output file   (modulo referenced to nn_it000) 
     11   nn_stock    =      -1   !  frequency of creation of a restart file (modulo referenced to 1) 
     12   nn_write    =      -1   !  frequency of write in the output file   (modulo referenced to nn_it000) 
    1313/ 
    1414!----------------------------------------------------------------------- 
     
    3030&namctl        !   Control prints                                       (default: OFF) 
    3131!----------------------------------------------------------------------- 
    32    ln_ctl      = .false.   !  trends control print (expensive!) 
    3332   nn_print    =    0      !  level of print (0 no extra print) 
    3433   ln_timing   = .false.   !  timing by routine write out in timing.output file 
  • NEMO/trunk/tests/BENCH/EXPREF/namelist_cfg_orca12_like

    r10539 r11536  
    99   nn_it000    =       1   !  first time step 
    1010   nn_itend    =    1000   !  last time step  
    11    nn_stock    =       0   !  frequency of creation of a restart file (modulo referenced to 1) 
    12    nn_write    =       0   !  frequency of write in the output file   (modulo referenced to nn_it000) 
     11   nn_stock    =      -1   !  frequency of creation of a restart file (modulo referenced to 1) 
     12   nn_write    =      -1   !  frequency of write in the output file   (modulo referenced to nn_it000) 
    1313/ 
    1414!----------------------------------------------------------------------- 
     
    3030&namctl        !   Control prints                                       (default: OFF) 
    3131!----------------------------------------------------------------------- 
    32    ln_ctl      = .false.   !  trends control print (expensive!) 
    3332   nn_print    =    0      !  level of print (0 no extra print) 
    3433   ln_timing   = .false.   !  timing by routine write out in timing.output file 
  • NEMO/trunk/tests/BENCH/EXPREF/namelist_cfg_orca1_like

    r10539 r11536  
    99   nn_it000    =       1   !  first time step 
    1010   nn_itend    =    1000   !  last time step  
    11    nn_stock    =       0   !  frequency of creation of a restart file (modulo referenced to 1) 
    12    nn_write    =       0   !  frequency of write in the output file   (modulo referenced to nn_it000) 
     11   nn_stock    =      -1   !  frequency of creation of a restart file (modulo referenced to 1) 
     12   nn_write    =      -1   !  frequency of write in the output file   (modulo referenced to nn_it000) 
    1313/ 
    1414!----------------------------------------------------------------------- 
     
    3030&namctl        !   Control prints                                       (default: OFF) 
    3131!----------------------------------------------------------------------- 
    32    ln_ctl      = .false.   !  trends control print (expensive!) 
    3332   nn_print    =    0      !  level of print (0 no extra print) 
    3433   ln_timing   = .false.   !  timing by routine write out in timing.output file 
  • NEMO/trunk/tests/BENCH/EXPREF/namelist_ice_cfg

    r10179 r11536  
    7474&namini         !   Ice initialization 
    7575!------------------------------------------------------------------------------ 
     76   rn_thres_sst     =   0.5           !  max delta temp. above Tfreeze with initial ice = (sst - tfreeze) 
    7677/ 
    7778!------------------------------------------------------------------------------ 
  • NEMO/trunk/tests/BENCH/EXPREF/namelist_top_cfg

    r10343 r11536  
    5757!          !  file name  ! frequency (hours) ! variable  ! time interp. !  clim  ! 'yearly'/ ! weights  ! rotation ! land/sea mask ! 
    5858!          !             !  (if <0  months)  !   name    !   (logical)  !  (T/F) ! 'monthly' ! filename ! pairing  ! filename      ! 
    59    sn_trcdta(1)  = 'data_DIC_nomask'        ,        -12        ,  'DIC'     ,    .false.   , .true. , 'yearly'  , ''       , ''   , '' 
    60    sn_trcdta(2)  = 'data_Alkalini_nomask'   ,        -12        ,  'Alkalini',    .false.   , .true. , 'yearly'  , ''       , ''   , '' 
    61    sn_trcdta(3)  = 'data_O2_nomask'         ,        -1         ,  'O2'      ,    .true.    , .true. , 'yearly'  , ''       , ''   , '' 
    62    sn_trcdta(5)  = 'data_PO4_nomask'        ,        -1         ,  'PO4'     ,    .true.    , .true. , 'yearly'  , ''       , ''   , '' 
    63    sn_trcdta(7)  = 'data_Si_nomask'         ,        -1         ,  'Si'      ,    .true.    , .true. , 'yearly'  , ''       , ''   , '' 
    64    sn_trcdta(10) = 'data_DOC_nomask'        ,        -12        ,  'DOC'     ,    .false.   , .true. , 'yearly'  , ''       , ''   , '' 
    65    sn_trcdta(14) = 'data_Fer_nomask'        ,        -12        ,  'Fer'     ,    .false.   , .true. , 'yearly'  , ''       , ''   , '' 
    66    sn_trcdta(23) = 'data_NO3_nomask'        ,        -1         ,  'NO3'     ,    .true.    , .true. , 'yearly'  , ''       , ''   , '' 
     59   sn_trcdta(1)  = 'data_DIC_nomask'        ,        -12.       ,  'DIC'     ,    .false.   , .true. , 'yearly'  , ''       , ''   , '' 
     60   sn_trcdta(2)  = 'data_Alkalini_nomask'   ,        -12.       ,  'Alkalini',    .false.   , .true. , 'yearly'  , ''       , ''   , '' 
     61   sn_trcdta(3)  = 'data_O2_nomask'         ,        -1.        ,  'O2'      ,    .true.    , .true. , 'yearly'  , ''       , ''   , '' 
     62   sn_trcdta(5)  = 'data_PO4_nomask'        ,        -1.        ,  'PO4'     ,    .true.    , .true. , 'yearly'  , ''       , ''   , '' 
     63   sn_trcdta(7)  = 'data_Si_nomask'         ,        -1.        ,  'Si'      ,    .true.    , .true. , 'yearly'  , ''       , ''   , '' 
     64   sn_trcdta(10) = 'data_DOC_nomask'        ,        -12.       ,  'DOC'     ,    .false.   , .true. , 'yearly'  , ''       , ''   , '' 
     65   sn_trcdta(14) = 'data_Fer_nomask'        ,        -12.       ,  'Fer'     ,    .false.   , .true. , 'yearly'  , ''       , ''   , '' 
     66   sn_trcdta(23) = 'data_NO3_nomask'        ,        -1.        ,  'NO3'     ,    .true.    , .true. , 'yearly'  , ''       , ''   , '' 
    6767   rn_trfac(1)   =   1.0e-06  !  multiplicative factor 
    6868   rn_trfac(2)   =   1.0e-06  !  -      -      -     - 
  • NEMO/trunk/tests/BENCH/EXPREF/sh_bench

    r9869 r11536  
    99machine=$( hostname | sed -e "s/[0-9]*//g" ) 
    1010case $machine in  
     11    "jean-zay")     ncore_node=40 ;; 
    1112    "beaufixlogin") ncore_node=40 ;; 
    1213    "curie")        ncore_node=16 ;; 
  • NEMO/trunk/tests/BENCH/EXPREF/submit_bench

    r9870 r11536  
    66# 
    77set -u 
    8 set -vx 
     8#set -vx 
    99# 
    1010cores=$1 
     
    1515# 
    1616# number of processes for each executable 
    17     nproc_exe1=$( echo $cores | bc ) 
    18   (( nproc = $nproc_exe1 )) 
    19 (( nnode = $nproc / $ncore_node )) 
    20 [ $nnode -lt 1 ] && nnode=1 
     17nproc_exe1=$( echo $cores | bc ) 
     18nproc=$nproc_exe1 
     19nnode=$(( ( $nproc + $ncore_node - 1 )  / $ncore_node )) 
    2120 
    2221nproc5=$( printf "%05d\n" ${nproc_exe1} ) 
     22 
     23case ${resolution} in 
     24    "1") 
     25   if [ $nproc_exe1 -lt 50 ] 
     26   then 
     27       timejob=3600 
     28   elif [ $nproc_exe1 -lt 100 ] 
     29   then 
     30       timejob=1800 
     31   elif [ $nproc_exe1 -lt 200 ] 
     32   then 
     33       timejob=900 
     34   else 
     35       timejob=600 
     36   fi 
     37   ;; 
     38    "025") 
     39   if [ $nproc_exe1 -lt 50 ] 
     40   then 
     41       timejob=15000 
     42   elif [ $nproc_exe1 -lt 100 ] 
     43   then 
     44       timejob=7000 
     45   elif [ $nproc_exe1 -lt 200 ] 
     46   then 
     47       timejob=3600 
     48   elif [ $nproc_exe1 -lt 400 ] 
     49   then 
     50       timejob=2000 
     51   elif [ $nproc_exe1 -lt 800 ] 
     52   then 
     53       timejob=1000 
     54   else 
     55       timejob=600 
     56   fi 
     57   ;; 
     58    "12") 
     59   if [ $nproc_exe1 -lt 200 ] 
     60   then 
     61       timejob=30000 
     62   elif [ $nproc_exe1 -lt 400 ] 
     63   then 
     64       timejob=15000 
     65   elif [ $nproc_exe1 -lt 800 ] 
     66   then 
     67       timejob=20000 
     68   elif [ $nproc_exe1 -lt 1600 ] 
     69   then 
     70       timejob=15000 
     71   elif [ $nproc_exe1 -lt 3200 ] 
     72   then 
     73       timejob=7500 
     74   elif [ $nproc_exe1 -lt 10000 ] 
     75   then 
     76       timejob=5000 
     77   elif [ $nproc_exe1 -lt 20000 ] 
     78   then 
     79       timejob=2500 
     80   else 
     81       timejob=1200 
     82   fi 
     83   ;; 
     84esac 
     85 
    2386 
    2487###################################################################### 
     
    100163if [[ ( "$machine" == "curie" ) || ( "$machine" == "irene" ) ]] 
    101164then 
    102      
    103     case ${resolution} in 
    104    "1") 
    105        if [ $nproc_exe1 -lt 50 ] 
    106        then 
    107       timejob=3600 
    108        elif [ $nproc_exe1 -lt 100 ] 
    109        then 
    110       timejob=1800 
    111        elif [ $nproc_exe1 -lt 200 ] 
    112        then 
    113       timejob=900 
    114        else 
    115       timejob=600 
    116        fi 
    117        ;; 
    118    "025") 
    119        if [ $nproc_exe1 -lt 50 ] 
    120        then 
    121       timejob=15000 
    122        elif [ $nproc_exe1 -lt 100 ] 
    123        then 
    124       timejob=7000 
    125        elif [ $nproc_exe1 -lt 200 ] 
    126        then 
    127       timejob=3600 
    128        elif [ $nproc_exe1 -lt 400 ] 
    129        then 
    130       timejob=2000 
    131        elif [ $nproc_exe1 -lt 800 ] 
    132        then 
    133       timejob=1000 
    134        else 
    135       timejob=600 
    136        fi 
    137        ;; 
    138    "12") 
    139        if [ $nproc_exe1 -lt 200 ] 
    140        then 
    141       timejob=30000 
    142        elif [ $nproc_exe1 -lt 400 ] 
    143        then 
    144       timejob=15000 
    145        elif [ $nproc_exe1 -lt 800 ] 
    146        then 
    147       timejob=8000 
    148        elif [ $nproc_exe1 -lt 1600 ] 
    149        then 
    150       timejob=5000 
    151        elif [ $nproc_exe1 -lt 3200 ] 
    152        then 
    153       timejob=2500 
    154        else 
    155       timejob=1200 
    156        fi 
    157    ;; 
    158     esac 
    159165 
    160166    [ "$machine" == "curie" ] && queuename=standard || queuename=skylake 
    161167     
    162     jobname=$HOME/binrun/jobbench 
     168    EXPjob=../EXP_${resolution}_${nproc5}_${dateref} 
     169    mkdir -p ${EXPjob} 
     170    cd ${EXPjob} 
     171    jobname=jobbench 
    163172    cat > $jobname << EOF 
    164173#!/bin/bash 
     
    176185# 
    177186 
    178 cd \${BRIDGE_MSUB_PWD}/.. 
    179  
    180  
    181 EXPjob=EXP_${resolution}_${nproc5}_${dateref} 
    182 rsync -av --exclude="*eo" EXPREF/ \${EXPjob}/ 
    183 rsync -av EXP00/nemo \${EXPjob}/nemo 
    184 cd \${EXPjob} 
     187cd \${BRIDGE_MSUB_PWD} 
     188 
     189for ff in \${BRIDGE_MSUB_PWD}/../EXPREF/namelist_*cfg \${BRIDGE_MSUB_PWD}/../EXPREF/namelist_*ref \${BRIDGE_MSUB_PWD}/../BLD/bin/nemo.exe 
     190do 
     191    cp \$ff . 
     192done 
    185193 
    186194jpni=${cores/\**/} 
    187195jpnj=${cores/?*\*/} 
    188196 
    189 sed -e "s/jpni *=.*/jpni = \${jpni}/" -e "s/jpnj *=.*/jpnj = \${jpnj}/" namelist_cfg_orca${resolution}_like > namelist_cfg 
    190  
    191 time ccc_mprun -n \${BRIDGE_MSUB_NPROC} ./nemo > jobout_${resolution}_${nproc5}_${dateref} 
     197sed -e "s/jpni *=.*/jpni = \${jpni}/" \ 
     198    -e "s/jpnj *=.*/jpnj = \${jpnj}/"\ 
     199    -e "s/ln_timing *= *.false./ln_timing   =  .true./" \ 
     200     \${BRIDGE_MSUB_PWD}/../EXPREF/namelist_cfg_orca${resolution}_like > namelist_cfg 
     201 
     202time ccc_mprun -n \${BRIDGE_MSUB_NPROC} ./nemo.exe > jobout_${resolution}_${nproc5}_${dateref} 2>&1 
    192203 
    193204EOF 
     
    196207 
    197208fi 
     209 
     210###################################################################### 
     211### Jean-Zay 
     212###################################################################### 
     213 
     214if [ "$machine" == "jean-zay" ] 
     215then 
     216    hh=$( printf "%02d\n" $(( ${timejob} / 3600 )) ) 
     217    mm=$( printf "%02d\n" $(( ( ${timejob} % 3600 ) / 60 )) ) 
     218    ss=$( printf "%02d\n" $(( ( ${timejob} % 3600 ) % 60 )) ) 
     219 
     220    EXPjob=../EXP_${resolution}_${nproc5}_${dateref} 
     221    mkdir -p ${EXPjob} 
     222    cd ${EXPjob} 
     223    jobname=jobbench 
     224    cat > $jobname << EOF 
     225#!/bin/bash 
     226#SBATCH --job-name=Seq        # nom du job 
     227#SBATCH --partition=cpu_gct3   # demande d'allocation sur la partition CPU 
     228#SBATCH --nodes=${nnode}             # nombre de noeuds 
     229#SBATCH --ntasks-per-node=${ncore_node}  # nombre de taches MPI par noeud 
     230#SBATCH --ntasks-per-core=1        # 1 processus MPI par coeur physique (pas d'hyperthreading) 
     231#SBATCH --time=${hh}:${mm}:${ss}       # temps d execution maximum demande (HH:MM:SS) 
     232#SBATCH --output=bench_${resolution}_${nproc5}_%j.eo        # nom du fichier de sortie 
     233#SBATCH --error=bench_${resolution}_${nproc5}_%j.eo         # nom du fichier d'erreur (ici en commun avec la sortie) 
     234#========================================== 
     235set -u 
     236#set -xv 
     237# 
     238#cd \${SLURM_SUBMIT_DIR} 
     239cd \${JOBSCRATCH} 
     240pwd 
     241 
     242for ff in \${SLURM_SUBMIT_DIR}/../EXPREF/namelist_*cfg \${SLURM_SUBMIT_DIR}/../EXPREF/namelist_*ref \${SLURM_SUBMIT_DIR}/../BLD/bin/nemo.exe 
     243do 
     244    cp \$ff . 
     245done 
     246 
     247jpni=${cores/\**/} 
     248jpnj=${cores/?*\*/} 
     249 
     250sed -e "s/jpni *=.*/jpni = \${jpni}/" \ 
     251    -e "s/jpnj *=.*/jpnj = \${jpnj}/" \ 
     252    -e "s/ln_timing *= *.false./ln_timing   =  .true./" \ 
     253    \${SLURM_SUBMIT_DIR}/../EXPREF/namelist_cfg_orca${resolution}_like > namelist_cfg 
     254 
     255ls -l 
     256 
     257echo  
     258echo  
     259echo " =========== start the model ===========" 
     260echo  
     261echo  
     262 
     263time srun --mpi=pmi2 --cpu-bind=cores -K1 -n ${nproc} ./nemo.exe > jobout_${resolution}_${nproc5}_${dateref} 2>&1 
     264 
     265ls -l 
     266 
     267if [ "\$( pwd )" != "\${SLURM_SUBMIT_DIR}" ] 
     268then  
     269    rsync -av namelist_cfg time.step ocean.output jobout_${resolution}_${nproc5}_${dateref} communication_report.txt layout.dat timing.output output.namelist* \${SLURM_SUBMIT_DIR} 
     270fi 
     271 
     272EOF 
     273 
     274    sbatch $jobname 
     275 
     276fi 
  • NEMO/trunk/tests/BENCH/MY_SRC/usrdef_istate.F90

    r10179 r11536  
    6464      DO jj = 1, jpj 
    6565         DO ji = 1, jpi 
    66             z2d(ji,jj) = 0.1 * ( 0.5 - REAL( nimpp + ji - 1 + ( njmpp + jj - 2 ) * jpiglo, wp ) / REAL( jpiglo * jpjglo, wp ) ) 
     66            z2d(ji,jj) = 0.1 * ( 0.5 - REAL( mig(ji) + mjg(jj) * jpiglo, wp ) / REAL( jpiglo * jpjglo, wp ) ) 
    6767         ENDDO 
    6868      ENDDO 
     
    7373      DO jk = 1, jpk 
    7474         zfact = REAL(jk-1,wp) / REAL(jpk-1,wp)   ! 0 to 1 to add a basic stratification 
    75          ! temperature choosen to lead to 20% ice 
    76          pts(:,:,jk,jp_tem) = 2._wp - 0.1_wp * zfact + z2d(:,:) * 100._wp ! 2 to 1.9 +/- 5 degG 
    77          WHERE ( pts(:,:,jk,jp_tem) < -1.5_wp ) pts(:,:,jk,jp_tem) = -1.5_wp + z2d(:,:) * 0.2_wp   
     75         ! temperature choosen to lead to ~50% ice at the beginning if rn_thres_sst = 0.5 
     76         pts(:,:,jk,jp_tem) = 20._wp*z2d(:,:) - 1._wp - 0.5_wp * zfact    ! -1 to -1.5 +/-1.0 degG 
    7877         ! salinity:   
    7978         pts(:,:,jk,jp_sal) = 30._wp + 1._wp * zfact + z2d(:,:)           ! 30 to 31 +/- 0.05 psu 
     
    8483      ! 
    8584      CALL lbc_lnk('usrdef_istate', pssh, 'T',  1. )            ! apply boundary conditions 
    86       CALL lbc_lnk( 'usrdef_istate', pts, 'T',  1. )            ! apply boundary conditions 
    87       CALL lbc_lnk(  'usrdef_istate', pu, 'U', -1. )            ! apply boundary conditions 
    88       CALL lbc_lnk(  'usrdef_istate', pv, 'V', -1. )            ! apply boundary conditions 
     85      CALL lbc_lnk('usrdef_istate', pts, 'T',  1. )            ! apply boundary conditions 
     86      CALL lbc_lnk('usrdef_istate',  pu, 'U', -1. )            ! apply boundary conditions 
     87      CALL lbc_lnk('usrdef_istate',  pv, 'V', -1. )            ! apply boundary conditions 
    8988       
    9089   END SUBROUTINE usr_def_istate 
  • NEMO/trunk/tests/BENCH/MY_SRC/usrdef_nam.F90

    r10428 r11536  
    2929CONTAINS 
    3030 
    31    SUBROUTINE usr_def_nam( ldtxt, ldnam, cd_cfg, kk_cfg, kpi, kpj, kpk, kperio ) 
     31   SUBROUTINE usr_def_nam( cd_cfg, kk_cfg, kpi, kpj, kpk, kperio ) 
    3232      !!---------------------------------------------------------------------- 
    3333      !!                     ***  ROUTINE dom_nam  *** 
     
    4141      !! ** input   : - namusr_def namelist found in namelist_cfg 
    4242      !!---------------------------------------------------------------------- 
    43       CHARACTER(len=*), DIMENSION(:), INTENT(out) ::   ldtxt, ldnam    ! stored print information 
    4443      CHARACTER(len=*)              , INTENT(out) ::   cd_cfg          ! configuration name 
    4544      INTEGER                       , INTENT(out) ::   kk_cfg          ! configuration resolution 
     
    4847      ! 
    4948      ! 
    50       INTEGER ::   ios, ii      ! Local integer 
     49      INTEGER ::   ios         ! Local integer 
    5150      !                              !!* namusr_def namelist *!! 
    5251      INTEGER ::   nn_isize    ! number of point in i-direction of global(local) domain if >0 (<0)   
     
    5554      INTEGER ::   nn_perio    ! periodicity 
    5655      !                              !!* nammpp namelist *!! 
    57       CHARACTER(len=1) ::   cn_mpi_send 
    58       INTEGER          ::   nn_buffer, jpni, jpnj 
     56      INTEGER          ::   jpni, jpnj 
    5957      LOGICAL          ::   ln_nnogather 
    6058      !! 
    6159      NAMELIST/namusr_def/ nn_isize, nn_jsize, nn_ksize, nn_perio 
    62       NAMELIST/nammpp/ cn_mpi_send, nn_buffer, jpni, jpnj, ln_nnogather 
     60      NAMELIST/nammpp/ jpni, jpnj, ln_nnogather 
    6361      !!----------------------------------------------------------------------      
    6462      ! 
    6563      REWIND( numnam_cfg )          ! Namelist namusr_def (exist in namelist_cfg only) 
    6664      READ  ( numnam_cfg, namusr_def, IOSTAT = ios, ERR = 903 ) 
    67 903   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namusr_def in configuration namelist', .TRUE. ) 
    68       WRITE( ldnam(:), namusr_def )       
     65903   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namusr_def in configuration namelist' ) 
     66      ! 
     67      IF(lwm)   WRITE( numond, namusr_def )       
    6968      ! 
    7069      cd_cfg = 'BENCH'             ! name & resolution (not used) 
    7170      kk_cfg = 0 
    72  
     71      ! 
    7372      IF( nn_isize < 0 .AND. nn_jsize < 0 ) THEN 
    7473      ! 
    7574         REWIND( numnam_ref )              ! Namelist nammpp in reference namelist: mpi variables 
    7675         READ  ( numnam_ref, nammpp, IOSTAT = ios, ERR = 901) 
    77 901      IF( ios /= 0 )   CALL ctl_nam ( ios , 'nammpp in reference namelist', lwp ) 
     76901      IF( ios /= 0 )   CALL ctl_nam ( ios , 'nammpp in reference namelist' ) 
    7877         ! 
    7978         REWIND( numnam_cfg )              ! Namelist nammpp in configuration namelist: mpi variables 
    8079         READ  ( numnam_cfg, nammpp, IOSTAT = ios, ERR = 902 ) 
    81 902      IF( ios >  0 )   CALL ctl_nam ( ios , 'nammpp in configuration namelist', lwp ) 
     80902      IF( ios >  0 )   CALL ctl_nam ( ios , 'nammpp in configuration namelist' ) 
    8281 
    8382         kpi = ( -nn_isize - 2*nn_hls ) * jpni + 2*nn_hls 
     
    8786         kpj = nn_jsize 
    8887      ENDIF 
    89   
     88      ! 
    9089      kpk = nn_ksize 
    9190      kperio = nn_perio 
    92  
    9391      !                             ! control print 
    94       ii = 1 
    95       WRITE(ldtxt(ii),*) '   '                                                                          ;   ii = ii + 1 
    96       WRITE(ldtxt(ii),*) 'usr_def_nam  : read the user defined namelist (namusr_def) in namelist_cfg'   ;   ii = ii + 1 
    97       WRITE(ldtxt(ii),*) '~~~~~~~~~~~ '                                                                 ;   ii = ii + 1 
    98       WRITE(ldtxt(ii),*) '   Namelist namusr_def : BENCH test case'                                     ;   ii = ii + 1 
    99       IF( nn_isize > 0 ) THEN 
    100          WRITE(ldtxt(ii),*) '      global domain size-x            nn_isize = ',  nn_isize              ;   ii = ii + 1 
    101       ELSE 
    102          WRITE(ldtxt(ii),*) '                                          jpni = ', jpni                   ;   ii = ii + 1 
    103          WRITE(ldtxt(ii),*) '       local domain size-x           -nn_isize = ', -nn_isize              ;   ii = ii + 1 
    104          WRITE(ldtxt(ii),*) '      global domain size-x                 kpi = ', kpi                    ;   ii = ii + 1 
     92      IF(lwp) THEN 
     93         WRITE(numout,*) '   ' 
     94         WRITE(numout,*) 'usr_def_nam  : read the user defined namelist (namusr_def) in namelist_cfg' 
     95         WRITE(numout,*) '~~~~~~~~~~~ ' 
     96         WRITE(numout,*) '   Namelist namusr_def : BENCH test case' 
     97         IF( nn_isize > 0 ) THEN 
     98            WRITE(numout,*) '      global domain size-x            nn_isize = ',  nn_isize 
     99         ELSE 
     100            WRITE(numout,*) '                                          jpni = ', jpni 
     101            WRITE(numout,*) '       local domain size-x           -nn_isize = ', -nn_isize 
     102            WRITE(numout,*) '      global domain size-x                 kpi = ', kpi 
     103         ENDIF 
     104         IF( nn_jsize > 0 ) THEN 
     105            WRITE(numout,*) '      global domain size-y            nn_jsize = ', nn_jsize 
     106         ELSE 
     107            WRITE(numout,*) '                                          jpnj = ', jpnj 
     108            WRITE(numout,*) '       local domain size-y           -nn_jsize = ', -nn_jsize 
     109            WRITE(numout,*) '      global domain size-y                 kpj = ', kpj 
     110         ENDIF 
     111         WRITE(numout,*) '      global domain size-z            nn_ksize = ', nn_ksize 
     112         WRITE(numout,*) '      LBC of the global domain          kperio = ', kperio 
    105113      ENDIF 
    106       IF( nn_jsize > 0 ) THEN 
    107          WRITE(ldtxt(ii),*) '      global domain size-y            nn_jsize = ', nn_jsize               ;   ii = ii + 1 
    108       ELSE 
    109          WRITE(ldtxt(ii),*) '                                          jpnj = ', jpnj                   ;   ii = ii + 1 
    110          WRITE(ldtxt(ii),*) '       local domain size-y           -nn_jsize = ', -nn_jsize              ;   ii = ii + 1 
    111          WRITE(ldtxt(ii),*) '      global domain size-y                 kpj = ', kpj                    ;   ii = ii + 1 
    112       ENDIF 
    113       WRITE(ldtxt(ii),*) '      global domain size-z            nn_ksize = ', nn_ksize                  ;   ii = ii + 1 
    114       WRITE(ldtxt(ii),*) '      LBC of the global domain          kperio = ', kperio                    ;   ii = ii + 1 
    115114      ! 
    116115   END SUBROUTINE usr_def_nam 
  • NEMO/trunk/tests/BENCH/MY_SRC/usrdef_zgr.F90

    r10170 r11536  
    194194      z2d(:,:) = REAL( jpkm1 , wp )          ! flat bottom 
    195195      ! 
     196      IF( jperio == 3 .OR. jperio ==4 ) THEN   ! add a small island in the upper corners to avoid model instabilities... 
     197         z2d(mi0(       1):mi1(     3),mj0(jpjglo-2):mj1(jpjglo)) = 0. 
     198         z2d(mi0(jpiglo-2):mi1(jpiglo),mj0(jpjglo-2):mj1(jpjglo)) = 0. 
     199      ENDIF 
     200      ! 
    196201      CALL lbc_lnk( 'usrdef_zgr', z2d, 'T', 1. )           ! set surrounding land to zero (here jperio=0 ==>> closed) 
    197202      ! 
  • NEMO/trunk/tests/BENCH/MY_SRC/zdfiwm.F90

    r10420 r11536  
    406406      REWIND( numnam_ref )              ! Namelist namzdf_iwm in reference namelist : Wave-driven mixing 
    407407      READ  ( numnam_ref, namzdf_iwm, IOSTAT = ios, ERR = 901) 
    408 901   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namzdf_iwm in reference namelist', lwp ) 
     408901   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namzdf_iwm in reference namelist' ) 
    409409      ! 
    410410      REWIND( numnam_cfg )              ! Namelist namzdf_iwm in configuration namelist : Wave-driven mixing 
    411411      READ  ( numnam_cfg, namzdf_iwm, IOSTAT = ios, ERR = 902 ) 
    412 902   IF( ios >  0 )   CALL ctl_nam ( ios , 'namzdf_iwm in configuration namelist', lwp ) 
     412902   IF( ios >  0 )   CALL ctl_nam ( ios , 'namzdf_iwm in configuration namelist' ) 
    413413      IF(lwm) WRITE ( numond, namzdf_iwm ) 
    414414      ! 
Note: See TracChangeset for help on using the changeset viewer.