界面介绍
功能说明
概览(Summary)界面提供通信域识别、划分和耗时拆解、分析功能。支持自动识别通信域,用户也可自行配置;支持按照通信域对比stage耗时、计算耗时和通信耗时,从而分析同一通信域内的切分是否均匀,是否存在通信慢卡和慢链路问题,帮助开发者快速识别问题。
界面展示
概览(Summary)界面由基本信息(Base Info)(区域一)、并行策略分析(Parallel Strategy Analysis)(区域二)和MOE大模型专家负载均衡分析(MOE Expert Load Balancing Analysis)(区域三)组成,如图1所示。
- 区域一:集群(Cluster )选框和基本信息(Base Info),当导入集群数据时,下拉框支持选择某一集群;数据的基本信息,包括设备和迭代数量、性能数据文件大小、数据采集时长等信息。
“Profiling数据采集时长”在TEXT场景和DB场景下可能存在差异,TEXT场景下,Profiling数据采集时长是以采集到数据的时间为起始,数据结束为终止的时间周期,DB场景下,Profiling数据采集时长是以数据采集开始时间为起始,数据采集结束时间为终止的时间周期,二者的微小差异对于Profiling数据分析无影响。
- 区域二:并行策略分析(Parallel Strategy Analysis),包括并行策略概览、计算/通信概览、计算详情(Rank ID)、通信详情(Rank ID)以及流水并行图。
- 并行策略概览包括并行策略设置和并行策略图展示,如图2所示,并行策略参数解释如表1所示。当设置好并行策略后,可分别选择“DP”、“DP + PP”、“DP + PP + CP”、“DP + PP + TP”或“DP + PP + CP + TP”并行维度展示并行策略图,选择图中目标编号,可悬浮显示该目标编号的详情信息,进行查看;也可单击鼠标右键弹出菜单,单击“复制属性”,复制当前目标编号的详情信息,粘贴至本地进行查看分析。专家建议内容在“DP”下不展示,其余维度下均展示。当通信时间能正确按照通信域拆解时,才会显示专家建议内容。
表1 并行策略参数说明 中文字段
英文字段
说明
算法
Algorithm
- Megatron-LM(tp-cp-ep-dp-pp):此排布方式来自于Megatron-Core,排布的顺序是TP > CP > DP > PP,EP横跨DP之上且不参与或不影响排布编号(即要求DP能够被EP整除),PP位于DP之后,多为跨节点通信,对通信带宽要求低。
- Megatron-LM(tp-cp-pp-ep-dp):此排布方式也来自于Megatron-Core,排布的顺序是TP > CP > PP > DP,比较少见,用于PP对带宽要求相对比较高的场景。
- MindSpeed(tp-cp-ep-dp-pp):此排布方式来自于MindSpeed-Core,排布的顺序是TP > CP > DP > PP,EP横跨CP + DP之上且不参与或不影响排布编号(即要求CP x DP能够被EP整除)。
- MindIE-LLM(tp-dp-ep-pp-moetp):此排布方式来自于MindIE-LLM(DeepSeek V3也使用类似排布),非MOE层采用TP > DP > PP顺序排布,MOE层采用MOE_TP > EP > PP顺序排布,当MOE_TP=1时,形成横跨PP相同Stage的大EP。
- vLLM(tp-pp-dp-ep):此排布方式来自于vLLM,排布顺序是TP > PP > DP,EP横跨TP+DP之上且不参与或不影响排布序号(即要求TP×DP能被EP整除),形成大EP(即要求EP能被TP整除),当选择vLLM(tp-pp-dp-ep)算法时,PP大小 x TP大小 x DP大小 ≥ 导入的卡数量。
PP大小
PP Size
流水线并行大小。可自行配置,取值范围:1~10000。
流水线并行(Pipeline Parallel)通过将模型的不同层次分布在不同的卡上执行,在一个卡执行当前批次数据时,另一个卡可以处理下一个批次的数据。
TP大小
TP Size
张量并行大小。可自行配置,取值范围:1~10000。
张量并行(Tensor Parallel)是一种将模型参数划分成多个部分,并分布到不同卡上进行计算。
CP大小
CP Size
上下文并行大小。可自行配置,取值范围:1~10000。
上下文并行(Context Parallel)将训练样本按序列长度和维度划分为不同批次,分配到不同卡上进行计算。CP分割网络输入和所有激活值,是改进版的序列并行(Sequence Parallelism,SP)。
DP大小
DP Size
数据并行大小。可自行配置,取值范围:1~10000。
数据并行(Data Parallel)将训练集分成不同多个批次,分配到不同卡上进行计算。
EP大小
EP Size
专家并行大小。可自行配置,取值范围:1~10000。
专家并行(Expert Parallel)是一种专门为MoE模型(Mixture of Experts)设计的并行方法。它将专家分配到不同的计算设备上,每个设备负责处理一部分训练样本,并且每个设备上可以包含一个或多个专家。
- 当选择Megatron-LM算法时,EP大小应小于等于DP大小,且DP可被EP整除。
- 当选择MindSpeed算法时,DP X CP应能被EP整除。
MOE-TP大小
MOE-TP Size
仅当算法选择“MindIE-LLM(tp-dp-ep-pp-moetp)”时,才存在此参数。
推理并行策略中,MOE层的张量并行大小,区别于非MOE层的TP。可自行配置,取值范围:1~10000。且需满足以下取值规则:
- PP大小 x TP大小 x DP大小 = 导入的卡数量
- TP大小 x DP大小 = MOE-TP大小 x EP大小
性能指标
Performance Metric
可按照性能指标展示并行策略图,可选的性能指标参数根据选择的域维度而变化。
- 当选择“无”时,表示不展示性能指标,即并行策略图上的卡片信息为默认状态。
- 当选择其余参数时,会在选框后显示该参数的“筛选范围 (μs)”和色条,筛选范围值为该参数值的最小值和最大值,且并行策略图上的卡片会按照对应值被渲染填色,可直观的查看各卡性能情况。
目标编号
Target Index
在所选维度下,输入目标编号,可准确定位到所需的序号上。
专家建议
Advice
通过MindStudio Insight工具的内置专家分析功能,对数据进行分析,并给出相应建议,列出应关注的Top3分组以及慢卡信息,帮助开发者识别性能问题。
为确保通信时间能正确按照通信域拆解(即性能指标中的TP-通信时间、PP-通信时间、MP-通信时间、DP-通信时间、CP-通信时间等),需保证并行策略参数值与模型实际训练/推理时的并行参数配置一致。具体的并行参数,可与模型开发人员确认。
- 计算/通信概览(Computation/Communication Overview),计算及通信概览,柱状图展示计算或通信算子的迭代耗时数据,折线图展示计算或通信算子的耗时占比数据,专家建议(Advice)是对计算通信域内各卡的计算时间、通信时间(未被覆盖)和空闲时间进行数据分析后给出的建议,帮助开发者快速分析,如图3所示,参数解释请参见表2所示。当选择“DP + PP + CP + TP”和“DP + PP + TP”并行维度时,计算/通信概览中存在折线图和专家建议。
表2 计算/通信概览参数说明 中文字段
英文字段
说明
迭代ID
Step
迭代ID,下拉框支持选择某一个迭代或者所有迭代。
通信域
Rank Group
节点ID,下拉框支持选择一个、多个或者所有节点。
排序方式
Order By
根据不同维度选择排序方式。
- DP + PP + CP + TP维度和DP + PP + TP维度
- 卡序号(Rank ID):卡序号。
- 计算时间(未被覆盖)(Computing(Not Overlapped)):计算时间(未被覆盖) = 计算时间 – 计算通信间覆盖时间。
- 计算通信间覆盖时间(Computing_Communication Overlapped):被计算覆盖的通信时长。
- 通信时间(未被覆盖)(Communication(Not Overlapped)):通信时间(未被覆盖) = 通信时间 – 计算通信间覆盖时间。
- 空闲时间(Free):Device侧既不在通信也不在计算的时间。此处的Free不计入预处理时间。
- 预处理时间(Preparing):迭代开始到首个计算或通信算子运行的时间,在做数据加载拷贝等操作。在时间线(Timeline)的Overlap Analysis泳道中,也被视为Free。
- 计算占比(Computing Ratio):计算时间占总时间的占比,总时间 = 计算时间(未被覆盖) + 计算通信间覆盖时间 + 通信时间(未被覆盖) + 空闲时间 + 预处理时间。
- 通信占比(Communication Ratio):通信时间占总时间的占比。
- DP + PP + CP维度:排序方式分别为卡序号、最大计算时间、最大通信时间、最大空闲时间、最大总时间(计算、通信(未被覆盖)、空闲时间的总和)。各参数的“最大”是指每个TP通信域内取最大值。
- DP + PP维度:排序方式分别为卡序号、最大计算时间、最大通信时间、最大空闲时间、最大总时间(计算、通信(未被覆盖)、空闲时间的总和)、最大通信时间(未被覆盖)。各参数的“最大”是指对每个DP + PP + CP维度通信域内取最大值。
- DP维度:排序方式分别为卡序号、最大计算时间总和、最大通信时间的总和、最大空闲时间的总和。即对DP + PP维度的最大时计算时间、最大通信时间、最大空闲时间分别求和。
前
Top
可通过配置Top参数值选择展示“排序方式”的TopN条数据。
Time(μs)
Time(μs)
左侧纵坐标表示时长,单位μs。计算方式如下:
总时间 = 计算时间(未被覆盖) + 计算通信间覆盖时间 + 通信时间(未被覆盖)+ 空闲时间 + 预处理时间,其中Preparing为数据预处理时间。
Ratio
Ratio
右侧纵坐标表示耗时占比,包括以下占比信息:
- 总计算比例(Computing Ratio):总计算耗时占比 = 总计算时间 / 总时间。
- 通信比例(Communication Ratio):通信耗时占比 = 未被覆盖的通信时长 / 总时间。
专家建议
Advice
慢卡分析定位与建议,对各并行维度下的通信时间进行解析分析,帮助开发者逐步定位慢卡。
- DP + PP + CP + TP维度和DP + PP + TP维度
- 计算详情(Rank ID)(Computing Detail(Rank ID)),当选择“DP + PP + CP + TP”和“DP + PP + TP”并行维度时,单击计算/通信概览区域中某个节点的柱状图时,将展示该节点加速核的总耗时和利用率,单击对应的“详情”后展示计算算子的详细信息,如图4所示,字段解释如表3所示。还可单击表格右上角
按钮,一键复制表中当前所展示的内容,并粘贴至Excel表格中进行分析。
表3 计算详情字段说明 中文字段
英文字段
说明
加速器核
Accelerator Core
AI加速核类型,包括AI Core、AI CPU等。
加速器核时长(μs)
Accelerator Core Durations(μs)
加速核的总耗时。
名称
Name
算子名称。
类型
Type
算子类型。
开始时间(ms)
Start Time(ms)
算子执行开始时间。
时长(μs)
Duration(μs)
当前算子执行耗时。
等待时间(μs)
Wait Time(μs)
算子执行等待时间。
Block数量
Block Dim
运行切分数量,对应任务执行时的核数。
输入Shapes
Input Shapes
算子输入Shape。
输入数据类型
Input Data Types
算子输入数据类型。
输入格式
Input Formats
算子输入数据格式。
输出Shapes
Output Shapes
算子输出Shape。
输出数据类型
Output Data Types
算子输出数据类型。
输出格式
Output Formats
算子输出数据格式。
- 通信详情(Rank ID)(Communication Detail(Rank ID)),当选择“DP + PP + CP + TP”和“DP + PP + TP”并行维度时,单击计算/通信概览区域中某个节点的柱状图时,将展示该节点通信算子的总耗时(包含未被覆盖的通信时长和被覆盖的通信时长),单击对应的“详情”后展示通信算子的详细信息,如图5所示,字段解释如表4所示。还可单击表格右上角
按钮,一键复制表中当前所展示的内容,并粘贴至Excel表格中进行分析。
表4 通信详情字段说明 中文字段
英文字段
说明
加速器核
Accelerator Core
AI加速核类型,包括AI Core、AI CPU等。
通信时长(未被覆盖)(μs)
Communication(Not Overlapped) Durations(μs)
未被覆盖的通信时长,即纯通信时长。
通信时长(被覆盖)(μs)
Communication(Overlapped) Durations(μs)
被覆盖的通信时长。
名称
Name
通信算子名称。
类型
Type
通信算子类型。
开始时间(ms)
Start Time(ms)
通信算子执行开始时间。
时长(μs)
Duration(μs)
当前通信算子执行耗时。
等待时间(μs)
Wait Time(μs)
通信算子执行等待时间。
- 当选择“DP + PP + CP + TP”和“DP + PP + TP”并行维度时,单击并行策略图中单卡图标,出现连线,单击流水线并行连线,会展示流水并行图,如图6所示。
- 并行策略概览包括并行策略设置和并行策略图展示,如图2所示,并行策略参数解释如表1所示。当设置好并行策略后,可分别选择“DP”、“DP + PP”、“DP + PP + CP”、“DP + PP + TP”或“DP + PP + CP + TP”并行维度展示并行策略图,选择图中目标编号,可悬浮显示该目标编号的详情信息,进行查看;也可单击鼠标右键弹出菜单,单击“复制属性”,复制当前目标编号的详情信息,粘贴至本地进行查看分析。
- 区域三:MoE大模型专家负载均衡分析,展示专家分布热点图和专家负载均衡热力图。
参数配置栏的“数据类型”可选择“Profiling”或“Dump”,两种数据类型是针对MoE模型不同维度的统计信息。
当选择“Profiling”,展示专家分布热点图,其是基于Profiling的热点图,统计的每一个MoE层中GroupedMatmul算子的耗时情况,GroupedMatmul算子是MoE模型计算的核心,其效率会决定专家的响应速度。