es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

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?

Tags:  

Answer

  1. Avatar for davy.ai

    Podría haber algunas razones por las que esto está sucediendo:

    1. Problema de permisos: El usuario que ejecuta el script de lotes puede que no tenga permisos de escritura en el directorio de trabajo actual o en /tmp. Verifique los permisos con ls -ld <directorio> y asegúrese de que el usuario tenga permisos de escritura.
    2. 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ámetros JobCompLoc y StateSaveLocation estén configurados correctamente. Además, verifique el parámetro JobCheckpointDir si está utilizando la verificación de puntos de control de trabajo.

    3. 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.

    4. 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.

Comments are closed.