昇腾社区首页
中文
注册

性能数据展示

支持界面预览

  • 在线程级泳道中,如果一个泳道中存在多行数据,则在不展开该泳道的情况下,将会以缩略图的形式展示该泳道中数据的分布情况,如图1中的1所示。
  • 在不展开进程级泳道的情况下,根据线程级中时间轴上的数据,将以灰色填充进程级泳道来展示线程级泳道中的数据分布情况,如图1中的2所示。
    图1 时间线(Timeline)界面预览

    CPU、Memory、Network相关利用率数据,也就是数值类型事件,在时间线(Timeline)中以柱状图形式呈现,暂不支持预览功能,如图1中的3所示。

支持集群场景展示

MindStudio Insight支持导入和展示集群场景数据,无需手动合并多个单卡数据。支持训练场景下的多机多卡和推理场景下多卡等场景,MindStudio Insight能够自动识别导入文件夹下所有的trace_view.json和msprof*.json文件。以16卡为例进行展示,如图2所示。

图2 集群场景时间线数据展示

在集群场景中,为方便快速定位某卡的数据所对应的文件目录,可以将鼠标悬停在卡的序号上,则会显示该卡数据所对应的文件目录。例如将鼠标悬停在“0”上,则会在后方显示该卡所对应的文件目录,如图3所示。

图3 定位文件夹

支持分卡/泳道显示和对比

当导入集群场景数据时,展示的时间线(Timeline)信息较多,为更好地帮助用户对比分析,MindStudio Insight支持按卡和按泳道进行过滤展示。
  • 按卡显示:以只显示1卡为例,单击界面左上方,选择“卡过滤”,然后单击后方输入框,在下拉框选择“1”,即可显示1卡的时间线(Timeline)信息,如图4所示。
    图4 卡过滤
  • 按泳道显示:以只显示每张卡的Overlap Analysis泳道为例,单击界面左上方工具栏,选择“泳道过滤”,然后单击后方输入框,在下拉框选择“Overlap Analysis”,即可显示Overlap Analysis泳道的时间线(Timeline)信息,如图5所示。
    图5 泳道过滤

支持泳道置顶和对比

  • MindStudio Insight支持固定并置顶泳道,且可以通过鼠标拖拽对收起状态的置顶泳道进行自由排序,方便同其他同类层级进行对比。

    如果置顶的卡中同时也置顶了该卡中的二层级和三层级泳道,那么只能对卡层级泳道进行拖拽排序,不能对二层级和三层级泳道进行拖拽排序;同样的,如果置顶的二层级泳道中同时也置顶了三层级泳道,那么只能对二层级泳道进行拖拽排序。

    例:单击0、1、2卡中的某三层级名后方的,则可置顶,再次单击即可取消置顶,如图6所示。

    图6 置顶对比
  • MindStudio Insight还支持一键置顶同一通信域的通信泳道。
    在Communication泳道下的Group子泳道上单击鼠标右键,选择“置顶(按相同组 组名称)”,将置顶该通信域(组)下的所有泳道,便于查看对比,如图7所示。
    图7 置顶通信泳道

    在已置顶的泳道上单击鼠标右键,可选择“取消置顶(按相同组 组名称)”或者“取消置顶(全部)”,取消泳道置顶,如图8所示。

    “取消置顶(按相同组 组名称)”即取消该通信域(组)下的所有泳道,“取消置顶(全部)”即取消所有置顶泳道。

    图8 取消置顶

支持单卡和泳道时间对齐

单卡场景、集群场景和多模型场景均已实现时间线(Timeline)相对位置自动对齐,如果无需自动对齐的话,请在任意位置单击鼠标右键,弹出菜单,选择“恢复所有卡的默认偏移量”,可恢复所有卡和模型的默认偏移量,参见如下操作手动设置相对位置对齐。

  • 手动设置对齐到起始位置

    在偏移量的弹窗中单击(对齐到起始位置)按钮,会在“时间戳偏移(ns)”输入框中显示该卡中最左侧的线程数据与时间轴初始位置(00:00.000)的偏移量,然后按回车键,时间线(Timeline)界面将会把该线程数据与时间轴初始位置对齐。

    图9所示,0卡中最左侧线程数据与时间轴初始位置的偏移量为7293500ns。

    图9 初始位置偏移量
  • 手动设置偏移量

    对于多机多卡场景,由于机器上时间不准,可能造成多卡间时间线(Timeline)相对位置不准确,MindStudio Insight支持单卡维度的时间校准,如图10所示,通过设置偏移量,可以将单卡的时间线(Timeline)左右移动,从而达到时间“校准”的目的。偏移量的单位为ns,负值为右移,正值为左移。

    图10 单卡时间调整

    同时,为了更灵活的校准时间,MindStudio Insight还支持以泳道维度进行时间校准,如图11所示。在时间线(Timeline)界面,展开卡,单击所需二级泳道名称后面的“偏移量”,在输入框输入值,单击回车键,进行泳道时间调整。DB场景下,需要首先展开机器名称,分别在host和各卡下的二级泳道上执行时间调整操作。

    图11 泳道时间调整

支持多机多卡展示

当导入多机多卡数据时,MindStudio Insight支持以机器维度展示数据,如图12所示。

图中1为机器名称,是由hostName和hostUid组成。

图中2为泳道层级展示,为Host和“Card”

图中3为参数配置项,在多机多卡场景下,需先选择“机器名称”,再选择该机器下的“卡序号”进行配置。当导入的DB场景文件中存在名称为“HOST_INFO”的表时,在时间线(Timeline)界面下的“系统视图”页签(选择“统计系统视图”“专家系统视图”时)和“发现”页签下,存在该配置项。

该功能仅支持在全量DB场景下展示。

图12 多机多卡展示

设置和查看标记

  • 区域标记
    在时间线(Timeline)界面选中某个区域后,单击将选中区域进行标记并保存,如图13所示。
    图13 区域标记

    左键双击任一标记,可以设置该标记对的属性,支持修改标记对名称、颜色以及删除该标记对,如图14所示。

    图14 修改标记对属性
  • 单点标记
    左键单击最上方空泳道的任意位置,将生成一个单点标记,如图15所示。
    图15 单点标记

    左键双击标记,可以设置该标记的属性,支持修改标记的名称、颜色以及删除该标记。

  • 标记管理
    单击左上方工具栏中的,将显示所有标记信息,如图16所示。
    图16 查看标记信息
    • 单击某个标记对应的图标可删除标记。
    • 单击弹窗下方的“清空全部”可删除所有标记。
    • 单击区域标记,界面下方的“选中详情”页签会显示该区域的耗时信息详情。
    • 如果某一标记不在当前可视化界面,单击该标记对应的图标将直接跳转至标记界面,便于查看。
    • 单击某个标记对应的颜色图标可进行颜色设置,便于对标记进行分类管理。

算子连线功能

  • MindStudio Insight支持算子连线关系展示,单击有连线的算子,即可显示该算子关联的连线,即使折叠连线起点或者终点的进程,连线也不会消失,如图17所示。
    图17 算子连线关系

    如果同时折叠连线起点和终点的进程,连线就会消失。

  • MindStudio Insight支持全量连线的功能,单击界面左上方工具栏中的,在弹框中选择某一(几)个连线类型,也可在搜索框中搜索某一连线类型的关键字,勾选相应的连线类型,则在图形化窗格展示对应类型的所有连线,如图18所示。
    图18 全量连线

    应用层算子到NPU算子之间通过连线方式展示下发到执行的对应关系如下所示:

    • HostToDevice
      • CANN层Node(算子)到Ascend Hardware的NPU算子的下发执行关系(Host到Device)。
      • CANN层Node(算子)到Communication通信算子的下发执行关系(Host到Device)。
    • async_npu
      • 应用层算子到Ascend Hardware的NPU算子的下发执行关系。
      • 应用层算子到Communication通信算子的下发执行关系。
    • async_task_queue:应用层Enqueue到Dequeue的入队列到出队列对应关系,仅PyTorch场景。
    • fwdbwd:前向API到反向API,仅PyTorch场景。
    • MsTx:打点数据到Ascend Hardware的NPU算子的下发执行关系。
    • 各层的对应关系是否呈现与对应采集场景是否采集该数据有关,请以实际情况为准。
    • 各层之间的连线与各层是否展开呈联动关系,如果选择了某个连线类型,对应层没有展开,则不会显示该类型的连线。

支持选择性解析多卡数据

MindStudio Insight工具导入超过16卡的数据时,在时间线(Timeline)界面支持选择性解析数据,可一键全部解析或部分解析。

  • 一键全部解析:在时间线(Timeline)界面,单击“开始全局解析”,将开始解析所有卡的数据,如图19所示。当所有卡的数据解析完成后,“开始全局解析”按钮消失。
    图19 全局解析
  • 部分解析:当只需要解析部分卡的数据时,可逐个单击对应卡序号后面的,解析所选卡的数据,如图20所示。当对应卡数据解析完成后,按钮消失,如图中0卡和1卡所示。
    图20 单卡解析

    如果导入的卡数量较多,可通过卡过滤功能定位所需解析数据的卡,进行数据解析操作。在时间线(Timeline)界面的工具栏中,单击,选择“卡过滤”,然后单击后方输入框,在下拉框选择所需呈现的卡,即可在时间线(Timeline)界面展示对应信息,单击卡序号后面的,进行数据解析,如图21所示,解析2、5、7卡数据。

    图21 过滤展示并解析

    在部分解析场景下,单击“开始全局解析”按钮,此时会解析所有卡的数据。

  • 相同通信域的卡解析:当解析完一个卡后,在通信的Group子泳道上,单击鼠标右键,选择“解析相关通信域的卡”,和该泳道通信域相关的卡都被解析,如图22,解析完成后,该鼠标右键菜单变为“已解析全部相关通信域的卡”并置灰。
    图22 解析相关通信域的卡

支持对齐自定义算子时间

MindStudio Insight工具支持使用快捷键将选中算子进行时间对齐操作,便于比较算子信息。

  • 算子时间对齐
    1. 在时间线(Timeline)界面,选中任意一个算子,单击鼠标右键,选择“设置基准算子”,将选中算子设置为基准算子,如图23所示。
      图23 设置基准算子
    2. 选中与基准算子不同的二级泳道中的算子。
    3. 使用键盘快捷键L(左对齐),将选中的算子与基准算子左边界对齐,如图24所示。
      图24 算子左边界对齐

      使用键盘快捷键R(右对齐),则选中的算子与基准算子会右边界对齐,如图25所示。

      图25 算子右边界对齐

      无论左对齐还是右对齐,与选中算子为相同device的NPU泳道中的算子也会随之一起偏移。

  • 取消基准算子

    在泳道任意位置,单击鼠标右键,选择“消除基准算子”,则取消基准算子,如图26所示。

    图26 取消基准算子
  • 恢复默认偏移量

    如果已经执行了算子时间对齐操作,可在泳道任意位置,单击鼠标右键,选择“恢复所有卡的默认偏移量”,恢复默认的偏移量,如图27所示。

    图27 恢复所有卡的默认偏移量