source: trunk/libIGCM/AA_rebuild_fromArchive @ 326

Last change on this file since 326 was 316, checked in by mafoipsl, 14 years ago

Use cesium for SX9 post processing. Add hostname to know where we run.

File size: 9.7 KB
RevLine 
[314]1#-Q- cesium #!/bin/ksh
2#-Q- cesium ######################
3#-Q- cesium ## CESIUM   CEA ##
4#-Q- cesium ######################
5#-Q- cesium #MSUB -r REBUILDARCH    # Nom du job               
6#-Q- cesium #MSUB -N 1              # Reservation du noeud
7#-Q- cesium #MSUB -n 1              # Reservation du processus
8#-Q- cesium #MSUB -T 86400          # Limite de temps elapsed du job
9#-Q- cesium #MSUB -E "-j o"
10#-Q- cesium #MSUB -E "-S /bin/ksh"
[108]11#-Q- platine #!/usr/bin/ksh
12#-Q- platine ###################
13#-Q- platine ## PLATINE   CEA ##
14#-Q- platine ###################
15#-Q- platine #BSUB -J REBUILDARCH            # Nom du job
16#-Q- platine #BSUB -N                        # message a la fin du job
17#-Q- platine #BSUB -n 1                      # reservation des processeurs pour le job
18#-Q- platine #BSUB -W 4:00                   # Limite temps
19#-Q- platine #BSUB -q post                   # Passage en queue post
20#-Q- sx8brodie #!/bin/ksh
21#-Q- sx8brodie #######################
22#-Q- sx8brodie ## SX8BRODIE   IDRIS ##
23#-Q- sx8brodie #######################
24#-Q- sx8brodie # Temps Elapsed max. d'une requete hh:mm:ss
[220]25#-Q- sx8brodie # @ wall_clock_limit = 20:00:00
[108]26#-Q- sx8brodie # Nom du travail LoadLeveler
27#-Q- sx8brodie # @ job_name   = REBUILDARCH
28#-Q- sx8brodie # Fichier de sortie standard du travail       
29#-Q- sx8brodie # @ output     = $(job_name).$(jobid)
30#-Q- sx8brodie # Fichier de sortie d'erreur du travail
31#-Q- sx8brodie # @ error      =  $(job_name).$(jobid)
32#-Q- sx8brodie # pour recevoir un mail en cas de depassement du temps Elapsed (ou autre pb.)
33#-Q- sx8brodie # @ notification = error
[236]34#-Q- sx8brodie # @ environment  = $DEBUG_debug ; $MODIPSL ; $libIGCM ; $libIGCM_SX ; $SUBMIT_DIR ; $REBUILD_DIR ; $RebuildFromArchive ; $POST_DIR ; $DateBegin ; $PeriodDateBegin ; $PeriodDateEnd ; $NbRebuildDir ; $StandAlone ; $RESOL_ATM ; $RESOL_OCE ; $RESOL_ICE ; $RESOL_MBG ; $RESOL_SRF ; $RESOL_SBG ; $MASTER ; $RebuildFromArchive ; $config_UserChoices_JobName ; $R_SAVE
[108]35#-Q- sx8brodie # @ queue
36#-Q- aix6 #!/bin/ksh
37#-Q- aix6 #######################
38#-Q- aix6 ##   VARGAS   IDRIS  ##
39#-Q- aix6 #######################
40#-Q- aix6 # Temps Elapsed max. d'une requete hh:mm:ss
[159]41#-Q- aix6 # @ wall_clock_limit = 20:00:00
[108]42#-Q- aix6 # Nom du travail LoadLeveler
43#-Q- aix6 # @ job_name   = REBUILDARCH
44#-Q- aix6 # Fichier de sortie standard du travail
45#-Q- aix6 # @ output     = $(job_name).$(jobid)
46#-Q- aix6 # Fichier de sortie d'erreur du travail
47#-Q- aix6 # @ error      =  $(job_name).$(jobid)
48#-Q- aix6 # pour recevoir un mail en cas de depassement du temps Elapsed (ou autre pb.)
49#-Q- aix6 # @ notification = error
[236]50#-Q- aix6 # @ environment  = $DEBUG_debug ; $MODIPSL ; $libIGCM ; $libIGCM_SX ; $SUBMIT_DIR ; $REBUILD_DIR ; $RebuildFromArchive ; $POST_DIR ; $DateBegin ; $PeriodDateBegin ; $PeriodDateEnd ; $NbRebuildDir ; $StandAlone ; $RESOL_ATM ; $RESOL_OCE ; $RESOL_ICE ; $RESOL_MBG ; $RESOL_SRF ; $RESOL_SBG ; $MASTER ; $RebuildFromArchive ; $config_UserChoices_JobName ; $R_SAVE
[108]51#-Q- aix6 # @ queue
52#-Q- sx8mercure #!/bin/ksh
53#-Q- sx8mercure ######################
54#-Q- sx8mercure ## SX8MERCURE   CEA ##
55#-Q- sx8mercure ######################
56#-Q- sx8mercure #PBS -N REBUILDARCH          # Nom du job
57#-Q- sx8mercure #PBS -j o                    # regroupement des stdout et stderr
58#-Q- sx8mercure #PBS -S /usr/bin/ksh         # shell de soumission
59#-Q- sx8mercure #PBS -l memsz_job=1gb        # Limite memoire a 1 Go
60#-Q- sx8mercure #PBS -l cputim_job=24:00:00  # Limite temps a 1 heures
[299]61#-Q- sx8mercure #PBS -q scalaire
[172]62#-Q- sx9mercure #!/bin/ksh
63#-Q- sx9mercure ######################
[316]64#-Q- sx9mercure ## CESIUM FOR SX9  CEA ##
[172]65#-Q- sx9mercure ######################
[316]66#-Q- sx9mercure #MSUB -r REBUILDARCH    # Nom du job               
67#-Q- sx9mercure #MSUB -N 1              # Reservation du noeud
68#-Q- sx9mercure #MSUB -n 1              # Reservation du processus
69#-Q- sx9mercure #MSUB -T 86400          # Limite de temps elapsed du job
70#-Q- sx9mercure #MSUB -E "-j o"
71#-Q- sx9mercure #MSUB -E "-S /bin/ksh"
[222]72#-Q- titane #!/bin/ksh
73#-Q- titane ######################
74#-Q- titane ## TITANE   CEA ##
75#-Q- titane ######################
76#-Q- titane #MSUB -r REBUILDARCH    # Nom du job               
77#-Q- titane #MSUB -N 1              # Reservation du noeud
78#-Q- titane #MSUB -n 1              # Reservation du processus
79#-Q- titane #MSUB -T 86400          # Limite de temps elapsed du job
80#-Q- titane #MSUB -E "-j o"
81#-Q- titane #MSUB -E "-S /bin/ksh"
82#-Q- titane ##MSUB -e nco.out        # Sortie standard
83#-Q- titane ##MSUB -o nco.out        # Sortie standard
[281]84#-Q- lxiv8 ######################
85#-Q- lxiv8 ## OBELIX      LSCE ##
86#-Q- lxiv8 ######################
87#-Q- lxiv8 #PBS -N REBUILDARCH
88#-Q- lxiv8 #PBS -m a
89#-Q- lxiv8 #PBS -j oe
90#-Q- lxiv8 #PBS -q medium
91#-Q- lxiv8 #PBS -o REBUILDARCH.$$
92#-Q- lxiv8 #PBS -S /bin/ksh
[108]93#-Q- default #!/bin/ksh
94#-Q- default ##################
95#-Q- default ## DEFAULT HOST ##
96#-Q- default ##################
97
98# $Date: $
99# $Author: $
100# $Revision: $
101# IPSL (2006)
102#  This software is governed by the CeCILL licence see libIGCM/libIGCM_CeCILL.LIC
103
104#set -eu
105#set -vx
106
107date
108
109#-Q- sx8brodie export OMP_NUM_THREADS=1
110#-Q- aix6 export OMP_NUM_THREADS=1
111
112########################################################################
113
114#D- Flag to determine if this job in a standalone mode
115#D- Default : value from AA_job if any
116StandAlone=${StandAlone:=true}
117
[206]118#D- Low level debug : to bypass lib test checks and stack construction
119#D- Default : value from AA_job if any
[229]120libIGCM=${libIGCM:=::modipsl::/libIGCM}
121# WARNING for StandAlone used : To run this script on some machine,
122# you must check MirrorlibIGCM variable in sys library.
123# If this variable is true, you must use libIGCM_POST path instead
124# of your running libIGCM directory.
[206]125
[257]126#D- Do we rebuild parallel output from archive or from ${BIGDIR}
[206]127#D- Default : value from AA_job if any
[257]128RebuildFromArchive=${RebuildFromArchive:=true}
129
130#D- Directory where files we need to rebuild are store
131#D- Default : value from AA_job if any
132#D- if RebuildFromArchive=true REBUILD_DIR=${DMFDIR}/IGCM_OUT/.../JobName/TMP
133#D- example : /dmnfs09/cont003/p86denv/IGCM_OUT/IPSLCM5/CM5PIRC7/TMP
134#D- if RebuildFromArchive=false REBUILD_DIR=${BIGDIR}/REBUILD/TagName/JobName/
135#D- example : /scratch/cont003/p86denv/REBUILD/IPSLCM5/SCAL-NEW
[206]136REBUILD_DIR=${REBUILD_DIR:=/path/to/your/TMP/REBUILD/FILES}
137
138#D- How many directory to rebuild we have to consider
139#D- Default : value from AA_job if any
[229]140NbRebuildDir=${NbRebuildDir:=1000}
[206]141
142#D- Suffix date we will use to determine which directory to rebuild
143#D- We will rebuild NbRebuildDir before and including PeriodDateBegin
144#D- Default : value from AA_job if any
[229]145LastPeriodForRebuild=${PeriodDateBegin:=18901201}
[206]146
[213]147#D- Name of the job to work in a standalone mode (needed for mask patch)
148#D- Default : value from config.card if any
149config_UserChoices_JobName=${config_UserChoices_JobName:=name_of_the_job}
150
[236]151#D- Directory where output data are stored (needed in standalone mode for mask patch)
[213]152#D- Default : value from AA_job if any
153R_SAVE=${R_SAVE:=/path/to/your/ARCHIVE/FILES}
154
[108]155#D- Flag to determine atlas job's output directory
156#D- Default : value from libIGCM_post.ksh if any
157POST_DIR=${POST_DIR:=${PBS_O_WORKDIR}}
158
159#D- Increased verbosity (1, 2, 3)
160#D- Default : value from AA_job if any
161Verbosity=${Verbosity:=3}
162
163#D- Low level debug : to bypass lib test checks and stack construction
164#D- Default : value from AA_job if any
165DEBUG_debug=${DEBUG_debug:=false}
166
167#D- TEMPORARY Flag to determine atmospheric resolution
168#D- Default : value from atmospheric driver if any
[135]169RESOL_ATM=${RESOL_ATM:=ALL}
[108]170
171#D- TEMPORARY Flag to determine ocean resolution
172#D- Default : value from ocean driver if any
173RESOL_OCE=${RESOL_OCE:=ORCA2}
174
175#D- TEMPORARY Flag to determine ice resolution
176#D- Default : value from ice driver if any
177RESOL_ICE=${RESOL_ICE:=ORCA2}
178
[178]179#D- TEMPORARY Flag to determine biogeochemistry resolution
180#D- Default : value from ice driver if any
181RESOL_MBG=${RESOL_MBG:=ORCA2}
182
[108]183#D- Flag to determine surface resolution
184#D- Default : value from surface driver if any
[213]185RESOL_SRF=ALL
[108]186
[213]187#D- Flag to determine surface resolution
188#D- Default : value from surface driver if any
189RESOL_SBG=ALL
[207]190
[108]191########################################################################
192
193. ${libIGCM}/libIGCM_debug/libIGCM_debug.ksh
194      ( ${DEBUG_debug} ) && IGCM_debug_Check
195. ${libIGCM}/libIGCM_card/libIGCM_card.ksh
196     ( ${DEBUG_debug} ) && IGCM_card_Check
197. ${libIGCM}/libIGCM_date/libIGCM_date.ksh
198     ( ${DEBUG_debug} ) && IGCM_date_Check
199#-------
200. ${libIGCM}/libIGCM_sys/libIGCM_sys.ksh
201. ${libIGCM}/libIGCM_post/libIGCM_post.ksh
202
203########################################################################
204
205#set -vx
206
[157]207RUN_DIR=${RUN_DIR_PATH}
[202]208IGCM_sys_MkdirWork ${RUN_DIR}
209IGCM_sys_Cd ${RUN_DIR}
210#
[236]211if [ ${RebuildFromArchive} = true ] ; then
212    ListAllRebuildDir=$( IGCM_sys_RshArchive ls -d ${REBUILD_DIR}/REBUILD_* | grep -B $(( ${NbRebuildDir} -1 )) ${LastPeriodForRebuild} )
213else
214    ListAllRebuildDir=$( IGCM_sys_RshMaster ls -d ${REBUILD_DIR}/REBUILD_* | grep -B $(( ${NbRebuildDir} -1 )) ${LastPeriodForRebuild} )
215fi
[157]216#
[108]217
218for directory in ${ListAllRebuildDir} ; do
219    #
[236]220    if [ ${RebuildFromArchive} = true ] ; then
221        IGCM_sys_Get_Dir ${directory} ${RUN_DIR}
222    else
223        IGCM_sys_Get_Master ${directory} ${RUN_DIR}
224    fi
[157]225    #
[108]226    IGCM_sys_Cd ${RUN_DIR}/$( basename ${directory} )
227
228    # --------------------------------------------------------------------
229    # Source function include in the REBUILD ksh and rebuild
230    # --------------------------------------------------------------------
231    . ${RUN_DIR}/$( basename ${directory} )/rebuild.ksh
232    IGCM_FlushRebuild
233    #
234    IGCM_sys_Cd ${RUN_DIR}
[147]235    # Clean Up
[236]236    if [ ${RebuildFromArchive} = true ] ; then
237        IGCM_sys_RshArchive rm -rf ${directory}
238    else
239        IGCM_sys_Rm -rf ${directory}
240    fi
[108]241done
[203]242
[236]243# Clean RUN_DIR_PATH (necessary for cesium only)
[203]244IGCM_sys_RmRunDir -Rf ${RUN_DIR_PATH}
Note: See TracBrowser for help on using the repository browser.