Is there a way to specify different queues automatically with libIGCM?
Author: M. McGrath
Last revision: 2020/02/28, J. Lathière
I've often found that when I'm running on Obelix, I want to change the default queue used by libIGCM. For example, if I'm running short test jobs, or larger parallel runs, I don't want to be submitting to the queue 'medium'. There is a very simple way to do this on libIGCM 2.1.1.
The file libIGCM/AA_job is the template for the Job_* files created by libIGCM. In there, you can find header information for the different predefined machines at IPSL (irene, jeanzay, obelix, ciclad/climserv). For example for obelix, find the following header information:
#-Q- lxiv8 ###################### #-Q- lxiv8 ## OBELIX LSCE ## #-Q- lxiv8 ###################### #-Q- lxiv8 #PBS -N ::Jobname:: #-Q- lxiv8 #PBS -m a #-Q- lxiv8 #PBS -j oe #-Q- lxiv8 #PBS -q medium #-Q- lxiv8 #PBS -o Script_Output_::Jobname::.000001 #-Q- lxiv8 #PBS -S /bin/ksh #-Q- lxiv8 #PBS -v BATCH_NUM_PROC_TOT=::JobNumProcTot:: #-Q- lxiv8 #PBS -l nodes=1:ppn=::JobNumProcTot::
In order to change the queue to the short queue or the medium parallel queue (the two I use most often), you need to change the line
#-Q- lxiv8 #PBS -q medium
to
#-Q- lxiv8 #PBS -q short
or
#-Q- lxiv8 #PBS -q mediump
You can now create the main job using ins_job command as usual. This will ensure that all computing jobs submitted after the first job are in your desired queue.
If you want to change as well the post-processing jobs, this can also be done in the same way in corresponding libIGCM/AA_* file. For example, change the file libIGCM/AA_create_ts if you want to change the default queue in the create_ts.job. After changing the post-treatement AA_* files, you need to delete the corresponding *.job files (for example libIGCM/create_ts.job) and relaunch ins_job to create them again.