模型高可用功能说明
什么是模型训练高可用功能
在长时间、大规模的模型训练中,受限于硬件稳定性、网络波动等原因,训练作业难免会出现中断。如果训练作业能够在中断后快速恢复,将极大地提高训练设备的利用率,降低用户训练的时间成本和算力损失。
ModelArts提供了模型训练高可用功能,包括断点续训练、故障检测、自动重启、故障节点隔离、卡死检测、算子重执行等能力,用于提升训练作业在长时间运行、多机多卡训练等大模型训练场景下的稳定性。帮助用户在发生故障时,能够自动恢复训练状态并继续运行,将算力损失降至最低。
模型训练高可用主要解决以下问题:
- 训练过程中节点、芯片、网络或存储等基础设施异常导致作业失败。
- 多机多卡训练过程中某个节点异常导致整体任务失败。
- 训练进程无退出但长时间无有效进展,即训练卡死。
- 通信链路偶发异常导致分布式训练失败。
- ModelArts高可用配置可以提升训练作业自动恢复能力,但不能替代训练代码的容错设计,您在设计训练代码时,依旧要充分考虑代码的容错性。
- 对于长时间训练任务,尤其是大模型训练任务,建议必须适配CheckPoint保存和断点续训练能力。
模型训练高可用能力地图
表1列举了ModelArts支持的高可用能力及使用场景,请您根据实际需求获取对应的能力。
| 高可用能力 | 主要作用 | 是否需要用户改代码 | 推荐场景 |
|---|---|---|---|
| 断点续训练 | 作业中断后从CheckPoint恢复训练进度。 | 是 | 所有长时间训练任务。 |
| 自动重启 | 作业失败后自动重新下发训练作业。 | 建议配合CheckPoint。 | 硬件故障、环境异常、训练进程异常退出。 |
| 无条件自动重启 | 用户进程异常退出后触发Job级重调度。 | 建议配合CheckPoint。 | 偶发软件异常、进程退出。 |
| 作业卡死检测 | 检测训练进程长时间无有效进展。 | 否 | 多机多卡训练、长稳训练。 |
| 作业卡死重启 | 检测卡死后重启用户训练进程。 | 建议配合CheckPoint。 | 训练进程无退出但无进展。 |
| 故障恢复 | 根据故障类型执行原地恢复、Job重调度、Pod重调度等。 | 是,建议脚本可重入。 | 分布式训练、NPU/GPU多节点训练。 |
| 算子重执行 | 通信算子失败后尝试重新执行,避免作业失败。 | 否或少量适配。 | 昇腾超节点通信故障场景。 |
| 训练日志失败分析 | 训练失败后辅助定位原因。 | 否 | 作业失败排查。 |