大模型训练精度问题定位案例_1__31页_3mb
报告摘要
MindStudio大模型训练精度问题定位案例总结
1. 精度问题概述
大模型训练涉及多个环节(数据、模型、框架、算子、硬件),易出现精度问题,如loss起飞、NaN、下游评测差等。问题分为有标杆迁移场景和无标杆原生开发场景。聚焦迁移场景,表现为NPU和标杆(GPU)训练结果不一致。
- 精度问题类型:首step差异、长稳loss差异、溢出或NaN、下游指标差异大。
- 原因:配置差异、数据读取差异、模型结构差异等。问题可能由多因素引起,需系统定位。
2. 问题定位方法
提供了一套标准流程,包括Checklist检查、问题复现、dump采集、工具使用和分场景定位。
-
整体步骤:
- Checklist检查:对比配置、数据、模型、权重和版本。
- 问题复现:通过固定随机种子、开启确定性计算和通信,确保问题可重复。
- 精度问题分场景定位:
- 首step loss差异:检查可疑算子。
- 长稳loss差异:用工具采集梯度或激活值。
- 溢出或NaN:分析步长,定位算子。
- 特殊情况排查:检查算子、同步问题、硬件踩踏等。
- 硬件压测:用于大型集群,排除故障节点。
-
主要工具:MindStudio Probe用于采集和比对精度数据,推荐标准流程优先处理。
3. 问题定位案例
共有多个案例,展示不同类型精度问题的定位和解决方法。
- Checklist不一致案例:配置差异、数据或模型结构问题,通过比对解决。
- 示例:GPU迁移到NPU时,模型结构不一致导致loss差异。
- 确定性计算案例:随机性问题,通过固定种子和工具定位,使用CPU替换或算子优化解决。
- 示例:视觉模型确定性计算问题,由算子不支持导致。
- msprobe工具定位案例:工具用于精确数据分析,定位算子或硬件问题。
- 示例:首step loss差异由gelu算子引起,长稳loss差异由bf16转换梯度问题。
- 特殊情况排查案例:硬件和软件并行问题,如内存踩踏。
- 示例:FSDP训练中NaN由算子调用和内存管理缺陷导致。
- 硬件压测案例:适用于大规模集群,排除硬件fault。
- 示例:排除坏节点后 loss尖刺消失。
总体建议
- 优先执行Checklist和问题复现。
- 使用MindStudio Probe工具进行精确分析。
- 复杂问题需结合工具和硬件压测,联系华为支持解决特定算子或配置问题。
展开完整摘要
试读结束,高清完整版pdf/doc/ppt,请点下载