varenv
Variables d'environnement SLURM
On donne ici seulement quelques unes des variables d'environnement qui sont disponibles dans SLURM. Pour une liste exhaustive voir https://slurm.schedmd.com/sbatch.html#lbAG.
Information sur le job
- SLURM_JOB_ID : numéro du job
- SLURM_JOB_NAME : nom du job
- SLURM_JOB_NUM_NODES : nombre total de nœuds alloués pour le job
- SLURM_SUBMIT_DIR : répertoire à partir duquel le job est soumis
- SLURMD_NODENAME : nom du nœud sur lequel le job s'exécute
- SLURM_JOB_PARTITION : nom de la partition sur laquelle le job s'exécute
Information sur les tableaux de jobs
Un tableau de jobs est composé d'un job principal (le tableau) et de tâches (les jobs contenus dans le tableau). SLURM attribue à un job du tableau un numéro constitué du numéro du job principal et de son indice : < SLURM_ARRAY_JOB_ID >_<SLURM_ARRAY_TASK_ID>.
On dispose des variables d'environnement suivantes :
- SLURM_ARRAY_JOB_ID : numéro du job principal
- SLURM_ARRAY_TASK_ID : indice de la tâche dans le tableau
- SLURM_ARRAY_TASK_COUNT : nombre total de tâches dans un tableau de jobs
- SLURM_ARRAY_TASK_MAX : indice max du tableau de jobs
- SLURM_ARRAY_TASK_MIN : indice min du tableau de jobs
Exemples d'utilisation
#!/bin/bash #SBATCH --job-name=test1 #SBATCH --time=5:00 #SBATCH --partition=court echo mon job $SLURM_JOB_NAME, num $SLURM_JOB_ID, echo "s'execute" dans la partition $SLURM_JOB_PARTITION sur le noeud $SLURMD_NODENAME ./exe 10
#!/bin/bash #SBATCH --time=1:00 #SBATCH --array=0-9 echo tableau de jobs numero $SLURM_ARRAY_JOB_ID, indices de $SLURM_ARRAY_TASK_MIN a $SLURM_ARRAY_TASK_MAX #les jobs dont les indices vont de 0 à 4 exécutent le programme 1 if [ $SLURM_ARRAY_TASK_ID -le 4 ] then echo "premier programme" ./exe 1 else #les autres exécutent le programme 2 echo "second programme" ./exe 10 fi
varenv.txt · Dernière modification : 2018/10/11 20:49 de 127.0.0.1