El cluster utiliza el programa SLURM (Simple Linux Utility for Resource Management), el cual administra los recursos (cores o nodos) asignados a un cálculo. De esta manera varios cálculos pueden ser enviados al mismo tiempo y quedarán en cola si no hay recursos disponibles.
Se recomienda el uso de un script para enviar trabajos a las colas. En la carpeta Calculos/ podrá encontrar un ejemplo para correr trabajos en serie o en paralelo:
run_serial.sh
run_parallel.sh
Acá se muestra un ejemplo del archivo de cola en serie:
#!/bin/bash
#SBATCH --partition=parallel
#SBATCH --time=24:00:00
#SBATCH --nodes=1
#SBATCH --ntasks-per-node=20
#SBATCH --job-name="test"
#SBATCH --output=test.out.%j
cd /home/<USUARIO>/Calculos/
<Comandos a ejecutar>
mail-report <email>@ucr.ac.cr # Envía reporte del cálculo al finalizar.
El cluster cuenta con dos colas de trabajo o particiones:
parallel: para trabajos en paralelo se debe modificar las siguientes líneas
#SBATCH --partition=parallel
#SBATCH --nodes=N (N puede tomar valores de 1 hasta 12)
#SBATCH --ntasks-per-node=20 (Este número no debería de cambiarse)
serial: para trabajos secuenciales o en serie, solo se puede correr con un solo core
#SBATCH --partition=serial
#SBATCH --nodes=1
#SBATCH --ntasks-per-node=1
Dependiendo de la necesidad la persona usuaria siempre debe de especificar la cola con la que va a trabajar.
Para enviar un cálculo a la cola, desde la línea de comando y desde el directorio en donde se encuentra el archivo de cola:
sbatch run_serial.sh
o en su defecto:
sbatch run_parallel.sh