提交Horovod分布式训练

更新时间:

参考本节提交分布式离线训练任务,训练完成后即释放占用的计算资源。
如果您的分布式训练框架使用的是 Horovod 或者 OpenMPI,建议选择 horovod/mpi 模式,可提高您训练任务的效率。 该模式下,多任务角色只需一条启动命令。

说明 任务实例中,会添加一个名为 net1 的网卡,该网卡是专用于训练网络平面,一般连接的是高性能网卡。这种情况下,需要您在 启动命令 中通过如下方式设置网卡使得 NCCL 能正确的选择网卡,否则可能会出现任务执行异常的情况。 如使用的是 horovodrun,则在启动命令中增加 --network-interface=net1 来指定网卡名。 如果使用的是 mpirun,则在启动命令中增加 -x NCCL_SOCKET_IFNAME=net1 来指定网卡名。

# 前提条件

  • 您的账户下配额剩余量足够。
  • 您的模型训练代码是支持分布式的。

# 操作步骤

# 1. 进入 “提交训练任务” 页面

  1. 平台首页选择 项目,随后单击目标项目,进入该项目详情页。
  2. 单击详情页右上角 离线任务,进入 训练任务 页面。
  3. 随后单击右上角 提交任务 按钮,进入任务配置页面。

# 2.填写任务信息


上述参数,参考 提交单机训练-参数说明 填写。

需特殊关注参数:

  • 任务模式:选择 分布式 Horovod/Mpi 任务

    说明:将一个任务在多个实例中运行,从而达到多机多卡的训练效果。可添加任务角色,任务角色代表不同的 AI 训练目标,每个任务角色可以拥有不同的计算资源配置。

  • 资源配置

    1. 任务角色1 中配置该角色的 实例个数实例规格

      • 实例个数
        可理解为参与训练的机器数,比如可配置为 3。
      • 实例规格
        配置单个实例的资源,各资源的配置说明可参考 参数说明-资源配置
    2. (可选)单击 任务角色1 旁的 + 号,新增任务角色。 如果任务不涉及多个任务角色,则无需执行本步骤及下一步。

    3. (可选)为 任务角色2 设置 实例个数资源配置启动命令

# 3. 提交任务

单击 提交 按钮。