简介
本章节聚焦于性能问题根源的精确定位方法,阐述了从广泛的问题领域逐步深入至具体问题点的“由面及点”策略。在高性能计算与大规模分布式训练中,面对复杂多变的性能瓶颈,仅依靠单一维度的分析往往难以迅速、精准地锁定问题所在。为此,本章节针对七类常见性能问题,详细介绍了从宏观层面的趋势识别到微观层面的全面排查的技术手段。
问题类型 |
问题介绍 |
---|---|
通信问题 |
是指在分布式训练过程中,由于节点间数据传输效率低下或快慢卡问题所引发的集群整体性能下降现象。首先通过MindStudio Insight工具的集群性能分析功能对Profiling结果做初步分析,确认是快慢卡问题还是通信传输问题,针对快慢卡问题,进一步对比快慢卡时间线(Timeline)差异确认问题根因;针对通信传输效率低下的问题,按不同原因(如通信小包、通信重传、字节未对齐等)进行针对性优化。 |
算子性能问题 |
是指在训练过程中某些算子执行效率低、占用资源多,成为整体性能瓶颈的问题。利用advisor与MindStudio Insight工具自动识别高耗时或低效算子,结合调用栈与代码逻辑分析,提出算子替换、融合或优化的改进路径。 |
下发异常问题 |
指的是在模型训练过程中,由于某些卡的算子下发延迟或任务分配不均衡,导致整体训练效率下降的情况。该问题可通过从系统环境、任务分配及绑核策略等前置条件进行检查,并结合CPU运行状态与堆栈信息,定位由下发延迟引起的性能劣化。 |
集群性能问题 |
在大规模集群环境中,由于节点数目庞大且通信复杂,经常会遇到整体训练性能下降的问题。与小型集群相比,这种情况下生成的性能文件数据较大,使得问题根源的定位变得困难。通过利用msprof-analyze的cluster analyse工具,可以高效地识别出表现异常的节点,进而将大规模集群的问题简化为多个小型集群或多卡系统的问题,便于进一步的详细分析和解决。 |
MindIE推理场景 |
服务化推理性能受调度机制与模型推理能力共同影响,且因测试场景多样(如并发、序列长度、时延、吞吐等需求),需灵活调整服务化参数并关注多维度指标。本节从性能调优出发,介绍调优思路与问题定位方法:先通过纯模型测试评估推理上限,识别瓶颈所在;再基于此结果结合调优目标修改服务化调度配置;提供使用预检、msServiceProfiler等工具定位性能问题的案例;提供针对DeepSeek模型的调优建议。 |
版本升级 |
适用于快速排查,用于确认近期是否有进行过任何变更,例如集群的重新规划或版本更新等。 |