【问题标题】:How to get count of failed and completed jobs in an array job of SLURM如何在 SLURM 的数组作业中获取失败和已完成作业的计数
【发布时间】:2022-01-14 20:58:03
【问题描述】:

我正在使用 slurm 运行多个阵列作业。对于给定的数组作业 ID,比如说 885881,我想列出失败和完成的作业数。像这样的:

输入:

<some-command> -j 885881

输出:假设数组中有 200 个作业。

count | status
120   | failed
80    | completed

其次,如果我能获得任务失败的唯一原因列表,那就太好了。

输入:

`<some-command> -j 885881`

输出:

count | reason
80    | OUT_OF_MEMORY
40    | TIMED_OUT

我相信sacct 命令可以用来以某种方式获得这些结果,但不确定如何。

【问题讨论】:

    标签: slurm sbatch


    【解决方案1】:

    使用这样的单行,您可以同时获取两种信息

    $ sacct -n -X -j 885881 -o state%20 | sort | uniq -c
         16            COMPLETED
         99               FAILED
         32        OUT_OF_MEMORY
          1              PENDING
    

    sacct 命令挖掘会计信息。 -n -X 参数用于简化输出并减少不必要的行数,-o 参数仅要求显示 STATE 列。然后将输出输入到执行计数的sortuniq 命令中。

    如果你真的需要两个单独的命令,你可以很容易地适应上面的单行。您可以将其设为脚本或 Bash 函数以方便使用。

    如果您想要更详细的解决方案,可以查看smanage

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-07-25
      • 2022-05-20
      • 2022-11-10
      • 1970-01-01
      • 2017-09-20
      • 1970-01-01
      • 1970-01-01
      • 2018-10-07
      相关资源
      最近更新 更多