squeue
部分:Slurm 命令 (1)更新:Slurm 命令
索引
名称
squeue - 查看位于 Slurm 调度队列中的作业信息。概要
squeue [选项...]描述
squeue 用于查看由 Slurm 管理的作业和作业步骤的信息。选项
- -A, --account=<account_list>
- 指定要查看的作业的账户。接受以逗号分隔的账户名称列表。列出作业步骤时此选项无效。
-
- -a, --all
- 显示所有分区中作业和作业步骤的信息。这会导致显示配置为隐藏的分区、用户组无法访问的分区,以及处于“撤销”状态的联合作业的信息。
-
- -r, --array
- 每行显示一个作业数组元素。没有此选项时,显示将优化为与作业数组一起使用(待处理的作业数组元素将在一行输出中合并,数组索引值将使用正则表达式打印)。
-
- -M, --clusters=<cluster_name>
- 要发出命令的集群。多个集群名称可以用逗号分隔。值为'all'将查询在所有集群上运行。请注意,slurmdbd 必须处于运行状态,以便此选项正常工作,除非在配置了 FederationParameters=fed_display 或设置了 --federation 选项的联合环境中运行。此选项隐式设置 --local 选项。
-
- --expand-patterns
- 展开 StdOut、StdErr 和 StdIn 中的任何文件名模式。映射到值范围的字段将使用范围的第一个值。例如“%t”将被替换为“0”。
-
- --federation
- 如果是联合成员,则显示来自联合的作业。
-
- -o, --format=<output_format>
- 指定要显示的信息、其大小和位置(右对齐或左对齐)。另请参见下面描述的 -O、--Format=<output_format> 选项(该选项在格式化上支持较少的灵活性,但支持访问所有字段)。如果命令在联合集群环境中执行,并且要显示有关多个集群的信息,并且使用了 -h, --noheader 选项,则将在下面显示的默认输出格式之前显示集群名称。
各种选项的默认格式为:
每个字段的格式为 "%[[.]size]type[suffix]"
请注意,许多 type 规范仅对作业有效,而其他规范仅对作业步骤有效。有效的 type 规范包括:
-
- %all
- 打印此数据类型的所有字段,每个字段之间用竖线分隔。
-
- %a
- 与作业相关的账户。 (仅对作业有效)
-
- %A
- 作业步骤创建的任务数量。这报告 srun --ntasks 选项的值。 (仅对作业步骤有效)
-
- %A
- 作业 ID。此值对于作业数组的每个元素都是唯一的。 (仅对作业有效)
-
- %B
- 执行(批处理)主机。对于已分配的会话,这是会话正在执行的主机(即执行 srun 或 salloc 命令的节点)。对于批处理作业,这是执行批处理脚本的节点。在典型的 Linux 集群中,这将是分配的计算节点零。
-
- %c
- 作业请求的每个节点的最小 CPU(处理器)数量。这报告 srun --mincpus 选项的值,默认值为零。 (仅对作业有效)
-
- %C
- 作业请求的 CPU(处理器)数量或已分配给它的 CPU(如果已经在运行)。随着作业的完成,此数字将反映当前分配的 CPU 数量。 (仅对作业有效)
-
- %d
- 作业请求的临时磁盘空间的最小大小(以 MB 为单位)。 (仅对作业有效)
-
- %D
- 分配给作业的节点数量或待处理作业所需的最小节点数量。分配给待处理作业的实际节点数量可能超过此数字,如果作业指定了节点范围计数(例如,最小和最大节点计数)或作业指定了处理器计数而不是节点计数。随着作业的完成,此数字将反映当前分配的节点数量。 (仅对作业有效)
-
- %e
- 作业结束或预计结束的时间(基于其时间限制)。 (仅对作业有效)
-
- %E
- 剩余的作业依赖关系。此作业在这些依赖作业完成之前不会开始执行。如果由于作业依赖关系从未满足而无法运行的作业,则将报告完整的原始作业依赖关系规范。一旦依赖关系得到满足,它将从作业中删除。NULL 值表示此作业没有依赖关系。 (仅对作业有效)
-
- %f
- 作业所需的特性。 (仅对作业有效)
-
- %F
- 作业数组的作业 ID。这是基础作业 ID。对于非数组作业,这是作业 ID。 (仅对作业有效)
-
- %g
- 作业的组名。 (仅对作业有效)
-
- %G
- 作业的组 ID。 (仅对作业有效)
-
- %h
- 分配给作业的计算资源是否可以被其他作业超额分配。要超额分配的资源可以是节点、插槽、核心或超线程,具体取决于配置。如果作业是通过超额分配选项提交的,或者分区配置为 OverSubscribe=Force,则值为“YES”;如果作业需要独占节点访问,则为“NO”;如果分配的计算节点专用于单个用户,则为“USER”;如果分配的计算节点专用于单个安全类(有关更多信息,请参见 MCSPlugin 和 MCSParameters 配置参数),则为“MCS”;否则为“OK”(通常分配专用 CPU)。 (仅对作业有效)
-
- %H
- 作业请求的每个节点的插槽数量。这报告 srun --sockets-per-node 选项的值。当未设置 --sockets-per-node 时,显示为“*”。 (仅对作业有效)
-
- %i
- 作业或作业步骤 ID。在作业数组的情况下,作业 ID 格式将为“<base_job_id>_<index>”。默认情况下,作业数组索引字段大小将限制为 64 字节。使用环境变量 SLURM_BITSTR_LEN 指定更大的字段大小。 (适用于作业和作业步骤)在异构作业分配的情况下,作业 ID 格式将为“#+#”,其中第一个数字是“异构作业领导者”,第二个数字是每个作业组件的零起始偏移量。
-
- %I
- 作业请求的每个插槽的核心数量。这报告 srun --cores-per-socket 选项的值。当未设置 --cores-per-socket 时,显示为“*”。 (仅对作业有效)
-
- %j
- 作业或作业步骤名称。 (适用于作业和作业步骤)
-
- %J
- 作业请求的每个核心的线程数量。这报告 srun --threads-per-core 选项的值。当未设置 --threads-per-core 时,显示为“*”。 (仅对作业有效)
-
- %k
- 与作业相关的注释。 (仅对作业有效)
-
- %K
- 作业数组索引。默认情况下,此字段大小将限制为 64 字节。使用环境变量 SLURM_BITSTR_LEN 指定更大的字段大小。 (仅对作业有效)
-
- %l
- 作业或作业步骤的时间限制,以天-小时:分钟:秒为单位。如果尚未建立,值可能为“NOT_SET”,或对于没有限制的情况为“UNLIMITED”。 (适用于作业和作业步骤)
-
- %L
- 作业执行剩余时间,以天-小时:分钟:秒为单位。此值通过从作业使用的时间中减去其时间限制来计算。如果尚未建立,值可能为“NOT_SET”,或对于没有限制的情况为“UNLIMITED”。 (仅对作业有效)
-
- %m
- 作业请求的最小内存大小(以 MB 为单位)。 (仅对作业有效)如果内存是按 CPU 或 GPU 请求的,则显示的值假定至少将分配一个 CPU 或 GPU。
-
- %M
- 作业或作业步骤使用的时间,以天-小时:分钟:秒为单位。天和小时仅在需要时打印。对于作业步骤,此字段显示自执行开始以来的经过时间,因此对于已挂起的作业步骤将不准确。集群中节点之间的时钟偏差将导致时间不准确。如果时间明显错误(例如负数),则显示为“INVALID”。 (适用于作业和作业步骤)
-
- %n
- 作业明确请求的节点名称列表。 (仅对作业有效)
-
- %N
- 分配给作业或作业步骤的节点列表。在COMPLETING 作业的情况下,节点列表仅包括尚未返回服务的节点。 (适用于作业和作业步骤)
-
- %o
- 要执行的命令。
-
- %O
- 作业请求的连续节点。 (仅对作业有效)
-
- %p
- 作业的优先级(转换为 0.0 到 1.0 之间的浮点数)。另请参见 %Q。 (仅对作业有效)
-
- %P
- 作业或作业步骤的分区。 (适用于作业和作业步骤)
-
- %q
- 与作业相关的服务质量。 (仅对作业有效)
-
- %Q
- 作业的优先级(通常是一个非常大的无符号整数)。另请参见 %p。 (仅对作业有效)
-
- %r
- 作业当前状态的原因。有关更多信息,请参见下面的 作业原因代码 部分。 (仅对作业有效)
-
- %R
- 对于待处理作业:调度程序未启动作业的原因以括号形式打印。对于失败的终止作业:打印作业失败的原因的解释以括号形式打印。对于所有其他作业状态:分配节点的列表。有关更多信息,请参见下面的 作业原因代码 部分。 (仅对作业有效)
-
- %S
- 作业或作业步骤的实际或预计开始时间。 (适用于作业和作业步骤)
-
- %t
- 作业状态的紧凑形式。有关可能状态的列表,请参见下面的 作业状态代码 部分。 (仅对作业有效)
-
- %T
- 作业状态的扩展形式。有关可能状态的列表,请参见下面的 作业状态代码 部分。 (仅对作业有效)
-
- %u
- 作业或作业步骤的用户名。 (适用于作业和作业步骤)
-
- %U
- 作业或作业步骤的用户 ID。 (适用于作业和作业步骤)
-
- %v
- 作业的预留。 (仅对作业有效)
-
- %V
- 作业的提交时间。
-
- %w
- 工作负载特征键(wckey)。 (仅对作业有效)
-
- %W
- 作业请求的许可证。 (仅对作业有效)
-
- %x
- 作业明确排除的节点名称列表。 (仅对作业有效)
-
- %X
- 每个节点上为系统使用保留的核心数量(核心专业化)。 (仅对作业有效)
-
- %y
- 优先级值(对作业调度优先级的调整)。 (仅对作业有效)
-
- %Y
- 对于待处理作业,预计在作业开始时使用的节点列表。
-
- %z
- 每个节点请求的插槽、核心和线程数量(S:C:T)。当 (S:C:T) 未设置时,显示为“*”。 (仅对作业有效)
-
- %Z
- 作业的工作目录。
每个字段的格式为 "type[:[.][size][suffix]]"
请注意,许多 type 规范仅对作业有效,而其他规范仅对作业步骤有效。有效的 type 规范包括:
-
- Account
- 打印与作业相关的账户。 (仅对作业有效)
-
- AccrueTime
- 打印与作业相关的累积时间。 (仅对作业有效)
-
- admin_comment
- 与作业相关的管理员注释。 (仅对作业有效)
-
- AllocNodes
- 打印分配给作业的节点。 (仅对作业有效)
-
- AllocSID
- 打印用于提交作业的会话 ID。 (仅对作业有效)
-
- ArrayJobID
- 打印作业数组的作业 ID。 (适用于作业和作业步骤)
-
- ArrayTaskID
- 打印作业数组的任务 ID。 (适用于作业和作业步骤)
-
- AssocID
- 打印作业关联的 ID。 (仅对作业有效)
-
- BatchFlag
- 打印批处理标志是否已设置。 (仅对作业有效)
-
- BatchHost
- 执行(批处理)主机。对于已分配的会话,这是会话正在执行的主机(即执行 srun 或 salloc 命令的节点)。对于批处理作业,这是执行批处理脚本的节点。在典型的 Linux 集群中,这将是分配的计算节点零。 (仅对作业有效)
-
- BoardsPerNode
- 打印分配给作业的每个节点的板数量。 (仅对作业有效)
-
- BurstBuffer
- 突发缓冲区规范 (仅对作业有效)
-
- BurstBufferState
- 突发缓冲区状态 (仅对作业有效)
-
- Cluster
- 运行作业或作业步骤的集群名称。
-
- ClusterFeature
- 作业所需的集群特性。 (仅对作业有效)
-
- Command
- 要执行的命令。 (仅对作业有效)
-
- Comment
- 与作业相关的注释。 (仅对作业有效)
-
- Contiguous
- 作业是否请求连续节点。 (仅对作业有效)
-
- Container
- OCI 容器包路径。
-
- ContainerID
- OCI 容器分配的 ID。
-
- Cores
- 作业请求的每个插槽的核心数量。这报告 srun --cores-per-socket 选项的值。当 --cores-per-socket 未设置时,显示为“*”。 (仅对作业有效)
-
- CoreSpec
- 每个节点上为系统使用保留的核心数量(核心专业化)。 (仅对作业有效)
-
- CPUFreq
- 打印分配的 CPU 的频率。 (仅对作业步骤有效)
-
- cpus-per-task
- 打印分配给作业的每个任务的 CPU 数量。 (仅对作业有效)
-
- cpus-per-tres
- 打印分配给作业或作业步骤的每个可跟踪资源所需的内存。
-
- CronJob
- 根据作业是否由 scrontab 生成打印是/否。 (仅对作业有效)
-
- Deadline
- 打印分配给作业的截止日期。 (仅对作业有效)
-
- DelayBoot
- 延迟启动时间。 (仅对作业有效)
-
- Dependency
- 剩余的作业依赖关系。此作业在这些依赖作业完成之前不会开始执行。如果由于作业依赖关系从未满足而无法运行的作业,则将报告完整的原始作业依赖关系规范。一旦依赖关系得到满足,它将从作业中删除。NULL 值表示此作业没有依赖关系。 (仅对作业有效)
-
- DerivedEC
- 作业步骤(srun 调用)返回的最高退出代码。冒号后面是导致进程终止的信号(如果是由信号终止的)。 (仅对作业有效)
-
- EligibleTime
- 作业有资格运行的时间。 (仅对作业有效)
-
- EndTime
- 作业终止的时间,实际或预计。 (仅对作业有效)
-
- ExcNodes
- 在分配此作业时请求排除的节点。 (仅对作业有效)
-
- exit_code
- 作业返回的退出代码,通常由 exit() 函数设置。冒号后面是导致进程终止的信号(如果是由信号终止的)。 (仅对作业有效)
-
- Feature
- 作业所需的特性。 (仅对作业有效)
-
- GroupID
- 作业的组 ID。 (仅对作业有效)
-
- GroupName
- 作业的组名。 (仅对作业有效)
-
- HetJobID
- 异构作业领导者的作业 ID。
-
- HetJobIDSet
- 标识异构作业中所有组件作业 ID 的表达式。
-
- HetJobOffset
- 异构作业组件集合中的零起始偏移量。
-
- JobArrayID
- 作业数组的作业 ID。这是基础作业 ID。对于非数组作业,这是作业 ID。 (仅对作业有效)
-
- JobID
- 作业 ID。此值对于作业数组的每个元素和异构作业的每个组件都是唯一的。 (仅对作业有效)
-
- LastSchedEval
- 打印作业最后一次被评估调度的时间。 (仅对作业有效)
-
- Licenses
- 作业请求的许可证。 (仅对作业有效)
-
- LicensesAlloc
- 分配给作业的许可证。 (仅对作业有效)
-
- MaxCPUs
- 作业请求的最大 CPU 数量。 (仅对作业有效)
-
#OPT_MaxCPUs">
- 打印分配给作业的最大CPU数量。 (仅适用于作业)
-
- MaxNodes
- 打印分配给作业的最大节点数量。 (仅适用于作业)
-
- MCSLabel
- 打印作业的MCS_label。 (仅适用于作业)
-
- mem-per-tres
- 打印分配给作业或作业步骤的每个可跟踪资源所需的内存(以MB为单位)。
-
- MinCpus
- 作业请求的每个节点的最小CPU(处理器)数量。 这报告了srun --mincpus选项的值,默认值为零。 (仅适用于作业)
-
- MinMemory
- 作业请求的最小内存大小(以MB为单位)。 (仅适用于作业)
-
- MinTime
- 作业的最小时间限制。 (仅适用于作业)
-
- MinTmpDisk
- 作业请求的最小临时磁盘空间大小(以MB为单位)。 (仅适用于作业)
-
- Name
- 作业或作业步骤名称。 (适用于作业和作业步骤)
-
- Network
- 作业运行所在的网络。 (适用于作业和作业步骤)
-
- Nice
- 优先级值(对作业调度优先级的调整)。 (仅适用于作业)
-
- NodeList
- 分配给作业或作业步骤的节点列表。在COMPLETING作业的情况下,节点列表将仅包含尚未返回服务的节点。 (仅适用于作业)
-
- Nodes
- 分配给作业或作业步骤的节点列表。在COMPLETING作业的情况下,节点列表将仅包含尚未返回服务的节点。 (仅适用于作业步骤)
-
- NTPerBoard
- 分配给作业的每个板的任务数量。 (仅适用于作业)
-
- NTPerCore
- 分配给作业的每个核心的任务数量。 (仅适用于作业)
-
- NTPerNode
- 分配给作业的每个节点的任务数量。 (仅适用于作业)
-
- NTPerSocket
- 分配给作业的每个插槽的任务数量。 (仅适用于作业)
-
- NumCPUs
- 作业请求的CPU(处理器)数量或已分配给它的数量(如果已在运行)。随着作业的完成,这个数字将反映当前分配的CPU数量。 (适用于作业和作业步骤)
-
- NumNodes
- 分配给作业的节点数量或待处理作业所需的最小节点数量。如果待处理作业指定了节点范围计数(例如,最小和最大节点计数)或作业指定了处理器计数而不是节点计数,则实际分配给待处理作业的节点数量可能超过此数量。随着作业的完成,这个数字将反映当前分配的节点数量。 (仅适用于作业)
-
- NumTasks
- 作业或作业步骤请求的任务数量。 这报告了--ntasks选项的值。 (适用于作业和作业步骤)
-
- Origin
- 联邦作业来源的集群名称。 (仅适用于联邦作业)
-
- OriginRaw
- 联邦作业来源的集群ID。 (仅适用于联邦作业)
-
- OverSubscribe
- 分配给作业的计算资源是否可以被其他作业超额使用。 可以超额使用的资源可以是节点、插槽、核心或超线程,具体取决于配置。 如果作业是使用超额使用选项提交的,或者分区配置为OverSubscribe=Force,则值为“YES”;如果作业需要独占节点访问,则为“NO”;如果分配的计算节点专用于单个用户,则为“USER”;如果分配的计算节点专用于单个安全类,则为“MCS”(有关更多信息,请参见MCSPlugin和MCSParameters配置参数);否则为“OK”(通常分配专用CPU)。 (仅适用于作业)
-
- Partition
- 作业或作业步骤的分区。 (适用于作业和作业步骤)
-
- PendingTime
- 作业的开始时间和提交时间之间的时间(以秒为单位)。 如果作业尚未开始,则为现在与作业提交时间之间的时间(以秒为单位)。 (仅适用于作业)
-
- PreemptTime
- 作业的抢占时间。 (仅适用于作业)
-
- Prefer
- 待处理作业的首选特性。 (仅适用于作业)
-
- Priority
- 作业的优先级(转换为0.0到1.0之间的浮点数)。 另见prioritylong。 (仅适用于作业)
-
- PriorityLong
- 作业的优先级(通常是一个非常大的无符号整数)。 另见priority。 (仅适用于作业)
-
- Profile
- 作业的配置文件。 (仅适用于作业)
-
- QOS
- 与作业相关的服务质量。 (仅适用于作业)
-
- Reason
- 作业处于当前状态的原因。 有关更多信息,请参见下面的作业原因代码部分。 (仅适用于作业)
-
- ReasonList
- 对于待处理作业:作业等待执行的原因将以括号形式打印。 对于失败的终止作业:将打印作业失败的原因。 对于所有其他作业状态:将打印分配的节点列表。 有关更多信息,请参见下面的作业原因代码部分。 (仅适用于作业)
-
- Reboot
- 指示在开始作业之前是否应该重启分配的节点。 (仅适用于作业)
-
- ReqNodes
- 作业明确请求的节点名称列表。 (仅适用于作业)
-
- ReqSwitch
- 作业请求的最大交换机数量。 (仅适用于作业)
-
- Requeue
- 打印作业在失败时是否会被重新排队。 (仅适用于作业)
-
- Reservation
- 作业的预留。 (仅适用于作业)
-
- ResizeTime
- 作业运行所需的时间量。 (仅适用于作业)
-
- RestartCnt
- 作业的重启次数。 (仅适用于作业)
-
- ResvPort
- 作业的保留端口。 (仅适用于作业步骤)
-
- SchedNodes
- 对于待处理作业,预计在作业开始时使用的节点列表。 (仅适用于作业)
-
- SCT
- 每个节点请求的插槽、核心和线程数量(S:C:T)。 当未设置(S:C:T)时,将显示“*”。 (仅适用于作业)
-
- SegmentSize
- 作业请求的段大小。 (仅适用于作业)
-
- SiblingsActive
- 存在联邦兄弟作业的集群名称。 (仅适用于联邦作业)
-
- SiblingsActiveRaw
- 存在联邦兄弟作业的集群ID。 (仅适用于联邦作业)
-
- SiblingsViable
- 存在可运行的联邦兄弟作业的集群名称。 (仅适用于联邦作业)
-
- SiblingsViableRaw
- 存在可运行的联邦兄弟作业的集群ID。 (仅适用于联邦作业)
-
- Sockets
- 作业请求的每个节点的插槽数量。 这报告了srun --sockets-per-node选项的值。 当未设置--sockets-per-node时,将显示“*”。 (仅适用于作业)
-
- SPerBoard
- 分配给作业的每个板的插槽数量。 (仅适用于作业)
-
- StartTime
- 作业或作业步骤的实际或预期开始时间。 (适用于作业和作业步骤)
-
- State
- 作业状态的扩展形式。 有关可能状态的列表,请参见下面的作业状态代码部分。 (仅适用于作业)
-
- StateCompact
- 作业状态的紧凑形式。 有关可能状态的列表,请参见下面的作业状态代码部分。 (仅适用于作业)
-
- STDERR
- 标准错误输出的目录。 (适用于作业和步骤)
-
- STDIN
- 标准输入的目录。 (适用于作业和步骤)
-
- STDOUT
- 标准输出的目录。 (适用于作业和步骤)
-
- StepID
- 作业或作业步骤的ID。 在作业数组的情况下,作业ID格式将为“<base_job_id>_<index>”。 (仅适用于作业步骤)
-
- StepName
- 作业步骤名称。 (仅适用于作业步骤)
-
- StepState
- 作业步骤的状态。 (仅适用于作业步骤)
-
- SubmitTime
- 作业提交的时间。 (仅适用于作业)
-
- system_comment
- 与作业相关的系统评论。 (仅适用于作业)
-
- Threads
- 作业请求的每个核心的线程数量。 这报告了srun --threads-per-core选项的值。 当未设置--threads-per-core时,将显示“*”。 (仅适用于作业)
-
- TimeLeft
- 作业执行剩余时间(以天-小时:分钟:秒为单位)。 此值通过从作业使用的时间中减去其时间限制来计算。 如果尚未建立时间,则值可能为“NOT_SET”,或对于没有限制的情况为“UNLIMITED”。 (仅适用于作业)
-
- TimeLimit
- 作业或作业步骤的时间限制。 (适用于作业和作业步骤)
-
- TimeUsed
- 作业或作业步骤使用的时间(以天-小时:分钟:秒为单位)。 天和小时仅在需要时打印。 对于作业步骤,此字段显示自执行开始以来的经过时间,因此对于已暂停的作业步骤将不准确。 集群中节点之间的时钟偏差将导致时间不准确。 如果时间明显错误(例如,负值),则显示为“INVALID”。 (适用于作业和作业步骤)
-
- tres-alloc
- 如果作业正在运行,则打印分配给作业的可跟踪资源。 如果未运行,则打印作业请求的可跟踪资源。
-
- tres-bind
- 打印作业或作业步骤请求的可跟踪资源任务绑定。
-
- tres-freq
- 打印作业或作业步骤请求的可跟踪资源频率。
-
- tres-per-job
- 打印作业请求的可跟踪资源。
-
- tres-per-node
- 打印作业或作业步骤请求的每个节点的可跟踪资源。
-
- tres-per-socket
- 打印作业或作业步骤请求的每个插槽的可跟踪资源。
-
- tres-per-step
- 打印作业步骤请求的可跟踪资源。
-
- tres-per-task
- 打印作业或作业步骤请求的每个任务的可跟踪资源。
-
- UserID
- 作业或作业步骤的用户ID。 (适用于作业和作业步骤)
-
- UserName
- 作业或作业步骤的用户名。 (适用于作业和作业步骤)
-
- Wait4Switch
- 等待所需交换机数量的时间。 (仅适用于作业)
-
- WCKey
- 工作负载特征键(wckey)。 (仅适用于作业)
-
- WorkDir
- 作业的工作目录。 (仅适用于作业)
作业原因代码
这些代码识别作业未被调度程序启动的原因。 可能有多个原因导致作业尚未启动,在这种情况下,仅显示尝试调度方法所遇到的原因。下面列出的原因是您可能会看到的一些常见原因。 有关原因代码的完整列表,请参见此页面: <https://slurm.schedmd.com/job_reason_codes.html>
- AssocGrp*Limit
- 作业的关联已达到某些资源的总限制。
-
- AssociationJobLimit
- 作业的关联已达到其最大作业计数。
-
- AssocMax*Limit
- 作业请求的资源违反了请求关联的每作业限制。
-
- AssociationResourceLimit
- 作业的关联已达到某些资源限制。
-
- AssociationTimeLimit
- 作业的关联已达到其时间限制。
-
- BadConstraints
- 作业的约束无法满足。
-
- BeginTime
- 作业的最早开始时间尚未到达。
-
- Cleaning
- 作业正在重新排队,并且仍在清理其先前执行的内容。
-
- Dependency
- 此作业依赖于尚未满足的另一个作业。
-
- DependencyNeverSatisfied
- 此作业依赖于永远不会满足的另一个作业。
-
- InactiveLimit
- 作业达到了系统的InactiveLimit。
-
- InvalidAccount
- 作业的账户无效。
-
- InvalidQOS
- 作业的QOS无效。
-
- JobHeldAdmin
- 作业被系统管理员保留。
-
- JobHeldUser
- 作业被用户保留。
-
- JobLaunchFailure
- 作业无法启动。 这可能是由于文件系统问题、无效的程序名称等。
-
- Licenses
- 作业正在等待许可证。
-
- NodeDown
- 作业所需的节点已关闭。
-
- NonZeroExitCode
- 作业以非零退出代码终止。
-
- PartitionDown
- 此作业所需的分区处于DOWN状态。
-
- PartitionInactive
- 此作业所需的分区处于非活动状态,无法启动作业。
-
- PartitionNodeLimit
- 此作业所需的节点数量超出了其分区的当前限制。 还可以表示所需节点处于DOWN或DRAINED状态。
-
- PartitionTimeLimit
- 作业的时间限制超过了其分区的当前时间限制。
-
- Priority
- 此分区或高级预留存在一个或多个优先级更高的作业。
-
- Prolog
- 其Prolog程序仍在运行。
-
slurm_link" id="OPT_QOSGrp*Limit" href="#OPT_QOSGrp*Limit">
- 作业的QOS已达到某些资源的总限制。
-
- QOSJobLimit
- 作业的QOS已达到其最大作业数。
-
- QOSMax*Limit
- 作业请求的资源违反了请求的QOS的每个作业限制。
-
- QOSResourceLimit
- 作业的QOS已达到某些资源限制。
-
- QOSTimeLimit
- 作业的QOS已达到其时间限制。
-
- QOSUsageThreshold
- 所需的QOS阈值已被突破。
-
- ReqNodeNotAvail
- 作业特别要求的某些节点当前不可用。 该节点可能正在使用中、被保留给其他作业、处于高级预留状态、DOWN、DRAINED或未响应。 处于DOWN、DRAINED或未响应状态的节点将在作业的“原因”字段中标识为“UnavailableNodes”。此类节点通常需要系统管理员的干预才能恢复可用。
-
- Reservation
- 作业正在等待其高级预留变为可用。
-
- Resources
- 作业正在等待资源变为可用。
-
- SystemFailure
- Slurm系统、文件系统、网络等的故障。
-
- TimeLimit
- 作业耗尽了其时间限制。
-
- WaitingForScheduling
- 此作业尚未设置原因。 等待调度程序确定适当的原因。
-
作业状态代码
作业在执行过程中通常会经历几个状态。 典型状态包括PENDING、RUNNING、SUSPENDED、COMPLETING和COMPLETED。 squeue识别以下状态。可能状态的完整列表可在<https://slurm.schedmd.com/job_state_codes.html>中找到。
- BF BOOT_FAIL
- 作业因启动失败而终止,通常是由于硬件故障(例如,无法启动节点或块,作业无法重新排队)。
-
- CA CANCELLED
- 作业被用户或系统管理员显式取消。 作业可能已启动,也可能未启动。
-
- CD COMPLETED
- 作业在所有节点上以零退出代码终止了所有进程。
-
- CF CONFIGURING
- 作业已分配资源,但正在等待这些资源准备好使用(例如,启动)。
-
- CG COMPLETING
- 作业正在完成过程中。某些节点上的某些进程可能仍然处于活动状态。
-
- DL DEADLINE
- 作业在截止日期时终止。
-
- F FAILED
- 作业以非零退出代码或其他故障条件终止。
-
- NF NODE_FAIL
- 作业因一个或多个分配节点的故障而终止。
-
- OOM OUT_OF_MEMORY
- 作业遇到内存不足错误。
-
- PD PENDING
- 作业正在等待资源分配。
-
- PR PREEMPTED
- 作业因抢占而终止。
-
- R RUNNING
- 作业当前有一个分配。
-
- RD RESV_DEL_HOLD
- 作业在请求的预留被删除后被保留。
-
- RF REQUEUE_FED
- 作业正在被一个联合体重新排队。
-
- RH REQUEUE_HOLD
- 被保留的作业正在被重新排队。
-
- RQ REQUEUED
- 正在完成的作业正在被重新排队。
-
- RS RESIZING
- 作业即将改变大小。
-
- RV REVOKED
- 由于其他集群启动作业,兄弟节点已从集群中移除。
-
- SI SIGNALING
- 作业正在被信号传递。
-
- SE SPECIAL_EXIT
- 作业在特殊状态下被重新排队。此状态可以由用户设置,通常在EpilogSlurmctld中,如果作业以特定退出值终止。
-
- SO STAGE_OUT
- 作业正在转移文件。
-
- ST STOPPED
- 作业有一个分配,但执行已被SIGSTOP信号停止。 CPU已被此作业保留。
-
- S SUSPENDED
- 作业有一个分配,但执行已被挂起,CPU已被释放给其他作业。
-
- TO TIMEOUT
- 作业在达到其时间限制时终止。
-
性能
执行squeue会向slurmctld发送远程过程调用。如果来自squeue或其他发送远程过程调用到slurmctld守护程序的Slurm客户端命令的调用过多,可能会导致slurmctld守护程序的性能下降,甚至可能导致服务拒绝。
请勿在shell脚本或其他程序的循环中运行squeue或其他发送远程过程调用到slurmctld的Slurm客户端命令。确保程序将对squeue的调用限制在收集信息所需的最小范围内。
环境变量
某些squeue选项可以通过环境变量设置。这些环境变量及其对应的选项列在下面。(注意:命令行选项将始终覆盖这些设置。)
- SLURM_BITSTR_LEN
- 指定用于保存作业数组任务ID表达式的字符串长度。 默认值为64字节。 值为0将打印所需长度的完整表达式。 较大的值可能会对应用程序性能产生不利影响。
-
- SLURM_CLUSTERS
- 与--clusters相同
-
- SLURM_CONF
- Slurm配置文件的位置。
-
- SLURM_DEBUG_FLAGS
- 指定squeue使用的调试标志。有关完整标志列表,请参见slurm.conf(5)手册页。环境变量优先于slurm.conf中的设置。
-
- SLURM_JSON
- 控制JSON序列化:
还可以指定有效的strftime()格式。例如,值“%a %T”将报告星期几和时间戳(例如“Mon 12:34:56”)。
示例
- 以六位右对齐的数字格式打印调试分区中状态为COMPLETED的作业ID,后跟任意字段大小的优先级:
-
$ squeue -p debug -t COMPLETED -o "%.6i %p" JOBID PRIORITY 65543 99993 65544 99992 65545 99991
- 打印调试分区中按用户排序的作业步骤:
-
$ squeue -s -p debug -S u STEPID NAME PARTITION USER TIME NODELIST 65552.1 test1 debug alice 0:23 dev[1-4] 65562.2 big_run debug bob 0:18 dev22 65550.1 param1 debug candice 1:43:21 dev[6-12]
- 仅打印作业12345、12346和12348的信息:
-
$ squeue --jobs 12345,12346,12348 JOBID PARTITION NAME USER ST TIME NODES NODELIST(REASON) 12345 debug job1 dave R 0:21 4 dev[9-12] 12346 debug job2 dave PD 0:00 8 (Resources) 12348 debug job3 ed PD 0:00 4 (Priority)
- 仅打印作业步骤65552.1的信息:
-
$ squeue --steps 65552.1 STEPID NAME PARTITION USER TIME NODELIST 65552.1 test2 debug alice 12:49 dev[1-4]
版权
版权所有 (C) 2002-2007 加州大学理事会。 在劳伦斯利弗莫尔国家实验室制作(参见免责声明)。版权所有 (C) 2008-2010 劳伦斯利弗莫尔国家安全。
版权所有 (C) 2010-2022 SchedMD LLC。
此文件是Slurm资源管理程序的一部分。 有关详细信息,请参见<https://slurm.schedmd.com/>。
Slurm是自由软件;您可以根据自由软件基金会发布的GNU通用公共许可证的条款重新分发和/或修改它;许可证的版本2,或(根据您的选择)任何更高版本。
Slurm的发布希望它能有用,但不提供任何保证;甚至不提供适销性或特定用途适用性的默示保证。有关更多详细信息,请参见GNU通用公共许可证。
另见
scancel(1), scontrol(1), sinfo(1), srun(1), slurm_load_ctl_conf (3), slurm_load_jobs (3), slurm_load_node (3), slurm_load_partitions (3)
索引
此文档由 man2html使用手册页创建。
时间:2025年7月2日 13:21:56 GMT