Ignore:
Timestamp:
05/11/20 08:37:51 (4 years ago)
Author:
aclsce
Message:

Irene-amd : added 2 functionalities to increase computing performances :

  • increase this number of cores per MPI process (OpenMP thread) by using DEP keyword in config.card
  • use of dedicated nodes for XIOS servers by using DEDICATED keyword in config.card

Example of config.card :
ATM= (gcm.e, lmdz.x, 71MPI, 8OMP, 2DEP)
SRF= ("" ,"" )
SBG= ("" ,"" )
OCE= (opa, opa.xx, 360MPI, 2DEP)
ICE= ("" ,"" )
MBG= ("" ,"" )
CPL= ("", "" )
IOS= (xios_server.exe, xios.x, 12MPI,2DEP, DEDICATED)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/libIGCM/libIGCM_config/libIGCM_config.ksh

    r1527 r1528  
    661661    eval ${comp}_PROC_OMP=0 
    662662 
     663    # DEP is the factor to increase the number of cores per process 
     664    eval ${comp}_PROC_DEP=0 
     665 
     666    # DEDICATED is the flag to activate the use of dedicated node for XIOS server only 
     667    eval ${comp}_OK_DEDICATED=0 
     668 
    663669    # Only if we really have an executable for the component : 
    664670    if ( [ "X${ExeNameIn}" != X\"\" ] && [ "X${ExeNameIn}" != "Xinca.dat" ] ) ; then 
     
    677683      eval ${comp}_PROC_OMP=1 
    678684      eval ${comp}_PROC_NOD=1 
     685      eval ${comp}_PROC_DEP=1 
    679686 
    680687      eval NbElts=\${#config_Executable_${comp}[@]} 
    681  
    682688      if [ ${NbElts} -gt 2 ] ; then 
    683689        # 
     
    710716            OK_PARA_MPI=true 
    711717            ;; 
     718            *[dD][eE][pP]*) 
     719            # Read DEP parameter for composante 
     720            eval ${comp}_PROC_DEP=$( echo ${tempvar} | tr '[a-z]' '[A-Z]' | sed -e "s/DEP//" ) 
     721            ;; 
     722            *[dD][eE][dD][iI][cC][aA][tT][eE][dD]*) 
     723            # Read DEDICATED parameter for composante 
     724            eval ${comp}_OK_DEDICATED=1 
    712725          esac 
    713726          (( i = i + 1 )) 
     
    736749            fi 
    737750      fi 
     751      if ( [ ${comp}_OK_DEDICATED -eq 1 ] && [ "${comp}" != "IOS" ] ) ; then 
     752            IGCM_debug_Print 2 "Error using DEDICATED parameter !!!" 
     753            IGCM_debug_Exit "DEDICATED parameter is only available for IOS component " 
     754            IGCM_debug_Exit "Check your config.card. Exit now" 
     755            IGCM_debug_Verif_Exit 
     756      fi 
    738757 
    739758      eval tempvarMPI=\${${comp}_PROC_MPI} 
    740759      eval tempvarNOD=\${${comp}_PROC_NOD} 
    741760      eval tempvarOMP=\${${comp}_PROC_OMP} 
     761      eval tempvarDEP=\${${comp}_PROC_DEP} 
    742762 
    743763      # set OMP mode if more than 1 OMP thread. 
     
    751771          (( coreNumber = coreNumber + tempvarNOD * NB_CORE_PER_NODE )) 
    752772      else 
    753           (( coreNumber = coreNumber + tempvarMPI * tempvarNOD * tempvarOMP )) 
     773          (( coreNumber = coreNumber + tempvarMPI * tempvarNOD * tempvarOMP * tempvarDEP )) 
    754774      fi 
    755775      # SUM UP NUMBER OF MPI TASKS 
Note: See TracChangeset for help on using the changeset viewer.