昇腾社区首页
中文
注册

Ascend Operator环境变量说明

Ascend Operator为不同AI框架的分布式训练任务提供相应的环境变量,该环境变量的相关说明请参见表1

表1 Ascend Operator注入的训练环境变量

框架名称

环境变量名称

功能

取值

说明

PyTorch

MASTER_ADDR

与Master节点通信的IP地址

合法的IP地址,格式为字符串,要求为常规IPv4或IPv6格式

  • Master Pod中设置为podIP。
  • Worker Pod中设置为Master Pod对应svc的clusterIP。

MASTER_PORT

与Master节点通信的端口

支持配置为字符串、数字,取值范围为0~65520

Master Pod对应svc中名称为ascendjob-port的值,默认为2222。

WORLD_SIZE

任务使用的总NPU数

大于0的整数

任务使用的总卡数,例如64个NPU任务,则取值为64。

RANK

本节点Pod的Node Rank

大于或等于0的整数

Master为0,Worker从1开始逐一增加。

LOCAL_WORLD_SIZE

每个节点Pod使用的NPU数

大于或等于0的整数

例如Pod使用4个NPU,则配置为4。

LOCAL_RANK

每个节点Pod使用的NPU的逻辑ID列表

字符串

根据Pod使用NPU数量进行配置,从0开始。例如,Pod使用4个NPU,则配置为{0,1,2,3}。

MindSpore

MS_SERVER_NUM

指定角色为MS_PSERVER的进程数量

0

暂不支持PS模式,设置固定值0。

MS_WORKER_NUM

任务使用的总NPU数

大于0的整数

任务使用的总NPU数,例如64个NPU任务,则取值为64。

MS_LOCAL_WORKER

每个节点Pod使用的NPU数

大于0的整数

例如Pod使用4个NPU,则配置为4。

MS_SCHED_HOST

指定Scheduler的IP地址

合法的IP地址

  • Scheduler Pod中设置为podIP
  • Worker Pod设置为Scheduler Pod对应svc的clusterIP。

MS_SCHED_PORT

与Scheduler通信的端口

1024~65535范围内的端口号。

Scheduler Pod对应svc中名称为ascendjob-port的值,默认取值为2222。

MS_ROLE

指定本进程角色

  • MS_SCHED: 代表Scheduler进程,一个训练任务只启动一个Scheduler,负责组网,容器恢复等,不会执行训练代码
  • MS_WORKER: 代表Worker进程,一般设置分布式训练进程为此角色

Worker进程会向Scheduler进程注册从而完成组网。

MS_NODE_RANK

本节点Pod的Node Rank

大于或等于0的整数

  • Scheduler Pod设置为0。
  • Worker Pod从0开始递增。

TensorFlow

CM_CHIEF_IP

与CHIEF通信的IP

合法的IP地址,格式为字符串,要求为常规IPv4或IPv6格式

  • chief Pod中设置为podIP。
  • Worker Pod设置为chief Pod 对应svc的clusterIP。

CM_CHIEF_PORT

与CHIEF通信的端口

支持配置为字符串、数字,取值范围0~65520

Scheduler Pod对应svc中名称为ascendjob-port的值,默认取值为2222。

CM_CHIEF_DEVICE

用于指定CHIEF节点中统计Server端集群信息的Device逻辑ID

0

取值固定取值为0。

CM_WORKER_SIZE

任务使用的总NPU数

取值范围为0~32768

任务使用的总卡数,例如64个NPU任务,则取值为64。

CM_LOCAL_WORKER

每个Pod使用的NPU数

大于0的整数

例如Pod使用4个NPU,则配置为4。

CM_WORKER_IP

Pod的podIP

合法的IP地址,格式为字符串,要求为常规IPv4或IPv6格式

当前Pod的podIP。

CM_RANK

本节点Pod的Node Rank

大于或等于0的整数

  • chief设置为0
  • worker从1开始递增