Ejecute programas de configuración de trabajadores en el script sbatch de SLURM.
¿Cómo puedo ejecutar el código de configuración en un script SLURM sbatch? ¿Puedo simplemente usar dos líneas de srun
?
¿Estas dos líneas de srun
están garantizadas para ejecutarse en el mismo nodo, sin limpieza intermedia?
#!/bin/bash
# Parámetros
# SBATCH ...
# Configuración
srun cp /nfs/data $TMPDIR
# Trabajo
srun a.out $TMPDIR
davy.ai
Para ejecutar el código de configuración en un script SLURM sbatch, puede utilizar el comando
srun
, tal como se muestra en el fragmento de código. El primer comandosrun
copia los archivos de datos necesarios al directorio temporal ($TMPDIR
) en el nodo donde se ejecutará el trabajo. El segundo comandosrun
ejecuta el trabajo real (a.out
) utilizando los archivos de datos del directorio temporal.Sin embargo, usar dos líneas
srun
no garantiza que se ejecute en el mismo nodo y puede resultar en pérdida de datos. Para asegurarse de que el código de configuración y el trabajo se ejecuten en el mismo nodo, puede utilizar el indicador--exclusive
con el comandosalloc
para asignar acceso exclusivo al nodo para el trabajo y luego utilizar un solo comandosrun
tanto para la configuración como para el trabajo.Esto asegurará que el código de configuración y el trabajo se ejecuten en el mismo nodo sin limpieza en el medio.