下载
中文
注册

界面介绍

功能说明

详情(Details)界面用于展示算子基础信息、计算负载分析、核间负载分析、Roofline瓶颈分析和内存负载分析,并以图形和数据窗格呈现方式展示分析结果。

界面展示

请参见导入数据章节导入msprof采集的算子Profiling的bin文件,获取bin文件请参见算子工具使用指南“算子调优(msProf) > 工具使用章节的“msprof op”内容。

支持导入的二进制bin文件只允许单个文件导入,不支持以文件夹方式导入。

详情(Details)界面包含基础信息(Base Info)(区域一)、核间负载分析(Core Occupancy)(区域二)、Roofline瓶颈分析(Roofline)(区域三)、计算工作负载分析(Compute Workload Analysis)(区域四)和内存负载分析(Memory Workload Analysis)(区域五),如图1所示。

图1 详情界面
  • 区域一:基础信息(Base Info),可查看算子基础信息,包含名称、时长、类型等内容,参数详细说明如表1所示。
    表1 基本信息参数说明

    中文参数

    英文参数

    说明

    名称

    Name

    算子名称。

    时长 (μs)

    Duration (μs)

    算子总耗时。

    算子类型

    Op Type

    算子类型。有mix、vector、cube和AiCore四种类型。

    设备号

    Device Id

    设备id。

    进程号

    Pid

    进程号。

    Block数量

    Block Dim

    Sub Block的数量。当算子类型为vector、cube和AiCore时,为此参数名称。

    混合Block数量

    Mix Block Dim

    Sub Block的数量。当算子类型为mix时,为此参数名称。

    Block详情

    Block Detail

    Sub Block耗时详情。当算子类型为vector、cube和AiCore时,为此参数名称,其中字段解释如表2所示。

    混合Block详情

    Mix Block Detail

    Sub Block耗时详情。当算子类型为mix时,为此参数名称,其中字段解释如表3所示。

    表2 Block详情字段说明

    中文字段

    英文字段

    说明

    Block ID

    Block ID

    Sub Block序号。

    当算子类型为AiCore时,无此参数。

    计算核类型

    Core Type

    Sub Block类型。

    时长 (μs)

    Duration (μs)

    Sub Block耗时。

    表3 混合Block详情字段说明

    中文字段

    英文字段

    说明

    Block ID

    Block ID

    Sub Block序号。

    Cube0 时长 (μs)

    Cube0 Duration (μs)

    AI Core的cube核耗时。

    Vector0 时长 (μs)

    Vector0 Duration (μs)

    AI Core的其中一个vector核耗时。

    Vector1 时长 (μs)

    Vector1 Duration (μs)

    AI Core的另外一个vector核耗时。

  • 区域二:核间负载分析(Core Occupancy),分别通过时钟周期数量、核总吞吐量、Cache命中率展示核间负载并进行分析,如图2所示。
    可分别选择时钟周期(Cycles)、吞吐量(Throughput)或Cache命中率(%)(Cache Hit Rate(%))显示Core的占用率,并展示分析结果,便于开发者定位分析异常点。
    图2 核间负载分析
    • Atlas A2训练系列产品导出的性能数据才支持此模块。
    • 如果相同类型计算单元之间的颜色相近,表示负载均衡度高。所有Core的Cube计算单元一起进行颜色对比,所有Core的Vector计算单元一起进行颜色对比。
  • 区域三:Roofline瓶颈分析(Roofline),通过Roofline模型图展示算子性能,并对其结果进行分析,为开发者提供性能优化依据。Roofline模型图中的x轴为算数强度,单位是Ops/Byte,表示每字节(Byte)内存支持的操作次数;y轴为性能,单位是TOps/s,表示每秒钟可进行多少万亿次操作。
    Roofline模型图上会显示算力名称,用于描述计算最大算力的指令类型组成,例如Cube_INT(100.000000%) + Vec_FP16(30.000000%),Vec_FP32(70.000000%), 代表此时cube计算单元处理的全是int类型指令,vector计算单元处理的指令30%是fp16类型,70%是fp32类型。

    Atlas A2训练系列产品 Atlas 推理系列产品 支持此模块。

    • 当硬件产品为Atlas A2训练系列产品时,Roofline性能模型分析包含内存单元、内存通路以及搬运单元页签。

      内存单元:显示HBM/L2和Memory Unit模型图,如图3所示,参数如表4所示。

      图3 内存单元
      表4 内存单元参数

      参数

      说明

      HBM Read + Write

      高带宽存储器单元的读与写。

      L2 Read + Write

      L2的读与写。

      L1 Read + Write

      L1内存单元的读与写。

      Write to L1

      写至L1内存单元。

      Read from L1

      从L1内存单元的读。

      Write to L0A

      写至L0A内存单元。

      Write to L0B

      写至L0B内存单元。

      Read from L0C

      从L0C内存单元的读。

      UB Read + Write

      UB内存单元的读与写。

      Read from UB

      从UB内存单元的读。

      Write to UB

      写至UB内存单元。

      Vector Read UB

      Vector从UB内存单元的读。

      Vector Write UB

      Vector写至UB内存单元。

      内存通路:显示内存搬运通路图,如图4所示,参数解释如表5所示。

      图4 内存通路
      表5 内存通路参数

      参数

      说明

      GM/L1 to L0A

      GM/L1至L0A的内存通路。

      GM/L1 to L0B

      GM/L1至L0B的内存通路。

      L0C to GM

      L0C至GM的内存通路。

      L1 to GM

      L1至GM的内存通路。

      L0C to L1

      L0C至L1的内存通路。

      GM to UB

      GM至UB的内存通路。

      UB to GM

      UB至GM的内存通路。

      搬运单元:显示Pipeline模型图,如图5所示,参数解释如表6所示。

      图5 搬运单元
      表6 搬运单元参数

      参数

      说明

      MTE1

      MTE1通路。

      MTE2

      MTE2通路。

      MTE3

      MTE3通路。

      FIXP

      FIXP通路。

      MTE2 vector

      Vector计算单元的MTE2通路。

      MTE3 vector

      Vector计算单元的MTE3通路。

    • 当硬件产品为 Atlas 推理系列产品 时,仅存在内存单元内容,如图6所示,参数如表7所示。
      图6 内存单元模型图
      表7 内存单元参数

      参数

      说明

      L1 Read + Write

      L1内存单元的读与写。

      Read from L0C

      从L0C内存单元的读。

      Read from L1

      从L1内存单元的读。

      Read from UB

      从UB内存单元的读。

      UB Read + Write

      UB内存单元的读与写。

      Vector Read UB

      Vector从UB内存单元的读。

      Vector Write UB

      Vector写至UB内存单元。

      Write to L0A

      写至L0A内存单元。

      Write to L0B

      写至L0B内存单元。

      Write to L1

      写至L1内存单元。

      Write to UB

      写至UB内存单元。

  • 区域四:计算工作负载分析(Compute Workload Analysis),以柱状图和数据窗格呈现方式查看相应信息,便于开发人员分析。如图7所示,参数详细说明如表8所示。图标中的内容为各个Block的计算负载分析结果。
    图7 计算工作负载分析
    表8 计算工作负载分析参数说明

    中文参数

    英文参数

    说明

    Block ID

    Block ID

    Sub Block序号。可通过切换Block ID来查看对应信息。

    当算子类型为AiCore时,此参数显示NA,展示的是多核平均值。

    Pipe Utilization

    Pipe Utilization

    Pipe(指令队列)可视化,以柱状图方式展示。

    • 横坐标:Cycles占比,计算方式为Cycles/总的Cycles。Cycles为该指令在Sub Block上执行消耗的时钟周期。
    • 纵坐标:算子指令,由bin文件的数据中提供。

    CUBE

    CUBE

    cube类型的指令名称。当算子类型为cube时,显示此参数。

    CUBE0

    CUBE0

    cube类型的指令名称。当算子类型为mix时,显示此参数。

    VECTOR

    VECTOR

    vector类型的指令名称。当算子类型为vector和cube时,显示此参数。

    VECTOR0

    VECTOR0

    vector类型的指令名称。当算子类型为mix时,显示此参数。

    VECTOR1

    VECTOR1

    vector类型的指令名称。当算子类型为mix时,显示此参数。

    AICORE

    AICORE

    AiCore类型的指令名称。当算子类型为AiCore时,显示此参数。

    指令数

    Instructions

    算子指令数量。

    时长(μs)

    Duration(μs)

    算子指令耗时。

    数据搬运量(byte)

    Data Volume(byte)

    算子指令数据量。

  • 区域五:内存负载分析(Memory Workload Analysis),以内存热力图和数据窗格呈现方式查看相应信息,如图8所示,参数配置如表9所示。热力图左侧的“Peak”为箭头颜色,值为峰值带占比(最大带宽占比)。图标中的内容为各个Block的内存负载分析结果。
    图8 内存负载分析
    表9 参数配置

    中文参数

    英文参数

    说明

    Block ID

    Block ID

    Sub Block序号。在Block ID选框中可以选择想要查看的Sub Block。

    当算子类型为AiCore时,Block ID显示NA,展示的是多核平均值。

    显示为

    Show As

    可选项,选择热力图连线箭头内容以请求数或者带宽展示。热力图箭头代表流向。

    • 请求数(Num of Request)
    • 带宽(Bandwidth)

    数据窗格呈现内容随算子类型而变化,内容是bin文件的数据解析结果,具体呈现如下:

    • 当算子类型为AiCore时,表格窗格内容如表10所示。
      表10 AiCore类型

      中文参数

      英文参数

      说明

      Cache

      Cache

      L2缓存。

      Cube

      Cube

      cube计算单元。

      HBM

      HBM

      高带宽存储器单元。

      L0A

      L0A

      L0A储存单元。

      L0B

      L0B

      L0B储存单元。

      L0C

      L0C

      L0C储存单元。

      L1

      L1

      L1储存单元。

      Pipe

      Pipe

      计算通路。

      UB

      UB

      ub储存单元。

      Vector

      Vector

      vector计算单元。

      请求数

      Requests

      操作数量。

      吞吐量(GB/s)

      Throughput(GB/s)

      吞吐量,表示通路每秒的传输数据量,单位为GB/s。

    • 当算子类型为mix时,表格窗格内容如表11所示。
      表11 mix类型

      中文参数

      英文参数

      说明

      Cache

      Cache

      L2缓存。

      命中次数

      Hit

      cache命中次数。

      未命中次数

      Miss

      cache未命中后重新分配缓存的次数。

      总次数

      Total

      cache请求总次数。

      命中率(%)

      Hit Rate(%)

      cache命中率。

      Cube

      Cube

      cube计算单元。

      HBM Cube

      HBM Cube

      cube单元的高带宽存储器单元。

      HBM Vector Core0

      HBM Vector Core0

      aicore内core0的vector单元的高带宽存储器单元。

      HBM Vector Core1

      HBM Vector Core1

      aicore内core1的vector单元的高带宽存储器单元。

      L0A

      L0A

      L0A储存单元。

      L0B

      L0B

      L0B储存单元。

      L0C

      L0C

      L0C储存单元。

      L1

      L1

      L1储存单元。

      请求数

      Requests

      操作数量。

      吞吐量(GB/s)

      Throughput(GB/s)

      吞吐量,表示通路每秒的传输数据量,单位为GB/s。

      峰值(最大带宽占比)(%)

      Peak(%)

      与理论带宽的比率。

      Pipe Cube

      Pipe Cube

      cube单元的计算通路。

      Pipe Vector Core0

      Pipe Vector Core0

      aicore内core0的vector单元的计算通路。

      Pipe Vector Core1

      Pipe Vector Core1

      aicore内core1的vector单元的计算通路。

      指令数

      Instructions

      指令数量。

      时钟周期

      Cycle

      通路消耗的时钟周期。

      等待周期

      Wait Cycles

      对应pipe上被阻塞的cycle数。

      活跃率(%)

      Active Rate(%)

      运行cycle数占总的cycle的百分比。

      UB Core0

      UB Core0

      mix算子aicore内core0的ub储存单元。

      UB Core1

      UB Core1

      mix算子aicore内core1的ub储存单元。

      Vector

      Vector core0

      vector计算单元。

    • 当算子类型为vector时,表格窗格内容如表12所示。
      表12 vector类型

      中文参数

      英文参数

      说明

      Cache

      Cache

      L2缓存。

      命中次数

      Hit

      cache命中次数。

      未命中次数

      Miss

      cache未命中后重新分配缓存的次数。

      总次数

      Total

      cache请求总次数。

      命中率(%)

      Hit Rate(%)

      cache命中率。

      HBM

      HBM

      高带宽存储器单元。

      请求数

      Requests

      操作数量。

      吞吐量(GB/s)

      Throughput(GB/s)

      吞吐量,表示通路每秒的传输数据量,单位为GB/s。

      Pipe

      Pipe

      计算通路。

      指令数

      Instructions

      指令数量。

      时钟周期

      Cycle

      通路消耗的时钟周期。

      等待周期

      Wait Cycles

      对应pipe上被阻塞的cycle数。

      活跃率(%)

      Active Rate(%)

      运行cycle数占总的cycle的百分比。

      UB

      UB

      ub储存单元。

      Vector

      Vector

      vector计算单元。

      峰值(最大带宽占比)(%)

      Peak(%)

      与理论带宽的比率。

    • 当算子类型为cube时,表格窗格内容如表13所示。
      表13 cube类型

      中文参数

      英文参数

      说明

      Cache

      Cache

      L2缓存。

      命中次数

      Hit

      cache命中次数。

      未命中次数

      Miss

      cache未命中后重新分配缓存的次数。

      总次数

      Total

      cache请求总次数。

      命中率(%)

      Hit Rate(%)

      cache命中率。

      Cube

      Cube

      cube计算单元。

      HBM

      HBM

      高带宽存储器单元。

      L0A

      L0A

      L0A储存单元。

      L0B

      L0B

      L0B储存单元。

      L0C

      L0C

      L0C储存单元。

      L1

      L1

      L1储存单元。

      请求数

      Requests

      操作数量。

      吞吐量(GB/s)

      Throughput(GB/s)

      吞吐量,表示通路每秒的传输数据量,单位为GB/s。

      峰值(最大带宽占比)(%)

      Peak(%)

      与理论带宽的比率。

      Pipe

      Pipe

      计算通路。

      指令数

      Instructions

      指令数量。

      时钟周期

      Cycle

      通路消耗的时钟周期。

      等待周期

      Wait Cycles

      对应pipe上被阻塞的cycle数。

      活跃率(%)

      Active Rate(%)

      运行cycle数占总的cycle的百分比。