Changeset 1875


Ignore:
Timestamp:
09/12/12 14:09:33 (12 years ago)
Author:
gpincka
Message:

portage sur machine ulam de l'idris

Location:
TOOLS/PACK_IPSL
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • TOOLS/PACK_IPSL/DEM_utilities.sh

    r1864 r1875  
    324324} 
    325325 
     326 
     327# Verification de la version de nco chargee sur ulam (machine IDRIS) 
     328function check_nco_version_idris 
     329{ 
     330   # nom du présent prog (pour gestion des erreurs)  
     331   PROGNAME="DEM_utilities.sh" ######### 
     332   . /etc/profile  
     333   module list >& myModuleList.txt 
     334    
     335   if [ "x$?" != "x0" ] 
     336   then 
     337       # echo "La commande module list a rencontre un pb !" 
     338       DEM_errorSend "${PROGNAME}:${LINENO}:La commande module list a rencontre un pb !" 
     339   fi 
     340    
     341   if [ ! -e myModuleList.txt ] 
     342   then 
     343       # echo "Le fichier 'myModuleList.txt'  n existe pas" 
     344       DEM_errorSend "${PROGNAME}:${LINENO}:Le fichier 'myModuleList.txt' n'existe pas." 
     345   fi    
     346    
     347   # Presence de la chaine "n) nco/" ou n est un nombre   
     348   ncoLines=` grep -e '[[:digit:]]*) nco/' myModuleList.txt ` 
     349   # ncoLines=` grep -e '[[:digit:]]*) nco/' moduleList.txt ` 
     350   # echo "ncoLines=${ncoLines}|" 
     351   # echo "----------------------------------------" 
     352 
     353   # Plus besoin du myModuleList.txt 
     354   rm -f myModuleList.txt 
     355  
     356   # La chaine "nco" est remplacee par le caractere "#" 
     357   temp1=`echo $ncoLines | sed 's;nco;#;g' ` 
     358   # echo "$temp1" 
     359   # echo "----------------------------------------" 
     360 
     361   # On supprime tout ce qui n'est pas "n) #/..." avec n un nombre et "..." une chaine sans blanc  
     362   temp2=`echo $temp1 | sed 's;[[:blank:]]*[[:digit:]]*) [^#][^[:blank:]]*;;g' ` 
     363   # echo "$temp2" 
     364   # echo "----------------------------------------" 
     365 
     366 
     367   # Recuperation du numero de version du nco au format x.y.z 
     368   # C'est une liste de num de version (a priori ici, il pourrait y en avoir plusieurs,  
     369   # mais dans les faits, les nco s'excluent les uns les autres) 
     370   temp3=`echo $temp2 | sed 's;[[:blank:]]*[[:digit:]]*) #/;|;g' ` 
     371   temp3=`echo $temp3 | sed 's;^|;;g' ` 
     372   temp3=`echo $temp3 | sed 's;|; ;g' ` 
     373   # echo "$temp3" 
     374   # echo "----------------------------------------" 
     375    
     376   # comptage du nombre de nco 
     377   versionNCO= 
     378   count=0 
     379   for ver in $temp3 
     380   do 
     381     # echo "ver=$ver" 
     382     versionNCO=$ver 
     383     count=$(( $count + 1 )) 
     384   done 
     385   # echo "count=$count" 
     386    
     387   # si aucun nco n'est charge, on sort. 
     388   if [ $count -eq 0 ] 
     389   then 
     390     # echo "nco pas charge" 
     391     DEM_errorSend "${PROGNAME}:${LINENO}:Aucun nco n'est charge" 
     392   fi 
     393    
     394   # si plus d'un nco sont charges, on sort (n'arrive jamais en pratique). 
     395   if [ $count -gt 1 ] 
     396   then 
     397     DEM_errorSend "${PROGNAME}:${LINENO}:Au moins 2 versions de nco sont chargees" 
     398   fi 
     399    
     400   # Si un seul nco est charge, on supprime les "." de son numero de version (x.y.z ==> xyz) 
     401   verNCOnumber=`echo $versionNCO | sed 's;[^[:digit:]];;g' ` 
     402   # echo "versionNCO=$versionNCO" 
     403    
     404   # On verifie que xyz est un nombre a 3 chiffres 
     405   verNCOnumberOK=`echo $verNCOnumber | grep -e '^[0-9]\{3\}$' | wc -l ` 
     406   #  if ! [[ "$verNCOnumber" =~ ^[0-9]\{3\}$ ]] # gpdebug : ne marche pas sous curie si ksh.  
     407   if [ "x${verNCOnumberOK}" == "x0" ] 
     408   then 
     409      # echo "verNCOnumber is not a number" 
     410      DEM_errorSend "${PROGNAME}:${LINENO}:La variable verNCOnumber n'est pas un nombre --> $verNCOnumber" 
     411   fi 
     412    
     413   # On verifie que le num de version est >= 4.0.5 
     414   if [ $verNCOnumber -lt 405 ] 
     415   then 
     416       # echo "version < 4.0.5 . STOP." 
     417       DEM_errorSend "${PROGNAME}:${LINENO}:La version de nco < 4.0.5 ==> $versionNCO" 
     418   fi 
     419    
     420   echo "La version de nco chargee est : $versionNCO" 
     421    
     422} 
     423 
     424function check_netcdf_idris 
     425{ 
     426   # nom du présent prog (pour gestion des erreurs)  
     427   PROGNAME="DEM_utilities.sh" ######### 
     428   . /etc/profile  
     429   module list >& myModuleList.txt 
     430    
     431   if [ "x$?" != "x0" ] 
     432   then 
     433       # echo "La commande module list a rencontre un pb !" 
     434       DEM_errorSend "${PROGNAME}:${LINENO}:La commande module list a rencontre un pb !" 
     435   fi 
     436    
     437   if [ ! -e myModuleList.txt ] 
     438   then 
     439       # echo "Le fichier 'myModuleList.txt'  n existe pas" 
     440       DEM_errorSend "${PROGNAME}:${LINENO}:Le fichier 'myModuleList.txt' n'existe pas." 
     441   fi    
     442    
     443   # Presence de la chaine "n) nco/" ou n est un nombre   
     444   nb_of_libLines=` grep -e '[[:digit:]]*) netcdf/' myModuleList.txt | wc -l ` 
     445 
     446   if [ "x${nb_of_libLines}" == "x0" ] 
     447   then 
     448       DEM_errorSend "${PROGNAME}:${LINENO}:Aucun netCDF n'est charge" 
     449   fi 
     450 
     451   # Plus besoin du myModuleList.txt 
     452   rm -f myModuleList.txt 
     453} 
     454 
    326455function check_libccc_user 
    327456{ 
  • TOOLS/PACK_IPSL/archive_debug.sh

    r1837 r1875  
    109109   date_end_pack=${year_end_pack}${month_end_pack}01    
    110110 
    111    for file in `awk '{print $9}' ${IGCM_TMP}/${$}.new_liste_debug_files.txt`; do  
    112      extract_date_file=`echo ${file}  | sed -e "s/.*\${JobName}_//"` 
    113      date_file=`echo ${extract_date_file}| sed 's/\([0-9]\{8\}\)_.*$/\1/g'` 
     111   if [ "x${ON_IDRIS}" == "xno" ] 
     112   then 
     113       for file in `awk '{print $9}' ${IGCM_TMP}/${$}.new_liste_debug_files.txt`; do  
     114         extract_date_file=`echo ${file}  | sed -e "s/.*\${JobName}_//"` 
     115         date_file=`echo ${extract_date_file}| sed 's/\([0-9]\{8\}\)_.*$/\1/g'` 
    114116 
    115      if [  ${date_file} -lt ${date_end_pack} ] 
    116      then  
    117         if [ ${date_file} -ge ${date_begin_pack} ] 
    118         then  
    119            echo ${file} >> ${IGCM_TMP}/${$}.liste_pack_debug_${number_pack}.txt 
    120         fi 
    121      fi 
    122     
    123    done 
     117         if [  ${date_file} -lt ${date_end_pack} ] 
     118         then  
     119            if [ ${date_file} -ge ${date_begin_pack} ] 
     120            then  
     121               echo ${file} >> ${IGCM_TMP}/${$}.liste_pack_debug_${number_pack}.txt 
     122            fi 
     123         fi  
     124       done 
     125   else 
     126        for file in `awk '{print $8}' ${IGCM_TMP}/${$}.new_liste_debug_files.txt`; do  
     127         extract_date_file=`echo ${file}  | sed -e "s/.*\${JobName}_//"` 
     128         date_file=`echo ${extract_date_file}| sed 's/\([0-9]\{8\}\)_.*$/\1/g'` 
     129 
     130         if [  ${date_file} -lt ${date_end_pack} ] 
     131         then  
     132            if [ ${date_file} -ge ${date_begin_pack} ] 
     133            then  
     134               echo ${file} >> ${IGCM_TMP}/${$}.liste_pack_debug_${number_pack}.txt 
     135            fi 
     136         fi  
     137       done   
     138   fi 
    124139 
    125140#on archive les debug - le nom de l'archive contiendra ${yearbegin}${monthbegin}_${yearend}${monthend}  
  • TOOLS/PACK_IPSL/archive_restart.sh

    r1822 r1875  
    116116 
    117117   date_end_pack=${year_end_pack}${month_end_pack}01    
     118    
     119   if [ "x${ON_IDRIS}" == "xno" ] 
     120   then 
     121       for file in `awk '{print $9}' ${IGCM_TMP}/${$}.new_liste_restart_files.txt`; do    
     122         extract_date_file=`echo ${file}  | sed -e "s/.*\${JobName}_//"` 
     123         date_file=`echo ${extract_date_file}| sed 's/\([0-9]\{8\}\)_.*$/\1/g'` 
    118124 
    119    for file in `awk '{print $9}' ${IGCM_TMP}/${$}.new_liste_restart_files.txt`; do  
    120     
    121      extract_date_file=`echo ${file}  | sed -e "s/.*\${JobName}_//"` 
    122      date_file=`echo ${extract_date_file}| sed 's/\([0-9]\{8\}\)_.*$/\1/g'` 
     125         # DEM_log "date_file = ${date_file}" 
     126         if [  ${date_file} -lt ${date_end_pack} ] 
     127         then  
     128            if [ ${date_file} -ge ${date_begin_pack} ] 
     129            then  
     130               # DEM_log "${file} ${date_file} dans ${date_begin_pack} ${date_end_pack} " 
     131               echo ${file} >> ${IGCM_TMP}/${$}.liste_pack_restart_${number_pack}.txt 
     132            fi 
     133         fi   
     134       done 
     135   else 
     136      for file in `awk '{print $8}' ${IGCM_TMP}/${$}.new_liste_restart_files.txt`; do    
     137         extract_date_file=`echo ${file}  | sed -e "s/.*\${JobName}_//"` 
     138         date_file=`echo ${extract_date_file}| sed 's/\([0-9]\{8\}\)_.*$/\1/g'` 
    123139 
    124 #    DEM_log "date_file = ${date_file}" 
    125     if [  ${date_file} -lt ${date_end_pack} ] 
    126     then  
    127         if [ ${date_file} -ge ${date_begin_pack} ] 
    128         then  
    129 #          DEM_log "${file} ${date_file} dans ${date_begin_pack} ${date_end_pack} " 
    130            echo ${file} >> ${IGCM_TMP}/${$}.liste_pack_restart_${number_pack}.txt 
    131         fi 
    132      fi 
    133     
    134    done 
     140         # DEM_log "date_file = ${date_file}" 
     141        if [  ${date_file} -lt ${date_end_pack} ] 
     142        then  
     143            if [ ${date_file} -ge ${date_begin_pack} ] 
     144            then  
     145               # DEM_log "${file} ${date_file} dans ${date_begin_pack} ${date_end_pack} " 
     146               echo ${file} >> ${IGCM_TMP}/${$}.liste_pack_restart_${number_pack}.txt 
     147            fi 
     148         fi   
     149       done   
     150   fi 
    135151 
    136152#on archive les restart - le nom de l'archive contiendra ${yearbegin}${monthbegin}_${yearend}${monthend}  
  • TOOLS/PACK_IPSL/enlarge_my_files.sh

    r1855 r1875  
    198198            # Try 2 times before fire "FAILED" 
    199199            ncrcatcmd=ncrcat 
    200             ncrcatoptions="--md5_digest" 
     200            ncrcatoptions="" 
     201            if [ "x${ON_IDRIS}" == "xno" ] 
     202            then 
     203                ncrcatoptions="--md5_digest"         
     204            fi 
    201205    #   ncrcatoptions="" 
    202206 
  • TOOLS/PACK_IPSL/launch_ipsl_enlarge.sh

    r1862 r1875  
    1111 
    1212# ex : ./launch_ipsl_enlarge.sh 
     13 
     14# Est-on sur ulam (machine de l'IDRIS) ? 
     15is_idris_machine=`hostname | grep "ulam" | wc -l ` 
     16ON_IDRIS="no" 
     17if [ "x${is_idris_machine}" != "x0" ] 
     18then 
     19    ON_IDRIS="yes" 
     20fi 
     21export ON_IDRIS=${ON_IDRIS} 
    1322 
    1423# gpdebug : pour option -f 
     
    6675DEM_log -0 "Demarrage de ${SCRIPT_NAME}" 
    6776 
    68 check_nco_version # gpdebug : verification de la version de nco ####################### 
     77if [ "x${ON_IDRIS}" == "xno" ] 
     78then 
     79    check_nco_version # verification de la version de nco ####################### 
     80else 
     81    check_nco_version_idris # verification de la version de nco (sur la machine ulam de l'idris) 
     82    check_netcdf_idris      # verification du chargement du module netCDF (pour cmd ncdump)  
     83fi 
    6984 
    7085# gpdebug : si l'option -f est activee, on detruit tous les fichiers status 
  • TOOLS/PACK_IPSL/launch_ipsl_pack.sh

    r1864 r1875  
    1616export JOB_DIR=${LS_SUBCWD:-${PWD}} 
    1717export EXE_DIR=${JOB_DIR} 
     18 
     19# Est-on sur ulam (machine de l'IDRIS) ? 
     20is_idris_machine=`hostname | grep "ulam" | wc -l ` 
     21ON_IDRIS="no" 
     22if [ "x${is_idris_machine}" != "x0" ] 
     23then 
     24    ON_IDRIS="yes" 
     25fi 
     26export ON_IDRIS=${ON_IDRIS} 
    1827 
    1928##### gpdebug : addition ################################## 
     
    100109# gpdebug : prepare le fichier de suivi de la progression 
    101110prepareMonitoringDir 
    102 # exit 0 # gpdebug : a virer ############## 
    103111 
    104112# gpdebug : Execute la function errorReceive() si reception d'un signal TERM 
Note: See TracChangeset for help on using the changeset viewer.