====== TRABAJOS CON CONDICIÓN ======
En ocasiones es necesario enviar un trabajo con condiciones. Por ejemplo, cuando se requiere ejecutar un trabajo después que finalice otro correctamente o ejecutar un trabajo después que otro empiece. En estos casos se utiliza la opción --//dependency// para especificar la condición.
Suponiendo que se desea que el trabajo 2 comience si el trabajo 1 terminó correctamente, primero se envía el trabajo 1 y se anota el id del mismo.
sbatch job1.sl
submitted job 4305
Posteriormente, en el script del trabajo 2 se indica la condición y el id del trabajo 1 separados por (:)
#SBATCH --dependency=afterok:4305
También puede usarse el comando //sbatch//:
sbatch --dependency=afterok:4305 job2.sl
La dependencia no está limitada a un solo trabajo, es decir, se pueden poner dependencias con respecto a varios trabajos. Por ejemplo:
#SBATCH --dependency=afterok:4305:4306:4307 job4.sl
Además de //afterok// existen otras dependencias:
//after// – después que el trabajo haya terminado (no importa como)
//afterany// – después que cualquier trabajo haya terminado
//afternotok// – después que el trabajo haya terminado con fallo.
La lista completa de dependencias se puede ver con el comando: man sbatch