昇腾社区首页
中文
注册

yaml参数说明

根据特性的不同,配置yaml操作也有所不同。本章节提供使用断点续训的配置yaml操作示例。在具体操作前,用户需要了解相关yaml示例的核心参数说明,再进行操作。

表1 yaml参数说明

参数

取值

说明

minAvailable

  • 单机:1
  • 分布式:N

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

replicas

  • 单机:1
  • 分布式:N

N为节点个数。

image

-

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

host-arch

Arm环境:huawei-arm

x86_64环境:huawei-x86

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

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

accelerator-type

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

  • Atlas 800 训练服务器(NPU满配):module
  • Atlas 800 训练服务器(NPU半配):half
  • Atlas 800T A2 训练服务器Atlas 900 A2 PoD 集群基础单元:module-{xxx}b-8
  • Atlas 200T A2 Box16 异构子框:module-{xxx}b-16

根据需要运行训练任务的节点类型,选取不同的值。如果节点是Atlas 800 训练服务器(NPU满配)Atlas 800T A2 训练服务器,可以省略该标签。

说明:

huawei.com/Ascend910

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

  • Atlas 800 训练服务器(NPU满配)
    • 单机单芯片:1
    • 单机多芯片:2、4、8
    • 分布式:1、2、4、8
  • Atlas 800 训练服务器(NPU半配)
    • 单机单芯片:1
    • 单机多芯片:2、4
    • 分布式:1、2、4
  • Atlas 800T A2 训练服务器Atlas 900 A2 PoD 集群基础单元
    • 单机单芯片:1
    • 单机多芯片:2、3、4、5、6、7、8
    • 分布式:1、2、3、4、5、6、7、8
  • Atlas 200T A2 Box16 异构子框
    • 单机单芯片:1
    • 单机多芯片:2、3、4、5、6、7、8、10、12、14、16
    • 分布式:1、2、3、4、5、6、7、8、10、12、14、16

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

说明:
  • 优雅容错模式支持Atlas 800 训练服务器,且资源请求数量只能为4N、8N,N为训练节点数。
  • 优雅容错模式支持Atlas 800T A2 训练服务器Atlas 900 A2 PoD 集群基础单元,且资源请求数量只能为8N,N为训练节点数。

ring-controller.atlas

  • Atlas 800 训练服务器(半配、满配)取值为:ascend-910
  • Atlas 800T A2 训练服务器Atlas 900 A2 PoD 集群基础单元Atlas 200T A2 Box16 异构子框:ascend-{xxx}b

配合自动生成ranktable使用的,任务使用芯片的区分。需要在ConfigMap和任务task中配置。

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

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

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

fault-scheduling

grace

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

force

配置任务采用强制删除模式,在过程中强制删除原Pod。设置为force时需要将yaml中的terminationGracePeriodSeconds字段配置为0或者删除该字段。

off

该任务不使用断点续训特性,K8s的maxRetry仍然生效。

无(无fault-scheduling字段)

其他值

fault-retry-times

0 < fault-retry-times

配置任务发生业务面故障可无条件重试的次数。

说明:
  • 使用无条件重试功能需保证训练进程异常时会导致容器异常退出,若容器未异常退出则无法成功重试。
  • 当前仅Atlas 800T A2 训练服务器Atlas 900 A2 PoD 集群基础单元支持无条件重试功能。

无(无fault-retry-times)或0

该任务不使用无条件重试功能,无法感知业务面故障,vcjob的maxRetry仍然生效。

restartPolicy

  • Never:从不重启
  • Always:总是重启
  • OnFailure:失败时重启
  • ExitCode:根据进程退出码决定是否重启Pod,错误码是1~127时不重启,128~255时重启Pod。
    说明:

    vcjob类型的训练任务不支持ExitCode。

容器重启策略。当配置业务面故障无条件重试时,容器重启策略取值必须为“Never”

terminationGracePeriodSeconds

0< terminationGracePeriodSeconds <"grace-over-time”参数的值

容器收到SIGTERM到被K8s强制停止经历的时间,该时间需要大于0且小于volcano-v{version}.yaml文件中“grace-over-time”参数的值,同时还需要保证能够保存完ckpt文件,请根据实际情况修改。具体说明请参考K8s官网容器生命周期回调

说明:

只有当fault-scheduling配置为grace时,该字段才生效;fault-scheduling配置为force时,该字段无效。