深入排查思路
在讨论了集群的基本概念后,接下来将介绍如何进行集群性能分析,以及通常用于解决集群问题的排查思路。
首先,我们需要对集群问题进行定位,确定集群性能问题的分类。一般而言,集群问题可以分为两大类,一类是性能出现劣化,一类是性能抖动。
- 对于性能劣化,可以分为几种情况:
- 从较小规模集群训练扩大到较大集群后,出现性能劣化;
- 同样规模集群,因为更换机器硬件等其他要素,导致性能劣化;
- 在长稳训练中,性能出现劣化(逐渐或突然)。
在这几种性能问题中,第一要素是比较性能劣化前后的数据,明确性能劣化的核心原因,如通信、计算或调度等。然后在明确性能劣化的原因后,再继续排查。对于通信,首先确认是否存在慢卡或者丢包。此外,如果是由小到大的集群规模触发的问题,大概率是模型切分策略有问题。对于调度,优先关注存储问题或者慢节点。
- 对于性能抖动,第一要素是采集到抖动步,将抖动步和正常步进行比较,明确造成抖动的核心要素模块,依据要素模块进行深入排查,具体排查思路参考性能劣化的思路。
父主题: 集群性能优化分析方法