Chunk lance : Différence entre versions
m |
m (→Restart from previous restart file) |
||
Ligne 39: | Ligne 39: | ||
<br> | <br> | ||
− | + | === Restart from previous restart file === | |
Continue simulation from a restart file:<br> | Continue simulation from a restart file:<br> | ||
Ligne 45: | Ligne 45: | ||
* '''Copy restart file''' of previous month (if there is more than 1 part, copy all parts!) from the archive (${CLIMAT_archdir}/Restarts) back into the execution directory "~/MODEL_EXEC_RUN/$TRUE_HOST"<br> | * '''Copy restart file''' of previous month (if there is more than 1 part, copy all parts!) from the archive (${CLIMAT_archdir}/Restarts) back into the execution directory "~/MODEL_EXEC_RUN/$TRUE_HOST"<br> | ||
− | * '''Gunzip''' and '''unarchive''' (cmcarc -x -f ...) the restart file(s) in ~/MODEL_EXEC_RUN/$TRUE_HOST<br> The cmcarc-command will create a new directory, but the *.ca file will remain in the directory. You can remove it again. | + | * '''Gunzip''' and '''unarchive''' (cmcarc -x -f ...) the restart file(s) in ~/MODEL_EXEC_RUN/$TRUE_HOST<br> The cmcarc-command will create a new directory, but the *.ca file will remain in the directory. You can remove it again. |
* Go into the config file directory<br> | * Go into the config file directory<br> | ||
* '''Edit''' the log file ''''chunk_job.log'''':<br> (First I suggest to make a backup copy of the log file.)<br> The remove all lines concerning the month you want to rerun and all following lines.<br> | * '''Edit''' the log file ''''chunk_job.log'''':<br> (First I suggest to make a backup copy of the log file.)<br> The remove all lines concerning the month you want to rerun and all following lines.<br> | ||
+ | |||
+ | * '''If''' you are '''running the entry in parallel''', <br> you will also have to '''remove''' all the '''${exp}_entry_finished''' flags in your config file directory for all the months you want to rerun. | ||
* Execute "'''Chunk_lance'''" again | * Execute "'''Chunk_lance'''" again | ||
<br> | <br> |
Version depuis le 2 d'avril 2015 à 13:29
Chunk_lance
Chunk_lance allows to run a sequence of monthly model jobs in one big job.
A GEM/GEMCLIM/CRCM5 simulation usually consists of a sequence of monthly jobs.
Each monthly consists of 2 (global) or 3(LAM & first month global) parts:
- scripts (copies restart files from previous month, prepare config files for new month)
- entry (prepare initial conditions (first month only); in LAM mode: prepares driving data for each month)
- model (main model job)
Chunk_lance will run a series of these 2 resp. 3 jobs, checking at the end of each model job if there is still enough time to calculate another month. If yes the 3 jobs will get executed for another month, if not an new chunk_job will get submitted.
In case the model job fails it will automatically get reexecuted a second time.
But sometimes it happens that part of the restart files gets overwritten before a month is finished. In that case we cannot just relaunch the month with Chunk_lance but have to get the original restart files back (from the previous month) etc. and restart the simulation from there.
When the model job stops for whatever reason, there is an automatic check in Chunk_lance if the restart files are still the original ones or not. If they got already modified the following message will appear in the "chunk_job listing" (!!!) not in the model listing:
At least one of the restart files got already rewritten
Therefore the model could not get restarted automatically
You have to restart your simulation starting from the previous restart files
----- ABORT -----
If you see this message please do not simply restart the simulation with Chunk_lance but as said, from the previous restart file - see below.
Since the running job is now always called "cjob_${exp}_..." one cannot see anymore from the job name how far the simulation has progressed. But one can always have a look at the listings directory and also a log file is kept in the config file directory called 'chunk_job.log'.
This file 'chunk_job.log' is essential for the whole chunk_job procedure. The chunk_job itself will check this file to determine which job to execute next. Therefore this log file should not be touched and must only be removed if one wants to restart a simulation from the beginning.
However, to rerun part of a simulation one can alter the log file by hand. Just make sure there is never a blank line at the end of the log file since the chunk_job only checks the very last line of the log file!
To start a simulation using Chunk_lance one only has to set the model environment (for example with '333') and execute "Chunk_lance" in the config file directory.
The time up to which one chunk_job will be running can be set in the file 'configexp.dot.cfg' with the parameter 'BACKEND_time_mod'.
On guillimin one job is allowed to run up to 30 days (2592000 sec).
On colosse one job is allowed to run up to 2 days (172800 sec).
Restart using Chunk_lance
In case a simulation stops and you want to find out which job (scripts, entry or model) crashed, you have have look in the listings directory (~/listings/${TRUE_HOST}). Check which of the following jobs has crashed:
${exp}_S (Scripts)
${exp}_E (Entry - only first month and LAM)
${exp}_M (Model)
Or you can have a look at the log file "chunk_job.log".
In any case, you can restart your simulation by simply executing
Chunk_lance
again in the config file directory.
Of course AFTER you fixed the problem - unless it was a machine problem. In the latter case, just restart the simulation with 'Chunk_lance'.
Restart from previous restart file
Continue simulation from a restart file:
* Copy restart file of previous month (if there is more than 1 part, copy all parts!) from the archive (${CLIMAT_archdir}/Restarts) back into the execution directory "~/MODEL_EXEC_RUN/$TRUE_HOST"
* Gunzip and unarchive (cmcarc -x -f ...) the restart file(s) in ~/MODEL_EXEC_RUN/$TRUE_HOST
The cmcarc-command will create a new directory, but the *.ca file will remain in the directory. You can remove it again.
* Go into the config file directory
* Edit the log file 'chunk_job.log':
(First I suggest to make a backup copy of the log file.)
The remove all lines concerning the month you want to rerun and all following lines.
* If you are running the entry in parallel,
you will also have to remove all the ${exp}_entry_finished flags in your config file directory for all the months you want to rerun.
* Execute "Chunk_lance" again