source: trunk/libIGCM/AA_rebuild_fromArchive @ 318

Last change on this file since 318 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
Line 
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"
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
25#-Q- sx8brodie # @ wall_clock_limit = 20:00:00
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
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
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
41#-Q- aix6 # @ wall_clock_limit = 20:00:00
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
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
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
61#-Q- sx8mercure #PBS -q scalaire
62#-Q- sx9mercure #!/bin/ksh
63#-Q- sx9mercure ######################
64#-Q- sx9mercure ## CESIUM FOR SX9  CEA ##
65#-Q- sx9mercure ######################
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"
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
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
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
118#D- Low level debug : to bypass lib test checks and stack construction
119#D- Default : value from AA_job if any
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.
125
126#D- Do we rebuild parallel output from archive or from ${BIGDIR}
127#D- Default : value from AA_job if any
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
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
140NbRebuildDir=${NbRebuildDir:=1000}
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
145LastPeriodForRebuild=${PeriodDateBegin:=18901201}
146
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
151#D- Directory where output data are stored (needed in standalone mode for mask patch)
152#D- Default : value from AA_job if any
153R_SAVE=${R_SAVE:=/path/to/your/ARCHIVE/FILES}
154
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
169RESOL_ATM=${RESOL_ATM:=ALL}
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
179#D- TEMPORARY Flag to determine biogeochemistry resolution
180#D- Default : value from ice driver if any
181RESOL_MBG=${RESOL_MBG:=ORCA2}
182
183#D- Flag to determine surface resolution
184#D- Default : value from surface driver if any
185RESOL_SRF=ALL
186
187#D- Flag to determine surface resolution
188#D- Default : value from surface driver if any
189RESOL_SBG=ALL
190
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
207RUN_DIR=${RUN_DIR_PATH}
208IGCM_sys_MkdirWork ${RUN_DIR}
209IGCM_sys_Cd ${RUN_DIR}
210#
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
216#
217
218for directory in ${ListAllRebuildDir} ; do
219    #
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
225    #
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}
235    # Clean Up
236    if [ ${RebuildFromArchive} = true ] ; then
237        IGCM_sys_RshArchive rm -rf ${directory}
238    else
239        IGCM_sys_Rm -rf ${directory}
240    fi
241done
242
243# Clean RUN_DIR_PATH (necessary for cesium only)
244IGCM_sys_RmRunDir -Rf ${RUN_DIR_PATH}
Note: See TracBrowser for help on using the repository browser.