空闲资源提示
该功能是提交任务时, 资源配置 的一个辅助功能,尤其便于帮助提交分布式离线训练的用户知晓当前空闲资源量,降低排队可能性。
如下图所示,资源配置 右侧为空闲资源提示,您可以调整 主要资源限制,来查看以该资源为主的最大可用空闲资源。
本文将介绍空闲资源量的获取逻辑,以便帮助您了解该功能从而更好更快的提交任务。
# 资源选择为 CPU
系统根据您选择的 主要资源限制,按其剩余量多少对集群中的节点进行排序,剩余多的排在前面,如遇剩余量相同则再对比另一类资源的剩余量来决定先后,多的在前。界面上空闲资源则显示排序第一的节点上的剩余 CPU 和内存量。
场景举例
有如下一个集群,共三个节点 ,主要资源限制 设置为 CPU。
| 节点 | CPU 剩余 | 内存剩余 |
|---|---|---|
| node1 | 80 | 200G |
| node2 | 70 | 200G |
| node3 | 80 | 320G |
空闲值获取逻辑 按 CPU 剩余量多少对集群中的节点进行排序,多的在前;如遇剩余量相同则再对比 内存 资源的剩余量,多的在前。最终得到如下排序:
节点 CPU 剩余 内存剩余 node3 80 320G node1 80 200G node2 70 200G 空闲资源提示
- 节点最大空闲 CPU:80 core
- 同节点空闲内存:320 GB
# 资源选择为 GPU(物理卡)
# 单机模式
适用于初始化开发环境、提交普通离线训练场景。
系统筛选出集群中包含该 GPU 型号的节点,再根据您选择的 主要资源限制,按其剩余量多少对这些节点进行排序,剩余多的排在前面,如遇剩余量相同则对比其他资源的剩余量,其他资源按 [GPU] -> [CPU] -> [内存] 的优先级依次去对比。界面上则展示排序第一的节点上的剩余 CPU 和内存量。
场景举例
型号 选择 Tesla T4,主要资源限制 设为 GPU,系统过滤出集群中含 Tesla T4 卡的节点有如下:
| 节点 | GPU 剩余 | CPU 剩余 | 内存剩余 |
|---|---|---|---|
| node1 | 32 | 100 | 200 GB |
| node2 | 16 | 80 | 160 GB |
| node3 | 8 | 50 | 100 GB |
| node4 | 16 | 80 | 170 GB |
空闲值获取逻辑:
按 GPU 剩余量多少排序一次,多的在前。
对于 GPU 剩余量相同的节点,对比他们剩余的 CPU 量仅对他们进行一次单独排序,多的排在前;其他节点排序位置不变。
对于 GPU、CPU 剩余都相同的节点,对比他们 内存 资源的剩余量仅对他们再进行一次单独排序,多的在前;其他节点排序位置不变;最终得到如下排序。
节点 GPU 剩余 CPU 剩余 内存剩余 node1 32 100 200 GB node4 16 80 170 GB node2 16 80 160 GB node3 8 50 100 GB
空闲资源提示
- 节点最大空闲 GPU:32 卡
- 同节点空闲 CPU:100 core
- 同节点空闲内存:200 GB
# 分布式场景
适用于分布式离线训练场景。
先筛选出含 GPU 型号的节点,然后根据“主要资源限制”,给各节点排序:
当主要资源限制为 GPU 时 先按卡数从多到少进行排序,若存在多个节点卡数相同,再看各自的CPU数,若也相同,再看内存,得到排序。
当主要资源限制为 CPU 时 先按CPU从多到少进行排序,若存在多个节点CPU相同,再看各自的GPU数,若也相同,再看内存,得到排序。
当主要资源限制为内存时 先按内存从多到少进行排序,若存在多个节点内存相同,再看各自的GPU数,若也相同,再看CPU,得到排序;
然后根据实例个数 n,取排名前 n 的节点中,各资源的最小值,以保证 n 个实例随机调度到前 n 节点上都能被运行起来。 若实例数 n 大于节点数,取所有节点各资源的最小值即可。
场景举例:
型号 选择 Tesla T4,实例个数 设置为 2,主要资源限制 设为 GPU,系统过滤出集群中含 Tesla T4 卡的节点有如下:
| 节点 | GPU 剩余 | CPU 剩余 | 内存剩余 |
|---|---|---|---|
| node1 | 32 | 100 | 100 GB |
| node2 | 16 | 80 | 160 GB |
| node3 | 8 | 50 | 100 GB |
| node4 | 16 | 80 | 170 GB |
空闲值获取逻辑
按 GPU 剩余量多少排序一次,多的在前。
对于 GPU 剩余量相同的节点,对比他们剩余的 CPU 量仅对他们进行一次单独排序,多的排在前;其他节点排序位置不变。
对于 GPU、CPU 剩余都相同的节点,对比他们 内存 资源的剩余量仅对他们再进行一次单独排序,多的在前;其他节点排序位置不变。 最终得到如下排序。
节点 GPU 剩余 CPU 剩余 内存剩余 node1 32 100 100 GB node4 16 80 170 GB node2 16 80 160 GB node3 8 50 100 GB
空闲资源提示 根据实例个数 2,取排名前 2 的节点中,各资源的最小值来提示剩余资源,以保证您按提示填写了最大的量,这两个实例都能在排名前 2 的任一节点上运行起来。即提示资源量如下。
- 前n节点最小空闲 GPU:16 卡
- 前n节点最小空闲 CPU:80 core
- 前n节点最小空闲内存:100 GB
# 资源选择为 GPU(虚拟卡)
# 单机模式
适用于初始化开发环境、提交单机离线训练时。
若平台调度模式是 local-only,则先过滤出配置虚拟卡的节点,其余逻辑与物理卡一致;
若平台调度模式是 local-first,则任务可跨节点使用 GPU,即调度到 node1 上的任务可直接使用 node2 上的 GPU 资源,因此 空闲 GPU 的获取不受 主要资源限制 选择的制约,也与 空闲内存、空闲 CPU 不相制约,他们来源于两个排序。
说明:实例所需的 GPU 资源需完整的来源于 1 个节点,不可由多个节点拼凑。
- 排序 1,用于获取 空闲 GPU。 即取过滤出的节点中剩余 GPU 量最多的那个节点上的 GPU 剩余值。
- 排序 2,用于获取 空闲 CPU 和 空闲内存。 按您选择的 主要资源限制 的资源剩余量排序节点,剩余多的排在前面,如遇剩余量相同则再对比另一类资源的剩余量,最终取排名第一节点上剩余的 CPU 和内存值。
场景举例
平台调度模式为 local-first,型号 选择 Tesla T4,主要资源限制 设为 GPU,系统过滤出集群中含 Tesla T4 卡的节点有如下:
| 节点 | GPU 剩余 | CPU 剩余 | 内存剩余 |
|---|---|---|---|
| node1 | 32 | 70 | 100 GB |
| node2 | 16 | 80 | 160 GB |
| node3 | 8 | 50 | 100 GB |
| node4 | 16 | 80 | 170 GB |
空闲值获取逻辑
排序 1 按 GPU 剩余量多少排序,多的在前,得到一个排序。
排序 2
按 CPU 剩余量多少排序,多的在前。
对于 CPU 剩余都相同的节点,对比他们 内存 资源的剩余量仅对他们再进行一次单独排序,多的在前;其他节点排序位置不变;最终得到如下排序。
节点 GPU 剩余 CPU 剩余 内存剩余 node4 16 80 170 GB node2 16 80 160 GB node1 32 70 100 GB node3 8 50 100 GB
空闲资源提示
- 节点最大空闲 GPU:32 卡
- 同节点空闲 CPU:80 core
- 同节点空闲内存:170 GB
# 分布式场景
适用于提交分布式离线训练场景。

若平台调度模式是
local-only,则资源空闲提示值的获取同 资源选择 GPU(物理卡)的分布式场景。若平台调度模式是 local-first,则任务可跨节点使用 GPU,即调度到 node1 上的任务可直接使用 node2 上的 GPU 资源,因此 空闲 GPU 的获取不受 主要资源限制 选择的制约,也与 空闲内存、空闲 CPU 不相制约,他们来源于两个排序。
说明:实例所需的 GPU 资源需完整的来源于 1 个节点,不可由多个节点拼凑。
- 排序 1,用于获取 空闲 GPU。 按剩余 GPU 卡数给节点排序,多的靠前,显示排名前 n(实例数) 中最小的 GPU 卡数剩余。
- 排序 2,用于获取 空闲 CPU 和 空闲内存。 按您选择的 主要资源限制 的资源剩余量排序节点,剩余多的排在前面,如遇剩余量相同则再对比另一类资源的剩余量,最终取前 n 节点中 CPU 和内存的最小值,以保证 n 个实例随机调度到前 n 节点上都能被运行起来。
场景举例
平台调度模式为 local-first,实例个数 为 2,型号 选择 Tesla T4,主要资源限制 设为 GPU,系统过滤出集群中含 Tesla T4 卡的节点有如下:
| 节点 | GPU 剩余 | CPU 剩余 | 内存剩余 |
|---|---|---|---|
| node1 | 32 | 70 | 100 GB |
| node2 | 16 | 80 | 160 GB |
| node3 | 8 | 50 | 100 GB |
| node4 | 16 | 80 | 170 GB |
空闲值获取逻辑:
排序 1 按 GPU 剩余量多少排序,多的在前,得到一个排序如下。空闲 GPU 为排名前 2 节点中最小的 GPU 剩余量即 16 卡。
节点 GPU 剩余 CPU 剩余 内存剩余 node1 32 70 100 GB node2 16 80 160 GB node4 16 80 170 GB node3 8 50 100 GB 排序 2
按 CPU 剩余量多少排序,多的在前。
对于 CPU 剩余都相同的节点,对比他们 内存 资源的剩余量仅对他们再进行一次单独排序,多的在前;其他节点排序位置不变;最终得到如下排序。
节点 GPU 剩余 CPU 剩余 内存剩余 node4 16 80 170 GB node2 16 80 160 GB node1 32 70 100 GB node3 8 50 100 GB
取排名前 2 节点中最小的 CPU 剩余量和显存剩余量,应为 80 core 和 160GB。
空闲资源提示
- 前n节点最小空闲 GPU:16 卡
- 前n节点最小空闲 CPU:80 core
- 前n节点最小空闲内存:160 GB