SLURM:如何查看已完成的作业的完整名称?

6

sacct -n 命令返回所有作业的名称,例如 "QmefdYEri+" 被截断了。

[Q] 我该如何查看完整的作业名称,而不是它被截断的版本?

--

$ sacct -n
1194             run.sh      debug       root          1  COMPLETED      0:0
1194.batch        batch                  root          1  COMPLETED      0:0
1195         run_alper+      debug       root          1  COMPLETED      0:0
1195.batch        batch                  root          1  COMPLETED      0:0
1196         QmefdYEri+      debug       root          1  COMPLETED      0:0
1196.batch        batch                  root          1  COMPLETED      0:0
1个回答

8

当我想要查看一个特定的作业ID时,我会使用scontrol命令,如下所示(命令输出取自这里)。

$ scontrol show job 106
JobId=106 Name=slurm-job.sh
UserId=rstober(1001) GroupId=rstober(1001)
Priority=4294901717 Account=(null) QOS=normal
JobState=RUNNING Reason=None Dependency=(null)
Requeue=1 Restarts=0 BatchFlag=1 ExitCode=0:0
RunTime=00:00:07 TimeLimit=UNLIMITED TimeMin=N/A
SubmitTime=2013-01-26T12:55:02 EligibleTime=2013-01-26T12:55:02
StartTime=2013-01-26T12:55:02 EndTime=Unknown
PreemptTime=None SuspendTime=None SecsPreSuspend=0
Partition=defq AllocNode:Sid=atom-head1:3526
ReqNodeList=(null) ExcNodeList=(null)
NodeList=atom01
BatchHost=atom01
NumNodes=1 NumCPUs=2 CPUs/Task=1 ReqS:C:T=*:*:*
MinCPUsNode=1 MinMemoryNode=0 MinTmpDiskNode=0
Features=(null) Gres=(null) Reservation=(null)
Shared=0 Contiguous=0 Licenses=(null) Network=(null)
Command=/home/rstober/slurm/local/slurm-job.sh
WorkDir=/home/rstober/slurm/local    

如果您想使用sacct,您可以根据文档中所述的方式修改显示任何给定字段的字符数:

-o、--format逗号分隔的字段列表。(使用“--helpformat”获取可用字段列表)。注意:当使用格式选项列出各种字段时,您可以在后面放一个%NUMBER来指定应打印多少个字符。

例如,格式= name%30将会右对齐打印30个字符的名称字段。%-30会左对齐打印30个字符。

因此,您可以像这样做:
sacct --format="JobID,JobName%30,Partition,Account,AllocCPUS,State,ExitCode"

如果您想让JobName行的宽度为30个字符,则可以这样做。

这还会返回工作ID,通过运行名称:sacct --name $jobName.sh -n | awk '{print $1}' | head -n 1 | sed -r 's/[.batch]+//g - alper
1
有没有办法获取已完成作业的这些详细信息?如果我使用相同的命令,会得到以下错误提示:"slurm_load_jobs error: Invalid job id specified"。 - abra

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接