Вы можете получить эту информацию из базы данных Slurm, см. https://slurm.schedmd.com/sacct.html или . Узнайте время ЦП и использование памяти для задания Slurm . Например. sacct --jobs=12345 --format=NCPUS,MaxRSS,CPUTime
.
Примечание: вы можете добавить это к сценарию эпилога. Вот пример epilog.srun
:
#!/bin/sh
TMPDIR="/local"
# Append job usage info to job stdout
stdoutfname=`scontrol show job ${SLURM_JOB_ID} --details | grep "StdOut=" | sed -e 's/.*StdOut=\([^\s][^\s]*\)/\1/'`
if [ -w "${stdoutfname}" ] && [ "${QTMPDIR}" != "" ]; then
sacct --format JobID,jobname,AveCPUFreq,AveDiskRead,AveRSS,cputime,MaxDiskWrite -j ${SLURM_JOB_ID} >> ${stdoutfname}
В качестве альтернативы, вы можете использовать /usr/bin/time -v <your command>
внутри вашего скрипта (с полным путем для time
, см. https://stackoverflow.com/a/774601/6352677). Это будет в журналах, но не будет точно соответствовать учетным значениям Slurm.