使用说明
本章节描述集群调度组件的使用说明,包括场景说明、组件说明、组件和特性之间的支持关系,以及使用Volcano调度器和其他调度器时特性支持的产品列表。
场景说明
训练场景:支持的特性包括资源监测、整卡调度、静态vNPU调度、断点续训和弹性训练。
推理场景:支持的特性包括资源监测、整卡调度、静态vNPU调度、动态vNPU调度、推理卡故障恢复和推理卡故障重调度。
训练和推理:在同一个集群中可以既存在训练场景又存在推理场景,在该场景下全部特性都可以使用,但不支持在同一任务中同时使用仅训练任务支持的场景特性(断点续训和弹性训练)和仅推理任务支持的场景特性(动态vNPU调度、推理卡故障恢复和推理卡故障重调度)。
组件介绍
集群调度组件的功能介绍,请参见表1。
组件 |
功能介绍 |
|---|---|
MindCluster Ascend Docker Runtime |
为训推任务提供容器化支持,自动挂载所需文件和设备依赖。 |
MindCluster Ascend Device Plugin |
基于Kubernetes设备插件机制,提供昇腾AI处理器的设备发现、分配和健康状态上报功能,使能Kubernetes管理昇腾AI处理器资源。 |
MindCluster NPU Exporter |
实时监测昇腾AI处理器的资源指标,获取如昇腾AI处理器的利用率、温度、电压等信息。 |
MindCluster Volcano |
基于开源Volcano调度插件机制,增加昇腾AI处理器的亲和性调度、故障重调度等特性,最大化发挥昇腾AI处理器计算性能。 |
MindCluster ClusterD |
提供集群级别的可用资源信息。收集集群任务信息、资源信息和故障信息及影响范围,从任务、芯片和故障维度统计分析。 |
MindCluster Ascend Operator |
提供训练任务生命周期管理,为不同AI框架的分布式训练任务提供相应的环境变量。 |
MindCluster HCCL Controller |
生成分布式训练任务依赖的集合通讯配置。 |
MindCluster NodeD |
提供节点状态上报功能,上报如节点心跳、CPU和内存等故障信息。 |
MindCluster Resilience Controller |
提供弹性缩容训练服务。在训练任务使用的硬件发生故障时,剔除该硬件并继续训练。 |
MindCluster Elastic Agent |
提供训练任务故障时刻保存临终CheckPoint能力。 |
使用Volcano调度器
集群调度组件支持的特性与产品的对应关系如表2所示,√表示支持在训练或推理任务场景下使用该特性;-表示不支持在该场景下使用该特性。
特性名称 |
训练任务 |
推理任务 |
|||||
|---|---|---|---|---|---|---|---|
产品系列 |
Atlas 训练系列产品 |
Atlas A2 训练系列产品 |
推理服务器(插Atlas 300I 推理卡) |
Atlas 200/300/500 推理产品 |
Atlas 200I/500 A2 推理产品 |
Atlas 推理系列产品 |
Atlas 800I A2 推理服务器 |
容器化支持 |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
资源监测 |
√ |
√ |
√ |
- |
- |
√ |
√ |
整卡调度 |
√ |
√ |
√ |
- |
- |
√ |
√ |
静态vNPU调度 |
√ |
- |
- |
- |
- |
√ |
- |
动态vNPU调度 |
- |
- |
- |
- |
- |
√ |
- |
断点续训 |
√ |
√ |
- |
- |
- |
- |
- |
弹性训练 |
√ |
- |
- |
- |
- |
- |
- |
推理卡故障恢复 |
- |
- |
√ |
- |
- |
√ |
√ |
推理卡故障重调度 |
- |
- |
√ |
- |
- |
√ |
√ |
Atlas 200I SoC A1 核心板不支持使用动态vNPU调度。
组件安装位置 |
组件名称 |
整卡调度或静态vNPU调度 |
容器化支持 |
资源监测 |
断点续训 |
弹性训练 |
动态vNPU调度 |
推理卡故障恢复 |
推理卡故障重调度 |
|
|---|---|---|---|---|---|---|---|---|---|---|
训练 |
推理 |
训练和推理 |
训练和推理 |
训练 |
训练 |
推理 |
推理 |
推理 |
||
管理节点 |
MindCluster Volcano |
√ |
√ |
- |
- |
√ |
√ |
√ |
√ |
√ |
MindCluster Resilience Controller |
- |
- |
- |
- |
- |
√ |
- |
- |
- |
|
MindCluster HCCL Controller |
√(二选一) |
- |
- |
- |
√(二选一) |
√ |
- |
- |
- |
|
MindCluster Ascend Operator |
- |
- |
- |
- |
- |
- |
- |
|||
MindCluster ClusterD |
√ |
√ |
- |
- |
√ |
√ |
√ |
√ |
√ |
|
计算节点 |
MindCluster Ascend Device Plugin |
√ |
√ |
- |
- |
√ |
√ |
√ |
√ |
√ |
MindCluster Ascend Docker Runtime |
√ |
√ |
√ |
- |
√ |
√ |
√ |
√ |
√ |
|
MindCluster NodeD |
√ |
√ |
- |
- |
√ |
√ |
√ |
√ |
√ |
|
MindCluster NPU Exporter |
- |
- |
- |
√ |
- |
- |
- |
- |
- |
|
训练容器内 |
MindCluster Elastic Agent |
- |
- |
- |
- |
√ |
- |
- |
- |
- |
使用其他调度器
不使用Volcano作为调度器时,仅支持资源监测、整卡调度、静态vNPU调度和推理卡故障恢复特性,如表4所示,√表示支持在训练或推理任务场景下使用该特性;-表示不支持在该场景下使用该特性。
特性名称 |
训练任务 |
推理任务 |
|||||
|---|---|---|---|---|---|---|---|
产品系列 |
Atlas 训练系列产品 |
Atlas A2 训练系列产品 |
推理服务器(插Atlas 300I 推理卡) |
Atlas 200/300/500 推理产品 |
Atlas 200I/500 A2 推理产品 |
Atlas 推理系列产品 |
Atlas 800I A2 推理服务器 |
容器化支持 |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
资源监测 |
√ |
√ |
√ |
- |
- |
√ |
√ |
整卡调度 |
√ |
√ |
√ |
- |
- |
√ |
√ |
静态vNPU调度 |
√ |
√ |
- |
- |
- |
√ |
√ |
推理卡故障恢复 |
- |
- |
√ |
- |
- |
√ |
√ |
Atlas 200I SoC A1 核心板不支持使用动态vNPU调度。
组件安装位置 |
组件名称 |
整卡调度或静态vNPU调度 |
容器化支持 |
资源监测 |
推理卡故障恢复 |
|
|---|---|---|---|---|---|---|
训练 |
推理 |
训练和推理 |
训练和推理 |
推理 |
||
管理节点 |
MindCluster Resilience Controller |
- |
- |
- |
- |
- |
MindCluster HCCL Controller |
- |
- |
- |
- |
- |
|
MindCluster Ascend Operator |
√ |
- |
- |
- |
- |
|
MindCluster ClusterD |
√ |
√ |
- |
- |
√ |
|
计算节点 |
MindCluster Ascend Device Plugin |
√ |
√ |
- |
- |
√ |
MindCluster Ascend Docker Runtime |
√ |
√ |
√ |
- |
√ |
|
MindCluster NodeD |
√ |
√ |
- |
- |
√ |
|
MindCluster NPU Exporter |
- |
- |
- |
√ |
- |
|
训练容器内 |
MindCluster Elastic Agent |
- |
- |
- |
- |
- |