source: tags/libIGCM_v1_5/AA_rebuild_fromWorkdir @ 487

Last change on this file since 487 was 229, checked in by mmaipsl, 14 years ago

Littles modifications in StandAlone? mode for post-treatment scripts.

Change libIGCM default path for StandAlone? :
Now ins_job will give libIGCM path on host for run
(add a warning for blind system that require mirroring).
In rebuild jobs :
1) change NbRebuildDir? default value to 1000

(ie "all" old rebuild that haven't been done).

2) Change name of internal 'PeriodDateBegin?' for "LastPeriodForRebuild?".

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