You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何获取Slurm数组作业中各任务的实际Job ID?

获取Slurm数组任务的实际Job ID方法

有几种实用的方法可以获取数组任务索引和实际Job ID的对应关系:

  • 用sacct批量查询数组任务详情
    这是最直接的方式,通过数组主Job ID就能导出所有子任务的实际ID。执行命令:

    sacct -j <数组主JobID> --format=JobID,JobIDRaw,ArrayTaskID,State
    

    把<数组主JobID>替换成你看到的主任务ID(比如1145141),输出会清晰展示数组索引、任务标识和实际Job ID的对应关系,类似:

    JobID    JobIDRaw ArrayTaskID      State
    ------------ ---------- ----------- ----------
    1145141             1145141           -  COMPLETED
    1145141_1           1145144           1  COMPLETED
    1145141_2           1145145           2  RUNNING
    ...
    

    其中JobIDRaw列就是每个数组任务的实际Job ID,ArrayTaskID是对应的索引。

  • 在提交脚本中主动记录对应关系
    Slurm会给每个数组任务设置环境变量,$SLURM_JOB_ID就是当前任务的实际Job ID,$SLURM_ARRAY_TASK_ID是数组索引。可以在脚本里添加一行记录:

    echo "数组索引 $SLURM_ARRAY_TASK_ID 实际Job ID: $SLURM_JOB_ID" >> /vol/cluster-data/gprezza/logs/array_job_mapping.log
    

    这样任务运行时会自动把对应关系写入指定日志文件,后续直接查看这个文件就能拿到对应信息。

  • 用scontrol查询单个数组任务
    如果已经知道某个数组任务的标识(比如1145141_1),可以直接查询它的详细信息:

    scontrol show job 1145141_1
    

    输出内容里会包含JobId=<实际ID>的行,这就是该任务的实际Job ID。

内容的提问来源于stack exchange,提问作者gprezza

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 15:37:25