Ignore:
Timestamp:
10/25/23 14:34:02 (7 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/libIGCM_debug/libIGCM_debug.ksh

    r1578 r1603  
    880880      case ${postProcessingName} in 
    881881      atlas*|monitoring*|metrics*) 
    882         [ ${postProcessingStopLevel} -gt 2 ] && StopAll=true ;; 
     882        [ ${postProcessingStopLevel} -gt 2 ] && StopAll=true 
     883        echo "The job is not a pack job " 
     884        echo "SO WE DO NOT EXIT THE JOB." 
     885        echo 
     886        date 
     887        ;;  
    883888      create_*) 
    884         [ ${postProcessingStopLevel} -gt 1 ] && StopAll=true ;; 
     889        [ ${postProcessingStopLevel} -gt 1 ] && StopAll=true 
     890        echo "The job is not a pack job " 
     891        echo "SO WE DO NOT EXIT THE JOB." 
     892        echo 
     893        date    
     894        ;; 
    885895      rebuild*|pack_*) 
    886         [ ${postProcessingStopLevel} -gt 0 ] && StopAll=true ;; 
     896          if [ ${postProcessingStopLevel} -gt 0 ] ; then 
     897      # Notify the computing job that something wrong happened and stop it. 
     898              IGCM_card_WriteOption ${SUBMIT_DIR}/run.card Configuration PeriodState "Fatal.${Script_Post_Output}" 
     899          fi 
     900        echo "                        EXIT THE POST-PROCESSING JOB." 
     901        echo 
     902        IGCM_debug_CallStack 
     903 
     904        # Inform the rabbitMQ queue 
     905        IGCM_debug_BigBro_Finalize 
     906 
     907        # And Good Bye 
     908        date 
     909        exit 1 
     910        ;; 
    887911      esac 
    888912      # Notify the computing job that something wrong happened and stop it. 
    889913      ( ${StopAll} ) && IGCM_card_WriteOption ${SUBMIT_DIR}/run.card Configuration PeriodState "Fatal.${Script_Post_Output}" 
    890914 
    891       # If SpaceName is PROD we stop when post_processing failed 
    892       if [ X${config_UserChoices_SpaceName} = XPROD ] ; then 
    893         echo "                        EXIT THE POST-PROCESSING JOB." 
    894         echo 
    895         IGCM_debug_CallStack 
    896  
    897         # Inform the rabbitMQ queue 
    898         IGCM_debug_BigBro_Finalize 
    899  
    900         # And Good Bye 
    901         date 
    902         exit 1 
    903       else 
    904         echo "In config.card the variable SpaceName is not in PROD" 
    905         echo "              SO WE DO NOT EXIT THE JOB." 
    906         echo 
    907         date 
    908       fi 
    909915    elif [ X${TaskType} = Xchecking ] ; then 
    910916      echo "Nothing will happen for now" 
Note: See TracChangeset for help on using the changeset viewer.