Lanzar trabajos
Siempre use srun o sbatch para iniciar jobs.
Sí no inicio sus jobs con sbatch o srun significa que estan ejecutandose en el frontend del cluster y serán cancelados sin previo aviso.
Iniciar un trabajo (job)
La forma de usar el cluster es en base a trabajos batch (job) en la cual se define la cantidad de recursos a solicitar y el software especifico a ejecutar.
Script base para lanzar trabajos, se debe modificar en base a los recursos solicitados y el software usado. Los Job que no utilicen todos los recursos solicitados serán cancelados sin previo aviso.
Script para usar un nodo de forma simple en base al número de tareas y tiempo de computo
Script para usar un nodo en especifico
La cantidad de memoría y threads que se usarán dependen del tipo de job que se ejecutará. Se recomienda usar 1 thread y 1G como norma general y modificar según corresponda.
La cantidad de threads y memoria sólo son utilices cuando el código del job puede aprovechar estos recursos. Sí usa un programa consulte la documentación o asegúrese que su código pueda usar multiples threads.
Ejecutaremos desde nuestra cuenta el comando " sbatch" y el archivo "myjob.slurm" lo que nos entregará el id asignado a nuestro job
Al terminar el job veremos que nos crea un archivo de salida en base al patrón indicado
Ver estado de un trabajo
Para ver el estado de un trabajo ya ejecutado podemos usar sacct -j junto con el número del trabajo
Cancelar un trabajo
Para cancelar un trabajo debemos usar el comando scancel y el id del job
Ver recursos disponibles
Para ver el estado del cluster podemos usar el comando sinfo, la columna STATE nos indica el estado del nodo y la columna TIMELIMIT nos indica el tiempo máximo que un job puede ejecutarse en una cola.
down: El nodo esta fuera de linea
idle: El nodo esta libre
alloc: el nodo esta usado al 100%
mix: El nodo esta en uso pero no al 100%
drng: El nodo esta en transición desde un estado alloc o mix al estado drain
drain: El nodo esta en mantenimiento
Sí necesita usar un nodo en estado down, drng o drain use sbatch para ingresar su job a la cola. Los jobs se ejecutarán según la prioridad en la cola cuando el nodo vuelva a estar operativo.
Ver cola de trabajos
Con el comando squeue se puede ver la cola y saber en que estado se encuentra nuestro job. En general un job en una ejecución normal debería estar en dos estados PENDING (PD) esperando en la cola o RUNNING (R) ejecutándose en un nodo.
Last updated