Slurm no está escribiendo archivos de registro de scripts por lotes.
Cuando se ejecuta el script por lotes:
#!/bin/sh
#SBATCH -n 1
#SBATCH --output=serial_test_%j.log
hostname
echo "test" > test.log
El archivo serial_test_142.log no se escribe y tampoco se escribe test.log. /var/log/slurm_JobComp lista:
JobId = 142 UserId = ebryer (1000) GroupId = ebryer (1000) Name = hw.sh JobState = FAILED Partition = n TimeLimit = UNLIMITED StartTime = 2021-11-30T13: 52:14 EndTime = 2021-11-30T13: 52:14 NodeList = n2 NodeCnt = 1 ProcCnt = 1 WorkDir = /home/ebryer ReservationName = Gres = Account = QOS = WcKey = Cluster = desconocido SubmitTime = 2021-11-30T13: 52:12 EligibleTime = 2021-11-30T13: 52:12 DerivedExitCode = 0:0 ExitCode = 1:0. Y /var/log/slurmctld lista:
[2021-11-30T13: 52:12.678] slurmrpc submitbatchjob: JobId = 142 InitPrio = 4294901740 usec = 2069
[2021-11-30T13: 52:14.894] sched: Allocate JobId = 142 NodeList = n2 # CPUs = 1 Partition = n
[2021-11-30T13: 52:14.894] prolog ejecutando decr: La configuración para JobId = 142 está completa
[2021-11-30T13: 52:14.962] _jobcomplete: JobId = 142 WEXITSTATUS 1
[2021-11-30T13: 52:14.962] job complete: JobId = 142 hecho
Si cambio la línea del script por lotes a #SBATCH --output = / tmp / serial_test_%j.log
, el estado de salida del trabajo es 0 como se muestra en /var/log/slurm_JobComp:
[2021-11-30T13: 52:35.265] slurm rpc submitbatchjob: JobId = 143 InitPrio = 4294901739 usec = 2067
[2021-11-30T13: 52:35.970] sched: Allocate JobId = 143 NodeList = n2 # CPUs = 1 Partition = n
[2021-11-30T13: 52:35.971] prolog ejecutando decr: La configuración para JobId = 143 está completa
[2021-11-30T13: 52:36.247] _jobcomplete: JobId = 143 WEXITSTATUS 0
[2021-11-30T13: 52:36.247] job complete: JobId = 143 done
Y scontrol muestra que se ha realizado con éxito, JobState = COMPLETED Reason = None Dependency = (nulo), pero no hay archivo de registro en / tmp o salida test.log. ¿Alguien puede sugerir por qué ocurre esto?
davy.ai
Podría haber algunas razones por las que esto está sucediendo:
/tmp
. Verifique los permisos conls -ld <directorio>
y asegúrese de que el usuario tenga permisos de escritura.Problema de configuración de Slurm: Verifique el archivo de configuración de Slurm (
/etc/slurm/slurm.conf
) y asegúrese de que los parámetrosJobCompLoc
yStateSaveLocation
estén configurados correctamente. Además, verifique el parámetroJobCheckpointDir
si está utilizando la verificación de puntos de control de trabajo.Problemas de recursos: El trabajo puede haber quedado sin recursos antes de poder escribir en el archivo de registro. Verifique
squeue -u <usuario>
para ver si hay algún problema de recursos.Problema de script: Puede haber un problema en el script de lotes mismo que impide que se escriban los archivos de registro. Verifique el script en busca de errores o problemas de sintaxis.
Si ninguna de estas soluciones funciona, es posible que necesite consultar a un experto en Slurm para solucionar el problema.