使用流程

本文为您介绍分布式训练(DLC)完整的使用流程。

在模型训练阶段,您可通过DLC发起大规模的分布式训练任务。具体使用流程如下:

  1. 提交训练任务前,需要完成以下准备工作:

    • 准备资源

      支持使用灵骏智算资源(用于大模型的训练任务)和通用计算资源(用于通用的训练任务)。

    • 准备镜像

      准备模型训练阶段依赖的镜像环境。支持官方镜像和自定义镜像。

    • 准备数据集

      提交训练任务前,您需将训练任务所需的数据上传至OSSNAS后,创建为训练任务可直接使用的数据集。用于存储训练所需的文件和结果文件。

    • 准备代码集

      提交训练任务前,您需要准备训练任务所需代码。为了方便管理和使用,建议您在工作空间的AI资产管理 > 代码配置页面中,将该代码添加为PAIAI资产,便于多个训练任务直接选择使用。

  2. 创建训练任务。

    支持通过控制台、SDK或命令行提交训练任务。更详细的参数配置说明,请参见创建训练任务

    提交DLC任务时,支持以下高阶功能配置:

    • AIMaster:弹性自动容错引擎

      介绍如何在提交DLC任务时开启自动容错功能。开启该功能后,系统会拉起一个AIMaster实例和任务其他实例一起运行,起到任务监控、容错判断、资源控制的作用。

    • SanityCheck:算力健康检测

      介绍如何在提交DLC任务时开启健康检测功能。健康检测会对参与训练的资源进行全面检测,自动隔离故障节点,并触发后台自动化运维流程,有效减少任务训练初期遇到问题的可能性,提升训练成功率。

    • EasyCkpt:AI大模型高性能状态保存恢复

      介绍提交DLC任务时,如何使用EasyCkpt。EasyCkptPyTorch大模型训练场景提供全过程进度无损的模型保存和恢复能力。

    • RDMA:使用高性能网络进行分布式训练

      当使用灵骏智算资源(Serverless)提交训练任务时,支持使用高性能网络(RDMA)进行分布式训练。介绍使用RDMA的相关配置说明。

    • eRDMA:使用高性能网络进行分布式训练

      PAI通用计算资源中的部分GPU机型已支持弹性RDMA(eRDMA)能力。您只需使用特定镜像提交基于这些GPU机型的DLC任务,系统将自动在容器内挂载eRDMA网卡,从而加速分布式训练过程。

    • 使用闲时资源

      为了提升资源利用率并减少因资源配额错配而导致的浪费,DLC提供了闲时资源功能。使用预付费资源配额提交DLC训练任务时,您可以通过配置闲时资源,有效利用空闲资源,以提高资源的整体使用率。

    • DLC训练任务中使用云存储

      您可以在提交DLC任务时,通过代码配置或挂载的方式配置OSS、NAS、CPFSMaxCompute存储,从而方便地在训练过程中直接读写相应存储中的数据。

    • 订阅任务日志

      通过配置SLS日志转发功能,您能够直接将当前工作空间中的DLC任务日志转发至指定的SLS日志库,实现自定义分析。

    • 使用竞价任务

      支持使用灵骏智算竞价资源创建DLC任务。

  3. 查看和管理训练任务。

    任务提交完成后,您可通过查看训练详情了解任务运行情况。且支持对已创建的任务进行停止、克隆、分享、生成脚本和删除等管理操作,详情请参见管理训练任务

  4. 监控训练任务。

    提交训练任务后,您可以通过以下操作监控训练任务。

    • 提交了绑定数据集的训练任务后,您可以使用Tensorboard查看训练任务分析报告。

    • 使用云监控或ARMS查看DLC任务的资源状况或配置告警规则。详情请参见训练监控与报警

    • 通过在PAI工作空间的事件中心中创建消息通知规则,以便跟踪和监控DLC任务的状态。详情请参见消息通知

  5. 配置训练任务周期性调度。

    当测试数据或超参数更新,并需要持续进行增量训练和模型调优时,您可以通过周期性调度定期提交DLC任务。

更多DLC相关的使用案例,请参见DLC使用案例汇总