squeue
# squeue
使用 squeue
命令可以查看作业的状态,天河对应的命令为 yhqueue
或 yhq
。
本文以 yhq
命令为例进行介绍。
命令用法如下:
$ yhq
JOBID PARTITION NAME USER ST TIME NODES NODELIST(REASON)
1454916 debug sub.sh zhenggang R 00:05:00 2 cn[5-6]
1
2
3
2
3
参数说明如下:
关键词 | 含义 | 备注 |
---|---|---|
JOBID | 任务编号 | 唯一编号,方便追溯 |
PARTITION | 计算分区名 | 可用yhi 查询 |
NAME | 任务名 | 默认以提交脚本的名称当作任务名 |
USER | 用户名 | 提交该任务的用户名 |
ST | 任务状态 | PD排队 R运行 S挂起 CG正在退出 |
TIME | 任务运行时间 | 例子中为5分钟 |
NODES | 任务作占节点数 | 例子中为2个 |
NODELIST(REASON) | 节点列表(排队原因) | 如果是排队状态的任务,则会给出排队原因 |
总结来讲,用户作业的状态主要有如下几种:
- PD: 排队,pending
- R: 运行中,running
- S: 挂起中,suspended
- CA: 被取消,canceled
- CD: 成功结束,completed
- F: 失败结束,failed
- TD: 超时,timeout
- NF: 因节点故障而运行失败,node_fail
作业状态转换的详细图如下,由于 CD, CA, F 这三个作业状态持续时间很短,因此使用 yhq 命令可能会观察不到这些状态。
用户可以使用 yhq 查看自己提交的作业,为了保证用户的数据安全,普通用户通过 yhq 只能看到自己提交的作业。
常见排队原因
- AssociationResourceLimit:关联的资源限制已满 --- 账户有使用节点数限制,已经用满了
- Resources:当前可用资源不能满足作业需求 --- 系统的可用节点资源不足
- Dependency:作业的依赖关系未满足 --- 作业之间有依赖关系,依赖的作业没完成
- PartitionDown:作业所在的分区处于 down 状态 --- 分区down,所以节点不可用
# 查看作业明细
用户可以通过如下命令来查看自己提交的作业明细
yhcontrol show jobs jobid
1
其中 jobid 表示作业的 id 号,用户根据自己作业的情况填入即可,之后用户即可以看到该作业十分详细的信息。
TIP
- 用户作业如果长时间为 CG 状态,表示作业没有正常退出,系统管理员会定期扫描 CG 作业并处理,请用户耐心等待;用户作业如果变成 S 状态,表示系统管理员在维护系统,维护完成后会将用户作业恢复,对用户作业不会造成影响。