快速创建断点续训任务
本文以大模型训练为例,体验断点续训的功能特点,整个体验分为三个部分:
资源准备,收藏资源仓库中的数据集、镜像等;
创建断点续训任务;
演示故障发生后的断点保存和恢复。
资源准备
单击右上角菜单栏选择“资源仓库”,进入“资源仓库”页面,资源仓库操作指南可参见 资源仓库简介。
数据集准备
单击上方的“数据集”,搜索“openwebtext”数据集;
单击“openwebtext”数据集,单击详情页右上方的“收藏至算力平台”,选择“v1”版本,单击“收藏”。
镜像准备
单击上方的“镜像 Hub”,搜索“pytorch”;
单击“pytorch”,单击详情页右上方的“收藏至算力平台”,选择“v1.18.0-pytorch1.13.1-ubuntu18.04”版本,单击“收藏”。
算法准备
单击上方的“算法”,搜索“Megatron-LM-MLU”算法;
单击“Megatron-LM-MLU”算法,单击详情页右上方的“收藏至算力平台”,选择“v1”版本,单击“收藏”;
进入“算力平台”页面;
单击左侧功能栏选择“算法管理”->“算法卷”,选择“算法收藏”;
单击“Megatron-LM-MLU”算法,进入详情页,点击“文件列表”下的“v1”版本,点击右侧“名称”下的“克隆当前目录”,配置如下:
目标算法卷设置成“新建”;
存储集群和名称按需设置;
大小设置成“100”GiB;
模型准备
进入“算力平台”页面;
单击左侧功能栏选择“模型管理”->“模型卷”;
单击右上角“添加我的模型”,模型名称填写“resume”,该模型卷用于保存checkpoint;
“模型类型”和“应用场景”根据实际训练完成的模型进行选择,本例中,“模型类型”选择“自定义”;
“大小”设置成100G,单击“添加”。
更多模型卷操作参见 模型卷 。
算力规格准备
本例中需要的算力资源为“2机8张MLU370卡”,因此单节点规格为8张MLU370,若无合适的算力规格,请联系平台管理员创建。
专属资源池准备
断点续训任务需要设置专属资源池,本例中需要的算力资源为“2机8张MLU370卡”,所以专属资源池至少包含2个8张MLU370的节点,若无合适的资源池,请联系平台管理员创建。
专属资源池提供独享的计算资源,可用于训练作业,开发环境。使用专属资源池的任务不与其他任务共享资源,能够保证断点续训任务顺利进行。
创建断点续训任务
左侧功能栏选择“训练管理->任务式训练”;
单击右上角“创建任务式训练”;
按照页面提示配置参数:
名称填写“resume”;
他人访问权限:可读写,他人访问权限具体可参见 他人访问权限 ;
任务类型:常规任务;
优先级:正常,优先级说明可参见 优先级说明 ;
数据集选择“数据集收藏”的“openwebtext”;
算法选择“我的算法”的“Megatron-LM-MLU”,不要勾选“只读”;
保存模型地址选择“我的模型”的“resume”,不要勾选“只读”;
分布式模式选择“PyTorch”;
资源类型:专属资源池,下拉选择合适的资源池;
单节点规格选择含有8张MLU370卡的规格;若无算力规格,可联系平台管理员创建;
镜像选择“镜像收藏”,下拉选择“pytorch”,版本为“v1.18.0-pytorch1.13.1-ubuntu18.04”;
节点数填写 2;
运行指令选择“专家模式”,输入指令如下:
sh -c 'cd /workspace/algorithm; export DATASET=/workspace/dataset/favorite/openwebtext/v1/openwebtext-gpt_text_document;export MERGE_FILE=/workspace/dataset/favorite/openwebtext/v1/gpt2-merges.txt;export VOCAB_FILE=/workspace/dataset/favorite/openwebtext/v1/gpt2-vocab.json;export CHECKPOINT_PATH=/workspace/outputs/resume/ckpt;export DATA_CACHE=/workspace/outputs/resume/cache;export AUTORESUME_USE_UNRELIABLE_CKPT=1;bash examples/llama_run.sh'
单击“创建”,等待任务式训练状态变成“运行中”;
单击任务名称,在详情页可看到监控、日志信息等。
故障发现和恢复
当有异常发生时,训练任务的状态会变成“调度中”;
在训练任务的日志页面可看到类似信息如下:
在训练任务的事件中,可以看到异常的节点以及异常的原因:
当集群中空闲节点足够或者是可自动恢复的异常,等待一会训练会自动转变成“运行中”。
在训练任务的日志中,可看到如下信息:
更多断点续训相关介绍,请参见 断点续训说明。