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 4692 for trunk/NEMOGCM – NEMO

Changeset 4692 for trunk/NEMOGCM


Ignore:
Timestamp:
2014-06-25T19:08:29+02:00 (10 years ago)
Author:
acc
Message:

Merge SPMD and MPMD batch templates for use with sette_xios.sh. Only one batch template file now required for all SETTE jobs. Also fix namelist parameter settings for GYRE_XIOS_HR tests so that domain scales correctly with jp_cfg

Location:
trunk/NEMOGCM/SETTE
Files:
1 deleted
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/NEMOGCM/SETTE/BATCH_TEMPLATE/batch-X64_MOBILIS

    r4687 r4692  
    1313  export OMP_NUM_THREADS=1 
    1414  export OCORES=NPROCS 
    15   export XCORES=NOT_USED 
     15  export XCORES=NXIOPROCS 
    1616  export SETTE_DIR=DEF_SETTE_DIR 
     17  export XIO_HOME=/home/acc/XIOS 
    1718# 
    1819# load sette functions (only post_test_tidyup needed) 
     
    5455  cd $EXE_DIR 
    5556  echo Directory is `pwd` 
     57  if [ $XCORES -eq 0 ]; then 
    5658# 
     59# Run SPMD case 
    5760# 
    58 #  Run the parallel MPI executable  
     61       echo time `which mpirun` --report-bindings -x MALLOC_MMAP_MAX_=-1                 \ 
     62                                -x MALLOC_TRIM_THRESHOLD_=33554432 -np $OCORES --bynode  \ 
     63                                --mca mpi_paffinity_alone 1 ./opa  
     64            time `which mpirun` --report-bindings -x MALLOC_MMAP_MAX_=-1                 \ 
     65                                -x MALLOC_TRIM_THRESHOLD_=33554432 -np $OCORES --bynode  \ 
     66                                --mca mpi_paffinity_alone 1 ./opa  
     67  else 
     68       if [ ! -f ./xios_server.exe ] && [ -f ${XIO_HOME}/bin/xios_server.exe ]; then 
     69          cp ${XIO_HOME}/bin/xios_server.exe . 
     70       fi 
     71       if [ ! -f ./xios_server.exe ]; then 
     72          echo "./xios_server.exe not found" 
     73          echo "run aborted" 
     74          exit 
     75       fi 
    5976# 
    60 echo time `which mpirun` --report-bindings -x MALLOC_MMAP_MAX_=-1 \ 
    61                          -x MALLOC_TRIM_THRESHOLD_=33554432 -np $OCORES --bynode  \ 
    62                          --mca mpi_paffinity_alone 1 ./opa  
     77#  Run MPMD case 
    6378# 
    64      time `which mpirun` --report-bindings -x MALLOC_MMAP_MAX_=-1 \ 
    65                          -x MALLOC_TRIM_THRESHOLD_=33554432 -np $OCORES --bynode  \ 
    66                          --mca mpi_paffinity_alone 1 ./opa  
     79       echo time `which mpirun` --report-bindings -x MALLOC_MMAP_MAX_=-1 \ 
     80                                -x MALLOC_TRIM_THRESHOLD_=33554432       \ 
     81                                -np $XCORES ./xios_server.exe            \ 
     82                              : -np $OCORES --bynode  --mca mpi_paffinity_alone 1 ./opa  
    6783# 
     84            time `which mpirun` --report-bindings -x MALLOC_MMAP_MAX_=-1 \ 
     85                                -x MALLOC_TRIM_THRESHOLD_=33554432       \ 
     86                                -np $XCORES ./xios_server.exe            \ 
     87                              : -np $OCORES --bynode  --mca mpi_paffinity_alone 1 ./opa  
     88# 
     89  fi 
    6890# 
    6991  post_test_tidyup 
  • trunk/NEMOGCM/SETTE/sette_xios.sh

    r4687 r4692  
    103103 
    104104CMP_NAM=${1:-$COMPILER} 
     105# 
     106#================================================================================= 
    105107# Copy job_batch_COMPILER file for specific compiler into job_batch_template 
     108# Note this batch template needs to be capable of launching both SPMD and MPMD 
     109# tasks with internal selection depending on the value of NUM_XIOSERVERS 
     110# (0=SPMD; >0 = MPMD) 
    106111#================================================================================= 
    107 # Note this script sets up and submits a mixture of SPMD and MPMD jobs corresponding  
    108 # to ATTACHED and DETACHED mode, XIOS jobs. In general, the launch command for these 
    109 # jobs is different and is accommodated here by employing two different batch-file 
    110 # templates. This script expects to find both a BATCH_TEMPLATE/batch-${COMPILER} and 
    111 # a BATCH_TEMPLATE/batch-mpmd-${COMPILER} template. If your test system doesn't  
    112 # require this distinction, simply make both files identical. 
    113 #================================================================================= 
    114 # Initially copy standard (SPMD) template for attached mode tests 
     112# 
    115113cd ${SETTE_DIR} 
    116114cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit 
     
    192190    cd ${SETTE_DIR} 
    193191# 
    194 # Copy MPMD job_batch_COMPILER file for specific compiler into job_batch_template 
    195     cp BATCH_TEMPLATE/batch-mpmd-${COMPILER} job_batch_template || exit 
    196 # 
    197192    . ./prepare_exe_dir.sh 
    198193    JOB_FILE=${EXE_DIR}/run_job.sh 
     
    250245    ## Restartability tests for GYRE 
    251246 
    252     NPROC=152 
     247    NPROC=64 
     248    jp_cfg=30 
     249    jpni=8 
     250    jpnj=8 
    253251    export NUM_XIOSERVERS=0 
    254252    export USING_MPMD="false" 
     
    260258    cd ${SETTE_DIR} 
    261259# 
    262 # Copy SPMD job_batch_COMPILER file for specific compiler into job_batch_template 
    263     cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit 
    264 # 
    265260    . ./param.cfg 
    266261    . ./all_functions.sh 
     
    276271    set_namelist namelist_cfg nn_bench 1 
    277272    set_namelist namelist_cfg ln_clobber .true. 
    278     set_namelist namelist_cfg jp_cfg 144 
    279     set_namelist namelist_cfg jpni 19 
    280     set_namelist namelist_cfg jpnj 8 
     273    set_namelist namelist_cfg jp_cfg $jp_cfg 
     274    set_namelist namelist_cfg jpidta $(( $jp_cfg * 30 + 2 )) 
     275    set_namelist namelist_cfg jpjdta $(( $jp_cfg * 20 + 2 )) 
     276    set_namelist namelist_cfg jpiglo $(( $jp_cfg * 30 + 2 )) 
     277    set_namelist namelist_cfg jpjglo $(( $jp_cfg * 20 + 2 )) 
     278    set_namelist namelist_cfg jpni $jpni 
     279    set_namelist namelist_cfg jpnj $jpnj 
    281280    set_namelist namelist_cfg jpnij $NPROC 
    282281 
     
    297296    cd ${SETTE_DIR} 
    298297# 
    299 # Copy SPMD job_batch_COMPILER file for specific compiler into job_batch_template 
    300     cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit 
    301 # 
    302298    . ./prepare_exe_dir.sh 
    303299# 
     
    311307    set_namelist namelist_cfg nn_bench 1 
    312308    set_namelist namelist_cfg ln_clobber .true. 
    313     set_namelist namelist_cfg jp_cfg 144 
    314     set_namelist namelist_cfg jpni 19 
    315     set_namelist namelist_cfg jpnj 8 
     309    set_namelist namelist_cfg jp_cfg $jp_cfg 
     310    set_namelist namelist_cfg jpidta $(( $jp_cfg * 30 + 2 )) 
     311    set_namelist namelist_cfg jpjdta $(( $jp_cfg * 20 + 2 )) 
     312    set_namelist namelist_cfg jpiglo $(( $jp_cfg * 30 + 2 )) 
     313    set_namelist namelist_cfg jpjglo $(( $jp_cfg * 20 + 2 )) 
     314    set_namelist namelist_cfg jpni $jpni 
     315    set_namelist namelist_cfg jpnj $jpnj 
    316316    set_namelist namelist_cfg jpnij $NPROC 
    317317 
     
    330330    cd ${SETTE_DIR} 
    331331# 
    332 # Copy MPMD job_batch_COMPILER file for specific compiler into job_batch_template 
    333     cp BATCH_TEMPLATE/batch-mpmd-${COMPILER} job_batch_template || exit 
    334 # 
    335332    . ./prepare_exe_dir.sh 
    336333# 
     
    344341    set_namelist namelist_cfg nn_bench 1 
    345342    set_namelist namelist_cfg ln_clobber .true. 
    346     set_namelist namelist_cfg jp_cfg 144 
    347     set_namelist namelist_cfg jpni 19 
    348     set_namelist namelist_cfg jpnj 8 
     343    set_namelist namelist_cfg jp_cfg $jp_cfg 
     344    set_namelist namelist_cfg jpidta $(( $jp_cfg * 30 + 2 )) 
     345    set_namelist namelist_cfg jpjdta $(( $jp_cfg * 20 + 2 )) 
     346    set_namelist namelist_cfg jpiglo $(( $jp_cfg * 30 + 2 )) 
     347    set_namelist namelist_cfg jpjglo $(( $jp_cfg * 20 + 2 )) 
     348    set_namelist namelist_cfg jpni $jpni 
     349    set_namelist namelist_cfg jpnj $jpnj 
    349350    set_namelist namelist_cfg jpnij $NPROC 
    350351 
     
    372373    set_namelist namelist_cfg nn_bench 1 
    373374    set_namelist namelist_cfg ln_clobber .true. 
    374     set_namelist namelist_cfg jp_cfg 144 
    375     set_namelist namelist_cfg jpni 19 
    376     set_namelist namelist_cfg jpnj 8 
     375    set_namelist namelist_cfg jp_cfg $jp_cfg 
     376    set_namelist namelist_cfg jpidta $(( $jp_cfg * 30 + 2 )) 
     377    set_namelist namelist_cfg jpjdta $(( $jp_cfg * 20 + 2 )) 
     378    set_namelist namelist_cfg jpiglo $(( $jp_cfg * 30 + 2 )) 
     379    set_namelist namelist_cfg jpjglo $(( $jp_cfg * 20 + 2 )) 
     380    set_namelist namelist_cfg jpni $jpni 
     381    set_namelist namelist_cfg jpnj $jpnj 
    377382    set_namelist namelist_cfg jpnij $NPROC 
    378383 
Note: See TracChangeset for help on using the changeset viewer.