【问题标题】:Expand columns to see full jobname in Slurm展开列以查看 Slurm 中的完整作业名
【发布时间】:2017-02-14 02:59:13
【问题描述】:

是否可以扩展 SLURM 中命令 sacctJobName 列中使用的字符数?

例如,我目前有:

       JobID    JobName    Elapsed      NCPUS   NTasks      State 
------------ ---------- ---------- ---------- -------- ---------- 
12345      lengthy_na+   00:00:01         4         1      FAILED 

我想:

       JobID    JobName    Elapsed      NCPUS   NTasks      State 
------------ ---------- ---------- ---------- -------- ---------- 
12345      lengthy_name   00:00:01         4         1      FAILED 

【问题讨论】:

    标签: slurm sacct


    【解决方案1】:

    您应该使用格式选项,与:

    sacct --helpformat
    

    您会看到要显示的参数,例如:

    sacct --format="JobID,JobName%30"
    

    将打印作业 ID 和名称,最多 30 个字符:

           JobID                        JobName
    ------------ ------------------------------
    19009                                  bash
    19010                             launch.sh
    19010.0                     hydra_pmi_proxy
    19010.1                     hydra_pmi_proxy
    

    现在,您可以自定义自己的输出。

    【讨论】:

    • 我们真的需要在每次想要查看正在运行的作业列表及其全名时都输入这个很长的字符串吗?更不用说运行时和其他细节(例如内存使用情况)需要更长的命令
    • @par:是的,因为默认格式是有限制的。但是,您可以定义一个变量(在本例中为 SACCT_FORMAT)来覆盖默认行为。
    • 之后如何使用每个工作的 ID 获取与每个工作相关的完整信息? @Bub Espinja
    • 你总是可以使用 "sacct -j --long" 来达到这个目的。
    • @Parsa 我的 ~/.bashrc 中有这个:alias sl='SLURM_TIME_FORMAT="%d %H:%M:%S" sacct -X --format=JobID,JobName%12,Priority,Submit%12,Start%12,Elapsed,NCPU,CPUTime,ExitCode,State' 请原谅由于堆栈溢出导致的奇怪换行:(
    【解决方案2】:

    为了检索我正在运行的 SLURM 作业列表,我使用默认格式,使用下面的 bash 命令显示作业名称的 30 个字符:

    squeue --format="%.18i %.9P %.30j %.8u %.8T %.10M %.9l %.6D %R" --me
    

    如果您想显示更多作业名称字符,只需更改 %.30j 的数量即可。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-11
      • 1970-01-01
      • 2019-10-26
      • 2018-03-07
      • 2022-11-10
      • 1970-01-01
      相关资源
      最近更新 更多