EPL(Easy Parallel Library)是高效易用的分布式模型训练框架,深度集成多种训练优化技术,提供了简单易用的API实现各种并行化策略。您可以使用EPL实现低成本、高性能分布式模型训练。本文为您介绍如何在DLC中使用EPL高效地进行分布式TensorFlow训练。
前提条件
在开始执行操作之前,请确认您已经完成以下准备工作:
已为DLC服务关联角色授权,详情请参见云产品依赖与授权:DLC。
已安装镜像环境:官方镜像或社区镜像(NVIDIA TensorFlow 1.15或TensorFlow-GPU 1.15)。
如果您使用的是官方镜像(官方镜像(由PAI团队提供优化的镜像),可以直接使用EPL,无需安装。
如果您使用的是社区镜像(社区镜像(由社区提供的标准镜像)),则需要先安装EPL才能使用。关于如何安装EPL,详情请参见安装EPL。
说明如果您使用的是DLC平台,建议镜像选择社区镜像:
tensorflow-training:1.15-gpu-py36-cu100-ubuntu18.04
。您可以在DLC中提交执行命令安装EPL,无需单独安装。
步骤一:代码配置
您可以使用EPL编写TensorFlow分布式训练代码,详情请参见快速开始。
您也可以使用EPL代码示例快速开始分布式TensorFlow训练,本方案使用ResNet-50训练数据配置代码集,您可以使用该代码集提交TensorFlow训练任务,且每次进行模型训练时会自动克隆最新的版本,关于如何配置代码集,具体操作步骤如下所示。
步骤二:启动训练任务
进入新建任务页面。
登录PAI控制台。
在左侧导航栏单击工作空间列表,在工作空间列表页面中单击待操作的工作空间名称,进入对应工作空间内。
在工作空间页面的左侧导航栏选择 ,在分布式训练(DLC)页面中单击新建任务,进入新建任务页面。
在新建任务页面,配置基本信息和任务资源配置,其他参数配置详情,请参见创建训练任务。然后单击提交。
基本信息参数配置如下。
参数
使用示例值
资源配额
公共资源组。
任务名称
自定义训练任务名称。
节点镜像
选择社区镜像>tensorflow-training:1.15-gpu-py36-cu100-ubuntu18.04。
框架
TensorFlow。
代码配置
在在线配置下拉选项中选择在步骤一中配置的代码集。
代码分支
main。
执行命令
apt update apt install libnccl2 libnccl-dev cd /root/code/EasyParallelLibrary/ pip install . cd examples/resnet bash scripts/train_dp.sh
任务资源配置参数配置如下所示。
参数
使用示例值
节点数量
配置为2。您可以根据实际训练需求配置该参数。
节点配置
在GPU实例页签选择ecs.gn6v-c8g1.2xlarge。
最长运行时长
2小时。
在分布式训练任务列表中,单击目标任务名称,进入任务详情页面。在该页面中查看该任务的执行情况。具体操作,请参见查看训练详情。
相关文档
如果您想了解关于EPL的更多内容,请参见EPL。
更多关于DLC产品的内容介绍,请参见分布式训练(DLC)。