YAML参数说明

本章节提供使用弹性训练配置YAML的操作示例。在具体操作前,用户需要了解相关YAML示例的参数说明,再进行操作。

表1 YAML参数说明

参数

取值

说明

minAvailable

  • 单机:1
  • 分布式:N

N为节点个数,Deployment类型的任务不需要该参数,该参数建议与replicas保持一致。

replicas

  • 单机:1
  • 分布式:N

N为任务副本数。

maxRetry

0

Pod删除重启次数,弹性训练需关闭Pod重启,需要设置为0。

minReplicas

1

最小副本数,需要设置为任务需要的最小节点的数量。

fault-scheduling

grace

配置任务采用优雅删除模式,并在过程中先优雅删除原Pod,15分钟后若还未成功,使用强制删除原Pod

force

暂不支持。

说明:

当前仅支持grace模式。

off

无(无fault-scheduling字段)

其他值

elastic-scheduling

on

开启弹性训练。

image

-

训练镜像名称,请根据实际修改(用户在准备训练镜像章节制作或者获取的镜像名称)。

(可选)host-arch

Arm环境:huawei-arm

x86_64环境:huawei-x86

需要运行训练任务的节点架构,请根据实际修改。

分布式任务中,请确保运行训练任务的节点架构相同。

accelerator-type

根据所使用芯片类型不同,取值如下:

Atlas 800 训练服务器(NPU满配):module

-

huawei.com/Ascend910

根据所使用芯片类型不同,取值如下:

Atlas 800 训练服务器(NPU满配)
  • 单机单芯片:1
  • 单机多芯片:2、4、8
  • 分布式:1、2、4、8

请求的NPU数量,请根据实际修改,请求整卡时不能再请求vNPU。

ring-controller.atlas

Atlas 800 训练服务器(NPU满配)取值为:ascend-910

用于区分任务使用的芯片的类型。需要在ConfigMap和任务task中配置。

metadata.annotations['huawei.com/AscendXXX']

XXX表示芯片的型号,支持的取值为910,310和310P。取值需要和环境上实际的芯片类型保持一致。

Ascend Docker Runtime会获取该参数值,用于给容器挂载相应类型的NPU。

新任务副本数范围为[minReplicas, replicas],具体数值由当前集群中的可用节点数确定,多节点分布式训练时有效。