Soumet : travaux par lots / batch jobs
Matières
soumission facile de travaux par lots / an easy way to submit batch jobs
ord_soumet my_job_file [arg1] [arg2] .... [argn]
/home/ordenv/ssm-domains/ssm-setup-1.0/multi/bin/ord_soumet my_job_file [arg1] [arg2] .... [argn]
ex:
ord_soumet essai1 -mach saiph -t 500 -cpus 2x2x4 -jn experience001 -listing ~/listings/special
ord_soumet est disponible directement dans l'environnement mais peut également être utilisé en mode autonome N.B. une copie ne fonctionnera pas, mais on peu utiliser un "soft link" vers l'original |
ord_soumet is automatically available to all users of the i environment but may also be used in stand-alone mode N.B. a copy of ord_soumet will not work but a soft link to it will |
arguments
Liste des arguments / argument list
le nom des arguments les plus courants est en caractères gras, les cellules colorées représentent des arguments non reconnus par ord_soumet, mais potentiellement reconnus par ord_soumet_alpha et/ou ord_soumet_beta (certaines options ne fonctionnent q'avec le nouvel environnement ) NOTE : si la première ligne du fichier soumis commence par #ord_soumet= , le reste de la ligne sera ajouté aux arguments de soumet, ce qui permet au fichier soumis de contenir à l'avance certains paramètres de soumission |
the names of the most frequent arguments are highlighted, the colored cells reflect pre-release features not recognized yet by ord_soumet but that may be recognized by ord_soumet_beta and/or ord_soumet_alpha (some features will only work with the new environment ) NOTE : if the first line of the submitted job file starts with #ord_soumet= , the remainder of the line is added to the ord_soumet arguments, allowing the job to contain some of its submission parameters beforehand. |
EX: #ord_soumet= -t 500 -mpi -cpus 3x4 -cm 2G
argument / VARIABLE |
def1 |
def2 |
notes | description |
exemples / examples |
---|---|---|---|---|---|
FORCE_BATCH | ignorer l'argument -sys et utiliser la valeur de cette variable d'environnement ignore -sys argument and use this value instead |
export FORCE_BATCH=batch_devel | |||
SOUMET_EXTRAS |
ajouter a la ligne d'appel comme si l'usager l'avait tapé add to command line as if typed by user |
export SOUMET_EXTRAS="-account xx-ab-01" | |||
-account | colosse only | compte de l'usager sur colosse user account on colosse |
-account xxx-abc-01 | ||
-addstep |
NULL |
addstep |
LL only | ||
-args / -o |
NULL |
NULL |
arguments positionnels disponibles dans le travail positional arguments made available in the job |
-args a1 b2 c2 $1 donnera a1, $2 donnera b2, $3 donnera c2 $1 will be a1, $2 will be b2, $3 will be c2 | |
-as |
NULL |
NULL |
soumettre un travail en utilisant un autre nom d'usager (demande les bonnes clés dans authorized_keys) submit a job using another user name ( proper keys must be found in authorized_keys) |
-as otheruser le travail sera soumis comme l'usager otheruser the job will be submitted as if submitted by otheruser | |
-c / -cpus |
1 |
1 |
MxNxP | nombre de CPUs nécessaires pour le travail number of CPUs necessary for the job |
-cpus 4x15x4 (60 MPI tiles, 4 way OpenMP) |
-clone |
0 |
100 |
activer la soumission clonée (pas plus de NN fois) activate cloned submission (up to NN times) |
-clone 23 | |
-cm / -m |
100M |
100M |
souvent ignoré often ignored |
quantité de mémoire vive nécessaire pour le travail (la valeur est imposée à 3.5GB/cpu pour IBM) amount of main memory needed for the job (value forced at 3.5GB/cpu on IBM) |
ssh zeta -cm 350M |
-coschedule | LL only | job with coscheduled job steps | travail avec étapes en mode "coschedule" | ||
-custom |
NULL |
NULL |
answer to the .profile_switch question for batch jobs réponse à la question posée par .profile_switch por les travaux batch |
-custom alternate -custom y -custom n | |
-d / -mach |
$TRUE_HOST |
$TRUE_HOST |
(localhost) | machine ou grappe sur laquelle on désire exécuter le travail machine or cluster the job is to execute on |
-mach alef -mach zeta |
-display |
NULL |
$DISPLAY |
utilisé si le travail doit afficher quelque chose sur un écran XWindows (habituellement utilisé avec -xterm) used if job must use XWindows to display on a workstation (often used with -xterm) |
-display monposte:0 | |
-e |
NULL |
e |
causer un avortement du travail à la première erreur si -e spécifié job will be aborted at the first error if -e specified |
||
-epilog | NULL | NULL | job epilog to be inserted in job | -epilog iomonitor (activate io monitor, experimental) | |
-firststep |
NULL |
lajob_steps |
LL only | this is the first step of a coschduled job |
|
-geom | NULL | NULL | LL only | fichier contenant la géométrie MPI du travail tel que le paramètre task_geometry de LoadLeveler le demande file containing the MPI geometry in the format needed for the task_geometry LoadLeveler parameter |
|
-h | texte d'aide help text |
||||
-immediate |
NULL |
immediate |
exécution immédiate via ssh sans passer par le sous-système batch (travaux TRÈS PETITS seulement) immediate execution with ssh without going through the batch subsystem (VERY SMALL jobs only) |
||
-iojob | 1 | 5 | quantité d'entrées/sorties dans le travail (1-10) amount of I/O in job (1-10) |
-iojob 0 (almost no I/O) -iojob 10 (a real I/O hog) | |
-jn |
NULL |
NULL |
nom que l'on désire donner au travail (utilisé pour créer le nom du fichier contenant le listing) si -jn est absent, le nom du fichier contenant le travail sera utilisé job name (used for listing file name). if -jn is not specified, the name of the submitted file will be used |
-jn essai_no_2 | |
-jobcfg |
/dev/null |
NULL |
|||
-jobfile |
NULL |
NUL | autre manière de donner le fichier à soumettre alternate method to submit a file |
-jobfile my_file | |
-jobtar | lajob | lajob | name to give to the tarfile produced with the nosubmit option nom à donner au fichier tar produit par l'option nosubmit |
||
-keep |
NULL |
keep |
conserver les fichiers intermédiaires (enveloppes) keep intermediate files (wrappers) |
-keep | |
-l |
no |
yes |
maestro only | ||
-laststep |
NULL |
LL only | |||
-listing |
~/listings |
~/tmp |
autolisting | répertoire où on désire retrouver le listing du travail directory the job listing will be written into |
-listing ~/dir1/exp2 |
-mach | localhost | machine sur laquelle on veut executer machine to execute the job on |
|||
-mail |
NULL |
$USER@ec.gc.ca |
si on doit envoyer du courrier , le faire à cette adresse (voir / see -notify ) send mail (if necessary) to this address |
-mail -mail user@some.where | |
-mpi / -p |
NULL |
mpi |
travail utilisant MPI used to flag an MPI job |
-mpi | |
-node |
NULL |
NULL |
maestro only | ||
-noendwrap |
y |
n |
maestro only | ||
-nosubmit |
NULL |
nosubmit |
ne pas soumettre le travail mais l'emballer dans un fichier appelé lajob.tar pour soumission ultérieure job shall not be submitted but packed into filelajob.tar to be submitted at a later time |
-nosubmit | |
-notify |
error |
complete |
-notify error envoyer du coutrrier en cas d'erreur dans le travail send mail in case of error in the job -notify complete envoyer du courrier a la fin du travail send mail at end of job |
NOTE: la demande est passée au système d'ordonnancement de travaux (SGE ou LL) qui en fera ce qu'il veut/peut. NOTE: the request is passed on to the batch subsystem (SGE or LL) that will act on it as it can/wants. | |
-op | NULL | oper | ceci est un travaial opérationnel this is an operational job |
||
-postfix | .out | NoNe | chaine de caractères à ajouter à la fin du nom du fichier contenant le listing du travail character string that will be appended to the listing file name |
||
-ppid |
$$ |
$$ |
ne pas utiliser do not use |
||
-preempt | 1 | LL seulement LL only |
permettre ou non la préemption (1 = oui) allow preemption (1 = yes) |
||
-prefix | NoNe | NULL | chaine de caractères à ajouter au début du nom du fichier contenant le listing du travail character string that will be addded to the beginning of the listing file name |
-prefix exper12_ le listing du travail aura un nom commençant par exper12_ the listing file name will begin with exper12_ | |
-prolog | NULL | NULL | prolog to be inserted in job | -prolog iomonitor (activate iomonitor, experimental) | |
-q / -queue |
NULL |
NULL |
queue spécifique pour une machine donnée specific queue on a given machine |
-q fexfer , -q xfer ( alef , dorval-ib) -q @x.y.z.t ( alef, dorval-ib) | |
-rsrc | NULL | NULL | indiquer les ressources spéciales dont le travail a besoin specify special resources needed by job |
-rsrc to-hsm from-hsm -rsrc none | |
-seqno |
1 |
1 |
numéro de séquence initial pour les clones initial sequence number for clones |
||
-share |
e |
s |
SGE only | exclusive (e) or shared (s) use of nodes |
usage partagé (s) ou exclusif (e) des noeuds de calcul |
-shell |
ksh |
NULL |
interprète de commandes à utiliser pour le travail |
-shell bash -shell sh -shhell ksh93 | |
-smt |
1 |
2 |
doubler la valeur de OMP_NUM_THREADS dans le travail (facteur OpenMP) double the value of OMP_NUM_THREADS in job (OpenMP factor) |
-smt | |
-splitstd |
n |
y |
|||
-ssmuse |
NULL |
NULL |
liste d'items "r.ssmuse.dot¨ nécessaires pour l'exécution du travail (nouvel environnement seulement) list of "r.ssmuse.dot" items necessary for successful job execution (new environment only) |
||
-step |
default_step |
NULL |
LL only | ||
-sys |
batch |
batch |
système de soumission / séquençage de travaux type of sequencer to use |
-sys batch -sys maestro | |
-t |
60 |
60 |
temps d'horloge nécessaire pour exécuter le travail (secondes) wall clock time needed to execute the job (seconds) |
-t 7200 ( 2 heures / 2 hours ) | |
-tag | NULL | NULL | job tracking tag for statistics identificateur pour les séries statistiques |
-tag newmodelv3 | |
-threads |
1 |
1 |
|||
-tmpfs | 255 | Linux/SGE only | quantité d'espace tmpfs nécessaire (MB) necessary amount of tmpfs space required (MB) |
||
-v |
NULL |
1 |
rendre ord_soumet plus bavard en ce qui a trait aux messages de diagnostic make ord_soumet more verbose when it comes to diagnostic messages |
||
-w |
1 |
1 |
même chose que -t mais en minutes (ne pas utiliser les deux à la fois) same as-t but in minutes (use only one) |
||
-waste | NULL | 100 | pourcentage tolérable de CPUs non utilisés sur un noeud de calcul tolerable percentage of unused CPUs on a compute node |
||
-with | NULL | NULL | |||
-wrapdir | ~/.ord_soumet.d/wrap | NULL | maestro only | ||
-xterm | NULL | xterm | faire démarrer un xterm dans le travail et viser l'unité X spécifiée par -display start an xterm in the job and target display specified by -display |
Variables d'environnement utilisées/disponibles dans le travail / environment variables used/available in job
PREEMPT_OK |
IN | IBM seulement, = 0 travail soumis en mode non préemptable, =1 soums en mode préemptable |
IBM only, =0 preemption not accepted by job, =1 preemption not accepted by job |
---|---|---|---|
BATCH_MPI_CPUS | IN | nombre de tuiles/taches MPI |
number of MPI tiles/tasks |
OMP_NUM_THREADS | IN | nombre de fils d'exécution OpenMP tel que demandé via les paramètres -cpus et -smt |
number of OpenMP threads as specified via -cpus and -smt |
JobTimeLimit | IN | durée maximale permise pour le travail (secondes) |
maximum allowed job wall cloak (seconds) |
JobStartTime | IN | heure de démarrage du travail en secondes depuis 1970-01-01 00:00:00 UTC |
job start time in seconds since 1970-01-01 00:00:00 UTC |
SelfJobKill | IN | recette pour tuer/annuller le travail |
receipe to kill/cancel the job |
SelfJobResubmit | IN | recette pour resoumettre le travail |
receipe to resummit the job |
SelfJobRemove | IN | recette pour effacer les fichiers "enveloppe" du travail |
receipe to remove the job wrappers |
C LONE_ORDINAL |
IN | numéro du clone courant (1.. max) |
ordinal of current clone (1 .. max) |
S OUMET |
OUT | SOUMET=qsub causera une resoumission automatique d'un clone si le nombre maximal n'est pas atteint |
SOUMET=qsub wil trigger an automatic job resubmit if the maximum clone count has not been reached |
Notes
LL | Load Leveler (ordonnanceur de travaux IBM) | Load Leveler (IBM batch scheduler) |
---|---|---|
SGE | Sun Grid Engine (ordonnanceur de travaux pour colosse) | Sun Grid Engine (Linux cluster colosse batch scheduler) |
PBS | Portable Batch System (ordonnanceur de travaux de guillimin) | Portable Batch Syatem (Linux cluster guillimin batch scheduler) |
maestro | nouveau séquenceur des passes opérationnelles | new Operational RUN sequencer |
(localhost) | la machine sur laquelle on se trouve | the current machine |
MxNxP | configuration des CPUs M fois N tuiles MPI, P fils d'exécution OpemMP pour chaque tuile |
CPU configuration, M times N MPI tiles, P OpenMP threads for each tile |
autolisting |
si un répertoire ~/listings/machine existe (-mach machine) le listing y sera automatiquement dépose si -listing n'est pas spécifié |
should a directory path ~/listings/machine exists (-mach machine) and -listings is absent, the listing will be writtne into that directory |
nom du listing listing file name |
le nom du fichier contenant le listing est obtenu de la manière décrite ci dessous (la partie seqno est absente si on ne se sert pas du clonage) t${prefix}${jn}.${ppid}.${postfix}[.${seqno}] |
the listing file name is derived in the following way (the seqno part is optional and is only used with cloning) t${prefix}${jn}.${ppid}.${postfix}[.${seqno}] |