15

我通过 SLURM 向我们学校的 HPC 集群提交了几份工作。因为 shell 脚本都具有相同的名称,所以作业名称看起来完全一样。看起来像

[myUserName@rclogin06 ~]$ sacct -u myUserName
       JobID    JobName  Partition    Account  AllocCPUS      State ExitCode 
------------ ---------- ---------- ---------- ---------- ---------- -------- 
12577766         run.sh    general ourQueue_+          4    RUNNING      0:0 
12659777         run.sh    general ourQueue_+          8    RUNNING      0:0 
12675983         run.sh    general ourQueue_+         16    RUNNING      0:0 

如何知道作业是从哪个目录提交的,以便区分作业?

4

3 回答 3

28

您可以使用该scontrol命令查看作业详细信息。 $ scontrol show job <jobid>

例如,对于我们的 SLURM 集群上正在运行的作业:

$ scontrol show job 1665191
    JobId=1665191 Name=tasktest
    ...
    Shared=OK Contiguous=0 Licenses=(null) Network=(null)
    Command=/lustre/work/.../slurm_test/task.submit
    WorkDir=/lustre/work/.../slurm_test

您正在寻找最后一行,WorkDir.

于 2014-07-07T02:48:45.237 回答
11

最新版本的 Slurm 现在通过以下方式提供该信息squeue

squeue --format "%Z"

根据手册页显示,

%Z    The job’s working directory.
于 2014-07-31T15:18:44.560 回答
2

为了列出不再通过squeue或访问的过去作业的工作目录scontrol,您可以使用sacct

sacct -S 2020-08-10 -u myUserName --format "jobid,jobname%20,workdir%70"

myUserName 列出自 2020 年 8 月 10 日以来用户的所有作业的作业 ID、作业名称和工作目录。

于 2020-08-12T15:16:51.533 回答