AI开发平台MODELARTS-查看诊断报告:html总览

时间:2025-01-24 14:45:10

html总览

html中包括总体性能分析(overall)、快慢卡算子性能比对(comparison)和性能问题分析(performance problem analysis)三大模块。overall模块包含对单卡或者集群的性能统计数据,comparison模块包含目标集群profiling与标杆集群profiling或目标集群内部快慢卡的算子比对数据,performance problem analysis模块包含计算(computation)、下发(schedule)、通信(communication)、内存(memory)和数据加载(dataloader)五个维度的具体分析。用户首先需要查看overall模块初步明确是否存在计算维度的慢卡和下发维度慢卡,然后再重点关注performance problem analysis中对应维度的各项分析及其优先级。

红色为高优先级,黄色为中等优先级,绿色为低优先级。参考html进行分析调优时,请按照优先级从高到低依次进行并测试调优后性能,快速解决重点问题。

图1 html报告总览-三大模块

当前advisor的performance problem analysis中包含如下分析项。

表1 性能分析能力概览

分析维度

分析项

释义

overall

overall summary

对于单卡profiling进行性能拆解,获取单步计算、下发和通信耗时。

slow rank

对于集群profiling进行性能统计,获取每张卡不同step的计算、下发和通信耗时。

slow link

对于集群profiling进行性能统计,获取每张卡不同step的带宽信息。

environment variable

识别错误配置且会影响性能的环境变量,如P LOG 日志级别,HCCL相关环境变量,依赖24年930版本的pta。

comparison

kernel compare

两张卡NPU侧计算算子对比。

api compare

两张卡CPU侧torch aten算子下发对比。

performance problem analysis

computation - AI CORE frequency

计算维度,识别降频的节点,节点降频会导致flash attention和matmul类算子计算性能变差。

computation - AICPU

计算维度,识别AICPU算子,部分AICPU算子计算性能较差。

computation - operator dynamic shape

计算维度,检测动态shape,动态shape会触发频繁的算子编译。

computation - operator bound

计算维度,算子计算性能分析,例如算子是否充分使用AICORE核数。

schedule - synchronize stream

下发维度,异常同步流分析,过多同步流会打断CPU侧任务异步下发。

schedule - garbage collection(GC)

下发维度,识别异常耗时的垃圾回收,垃圾回收会造成大段空闲。

schedule - operator dispatch

下发维度,算子下发时编译分析,大量算子编译会导致整体训练性能变差。

schedule - syncBatchNorm

下发维度,NPU上分布式训练使用syncBN性能较差。

schedule - affinity api

下发维度,自动识别可替换的亲和API(融合算子API如rms_norm,亲和优化器如NpuFusedAdamw)。

communication - small packet

通信维度,识别因batch过小或者梯度累积较少导致的未充分利用机内通信带宽。

communication - bandwidth contention

通信维度,识别计算和通信相互掩盖,可能会抢占通信带宽。

communication - retransmission

通信维度,识别通信重传问题,单次重传耗时4秒以上。

memory

内存维度,识别异常内存算子。

dataloader

数据加载维度,异常耗时的数据读取将会导致明显的训练性能劣化。

support.huaweicloud.com/bestpractice-modelarts/modelarts_advisor_0005.html