Ignore:
Timestamp:
10/25/23 14:34:02 (8 months ago)
Author:
aclsce
Message:
  • Changed libIGCM behaviour in case of pb in pack_output.job : now, we exit from the job if there is any problem, whatever we are in PROD, DEVT, TEST mode.
  • Specification of pack frequency per file :

In order to reduce the number of inodes, it is possible to specify by file the frequency of packing. The syntax to do that is in the 4th column of OutputFiles? section of the component.card, for example as follows in lmdz.card :
[OutputFiles?]
List= (histmth.nc, ${R_OUT_ATM_O_M}/${PREFIX}_1M_histmth.nc, Post_1M_histmth, 100Y), \

(histday.nc, ${R_OUT_ATM_O_D}/${PREFIX}_1D_histday.nc, Post_1D_histday, 10Y), \

...

In this example, histmth files will be packed every 100 years and histday files will be packed every 10 years.
The pack frequency you defined in config.card is the frequency of pack by default, that means if a specific frequency of pack is specified for a file in a component.card, this file will be packed at the specific frequency whereas all other files will be packed at global pack frequency (specified in config.card) and in this case, the frequency pack (from the config.card) is the frequency the pack_output job will be launched at.
There is a constraint to use this fonctionality : the Packfrequency you defined in config.card must be greater or equal to the pack frequencies you specified for each type of file in component.card, otherwise the computing job will be stopped (with an explicit error message).
Surpack mode :
A surpack mode functionality is available through the use of pack_output.job. To enable this functionality, you have to put "surpack_mode=y" (default value is n). The way to use is similar to restart post-processing pack_output jobs, as indicated here : http://forge.ipsl.jussieu.fr/igcmg_doc/wiki/Doc/CheckDebug#RestartPack_output. You can either use a global pack frequency in config.card or specific pack frequency per file, as explained above.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/libIGCM/AA_create_se

    r1598 r1603  
    308308        # 
    309309        if [ ! X$( eval echo \${${compname}_${flag_post}_Seasonal} ) = XON ] ; then 
     310            (( i_ = i+1 )) 
     311            eval Testvar_=\${${ListFilesName}[$i_]} > /dev/null 2>&1 
     312            eval Testvar=${Testvar_} 
     313            if [[ ${Testvar} =~ [0-9][DMY]$ ]] ; then 
     314                (( i = i+4 )) 
     315            else 
    310316          (( i=i+3 )) 
     317            fi 
    311318          continue 
    312319        fi 
     
    323330        if [ ! $? = 0 ] ; then 
    324331          eval set +A LISTE_FILE_${comp} \$\{LISTE_FILE_${comp}[*]} ${FILE} 
     332          (( i_ = i+1 )) 
     333          eval Testvar_=\${${ListFilesName}[$i_]} > /dev/null 2>&1 
     334          eval Testvar=${Testvar_} 
     335          if [[ ${Testvar} =~ [0-9][DMY]$ ]] ; then 
     336              eval PeriodPack_FileType=${Testvar} 
     337          else 
     338              PeriodPack_FileType=${config_Post_PackFrequency} 
     339          fi 
     340          eval set +A LISTE_PACKFREQUENCY_${comp} \${LISTE_PACKFREQUENCY_${comp}[*]} ${PeriodPack_FileType} 
    325341          if [ ! ${RebuildFrequency} = true ] ; then 
    326342            IGCM_card_DefineArrayFromOption ${card} Post_${FILE} Patches 
     
    337353        fi 
    338354      fi 
     355      (( i_ = i+1 )) 
     356      eval Testvar_=\${${ListFilesName}[$i_]} > /dev/null 2>&1 
     357      eval Testvar=${Testvar_} 
     358      if [[ ${Testvar} =~ [0-9][DMY]$ ]] ; then 
     359          (( i = i+4 )) 
     360      else 
    339361      (( i=i+3 )) 
     362      fi 
    340363    done # until [ $i -eq $NbFiles ] 
    341364  fi 
     
    348371  i=0 
    349372  for file in $( eval echo \${LISTE_FILE_${comp}[*]} ); do 
     373  config_UserChoices_PeriodLength=$( eval echo \${LISTE_PACKFREQUENCY_${comp}[$i]} )  
    350374    # 
    351375    # Determine in which output can we find file 
     
    588612    [ -f ${RESULT_SE} ] && IGCM_sys_Rm ${RESULT_SE} 
    589613    # 
     614    (( i = i + 1 )) 
    590615  done 
    591616done 
Note: See TracChangeset for help on using the changeset viewer.