【问题标题】:Extract details for past jobs in SLURM在 SLURM 中提取过去工作的详细信息
【发布时间】:2020-05-29 16:40:03
【问题描述】:

在 PBS 中,可以使用 qstat -f 查询特定作​​业并获取(全部?)信息和详细信息以重现该作业:

# qstat -f 1234
Job Id: 1234.login
    Job_Name = job_name_here
    Job_Owner = user@pbsmaster
    ...
    Resource_List.select = 1:ncpus=24:mpiprocs=24
    Resource_List.walltime = 23:59:59
    ...
    Variable_List = PBS_O_HOME=/home/user,PBS_O_LANG=en_US.UTF-8,
    PBS_O_LOGNAME=user,...
    etime = Mon Apr 20 16:38:27 2020
    Submit_arguments = run_script_here --with-these flags

我如何从 SLURM 中提取相同的信息?
scontrol show job %j 仅适用于当前正在运行的作业或在 5 分钟前终止的作业。

编辑:我目前正在使用以下内容来获取一些信息,但它不如qstat -f 完整:

sacct -u $USER \
      -S 2020-05-13 \
      -E 2020-05-15 \
      --format "Account,JobID%15,JobName%20,State,ExitCode,Submit,CPUTime,MaxRSS,ReqMem,MaxVMSize,AllocCPUs,ReqTres%25"

.. 通常通过管道传输到 |(head -n 2; grep -v COMPLETED) |sort -k12 以仅检查失败的运行。

【问题讨论】:

    标签: hpc slurm


    【解决方案1】:

    您可以获得在某个日期之前开始的所有工作的列表,如下所示:

    sacct --starttime 2020-01-01
    

    然后选择您感兴趣的工作(例如工作 1234)并使用 sacct 打印详细信息:

    sacct -j 1234 --format=User,JobID,Jobname,partition,state,time,start,end,elapsed,MaxRss,MaxVMSize,nnodes,ncpus,nodelist
    

    有关可用字段的完整列表,请参阅 --helpformat 下的 here

    【讨论】:

    • 我忘了说我已经检查了 sacct,但是没有提供例如的字段用于提交作业的命令或提交参数,所以我发现无法“重建”/调试作业是如何提交到集群的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-10-08
    • 2017-02-22
    • 2015-01-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多