特性说明
基础调度包含如下特性:
本文档演示如何基于某模型部署并执行使用NPU的训练或推理任务。生产环境与示例存在差异,本章节内示例仅做参考,用户需要根据实际生产环境做修改。
任务类型
MindCluster集群调度组件支持训练任务的Workload Resources类型:
- (推荐)Ascend Job:简称acjob,适用于通过环境变量设置资源信息的训练任务。
- Volcano Job:简称vcjob,适用于批处理任务,任务有完成状态。
- Deployment:简称deploy,适用于后台常驻任务,任务没有完成状态。在需要持续训练任务、持续占用资源,调试训练任务,或者提供推理服务接口的时候选用。
不支持Deployment的更新操作,如果需要更新,请先删除再创建。
任务状态说明
拉起训练任务后,用户可以通过kubectl get acjob命令查看acjob任务的运行状态,当前运行状态有以下几种。
状态名称 |
说明 |
---|---|
Created |
Job已经创建,但其中一个或多个子资源(pod/service)尚未就绪。 |
Running |
Job的所有子资源(pod/service)已经调度并启动。 |
Restarting |
Job的一个或多个子资源(pod/service)运行失败,但是根据重启策略正在重新启动。 |
Succeeded |
Job的所有子资源(pod/service)处于成功终止阶段。 |
Failed |
Job的一个或多个子资源(pod/service)运行失败。 |
调度时间说明
Volcano在多任务或者单任务场景下,在Atlas 800T A2 训练服务器设备上acjob任务的调度参考时间说明如下。若要达到以下参考时间,需要确保CPU的频率至少为2.60GHz,APIServer时延不超过80毫秒。其中调度时间是指任务下发到Pod状态为Running的时间。
- 多任务调度时间说明。
- 并发创建多个单机单卡任务数量的峰值为100个,即用100个任务yaml同时创建100个单机单卡任务,这100个单机单卡任务的调度时间为107秒。
- 每秒稳定创建单机单卡任务数为5个,连续稳定创建1分钟后,可以创建300个单机单卡任务,这300个单机单卡任务的调度时间为293秒。
- 单任务调度时间说明如表2所示。
ConfigMap说明
- 每个计算节点的Ascend Device Plugin均会创建记录本节点NPU设备信息的ConfigMap文件,该ConfigMap文件名称为mindx-dl-deviceinfo-<nodename>(以下简称device-info-cm),通过该ConfigMap进行故障信息的上报。该ConfigMap文件字段说明,请参见表1。
- 每个计算节点的NodeD均会创建记录本节点设备信息的ConfigMap文件,该ConfigMap文件名称为mindx-dl-nodeinfo-<nodename>(以下简称node-Info-cm),通过该ConfigMap进行节点故障的信息上报。该ConfigMap文件字段说明,请参见表1。
- ClusterD会创建记录本集群设备信息的ConfigMap文件,该ConfigMap文件名称为cluster-info-<device/node/switch>-<[0-5]>(以下简称cluster-Info-cm),通过该ConfigMap进行集群中节点及芯片故障信息上报。该ConfigMap文件字段说明,请参见请参见集群资源章节。