msprof导出db格式数据说明

msprof命令执行时配置--type=db,将仅生成一个汇总所有性能数据的msprof_{时间戳}.db表结构文件,该文件推荐使用MindStudio Insight工具查看,也可以使用Navicat Premium等数据库开发工具直接打开。当前db文件汇总的性能数据如下:

db文件均以表格形式展示性能数据,且所有数据均以数字映射(例如opName字段下的算子名显示为194),数字与名称的映射表为STRING_IDS

单位相关

  1. 时间相关,统一使用纳秒(ns),且为本地unix时间。
  2. 内存相关,统一使用字节(Byte)
  3. 带宽相关,统一使用Byte/s
  4. 频率相关,统一使用MHz

ENUM_API_TYPE

表1 格式

字段名

类型

含义

id

INTEGER

索引,id

name

TEXT

api类型

表2 内容

id

name

20000

acl

15000

model

10000

node

5500

communication

5000

runtime

50001

op

50002

queue

50003

trace

50004

mstx

ENUM_MODULE

表3 格式

字段名

类型

含义

id

INTEGER

索引,id

name

TEXT

组件名

表4 内容

id

name

0

SLOG

1

IDEDD

2

IDEDH

3

HCCL

4

FMK

5

HIAIENGINE

6

DVPP

7

RUNTIME

8

CCE

9

HDC

10

DRV

11

MDCFUSION

12

MDCLOCATION

13

MDCPERCEPTION

14

MDCFSM

15

MDCCOMMON

16

MDCMONITOR

17

MDCBSWP

18

MDCDEFAULT

19

MDCSC

20

MDCPNC

21

MLL

22

DEVMM

23

KERNEL

24

LIBMEDIA

25

CCECPU

26

ASCENDDK

27

ROS

28

HCCP

29

ROCE

30

TEFUSION

31

PROFILING

32

DP

33

APP

34

TS

35

TSDUMP

36

AICPU

37

LP

38

TDT

39

FE

40

MD

41

MB

42

ME

43

IMU

44

IMP

45

GE

46

MDCFUSA

47

CAMERA

48

ASCENDCL

49

TEEOS

50

ISP

51

SIS

52

HSM

53

DSS

54

PROCMGR

55

BBOX

56

AIVECTOR

57

TBE

58

FV

59

MDCMAP

60

TUNE

61

HSS

62

FFTS

63

OP

64

UDF

65

HICAID

66

TSYNC

67

AUDIO

68

TPRT

69

ASCENDCKERNEL

70

ASYS

71

ATRACE

72

RTC

73

SYSMONITOR

74

AMP

75

ADETECT

76

MBUFF

77

CUSTOM

ENUM_HCCL_DATA_TYPE

表5 格式

字段名

类型

含义

id

INTEGER

索引,id

name

TEXT

通信数据类型

表6 内容

id

name

0

INT8

1

INT16

2

INT32

3

FP16

4

FP32

5

INT64

6

UINT64

7

UINT8

8

UINT16

9

UINT32

10

FP64

11

BFP16

12

INT128

255

RESERVED

65534

N/A

65535

INVALID_TYPE

ENUM_HCCL_LINK_TYPE

表7 格式

字段名

类型

含义

id

INTEGER

索引,id

name

TEXT

通信链路类型

表8 内容

id

name

0

ON_CHIP

1

HCCS

2

PCIE

3

ROCE

4

SIO

5

HCCS_SW

6

STANDARD_ROCE

255

RESERVED

65534

N/A

65535

INVALID_TYPE

ENUM_HCCL_TRANSPORT_TYPE

表9 格式

字段名

类型

含义

id

INTEGER

索引,id

name

TEXT

通信传输类型

表10 内容

id

name

0

SDMA

1

RDMA

2

LOCAL

255

RESERVED

65534

N/A

65535

INVALID_TYPE

ENUM_HCCL_RDMA_TYPE

表11 格式

字段名

类型

含义

id

INTEGER

索引,id

name

TEXT

通信rdma类型

表12 内容

id

name

0

RDMA_SEND_NOTIFY

1

RDMA_SEND_PAYLOAD

255

RESERVED

65534

N/A

65535

INVALID_TYPE

ENUM_MSTX_EVENT_TYPE

表13 格式

字段名

类型

含义

id

INTEGER

索引,host侧tx打点数据event类型对应的id

name

INTEGER

host侧tx打点数据event类型

表14 内容

id

name

0

marker

1

push/pop

2

start/end

3

marker_ex

ENUM_MEMCPY_OPERATION

表15 格式

字段名

类型

含义

id

INTEGER

主键,id

name

TEXT

拷贝类型

表16 内容

id

name

0

host to host

1

host to device

2

device to host

3

device to device

4

managed memory

5

addr device to device

6

host to device ex

7

device to host ex

65535

other

STRING_IDS

表17 格式

字段名

类型

含义

id

INTEGER

索引,string id

value

TEXT

string value

SESSION_TIME_INFO

表18 格式

字段名

类型

含义

startTimeNs

INTEGER

任务开启时的unix时间,单位ns

endTimeNs

INTEGER

任务结束时的unix时间,单位ns

NPU_INFO

表19 格式

字段名

类型

含义

id

INTEGER

设备Id

name

TEXT

Device对应的芯片型号

HOST_INFO

表20 格式

字段名

类型

含义

hostUid

TEXT

标识host的唯一id

hostName

TEXT

host主机名称,如localhost

TASK

表21 格式

字段名

类型

含义

startNs

INTEGER

与globalTaskId联合索引,索引名称TaskIndex,算子任务开始时间,单位ns

endNs

INTEGER

算子任务结束时间,单位ns

deviceId

INTEGER

算子任务对应的设备Id

connectionId

INTEGER

生成host-device连线

globalTaskId

INTEGER

与tartNs联合索引,索引名称TaskIndex,用于唯一标识全局算子任务

globalPid

INTEGER

算子任务执行时的pid

taskType

INTEGER

Device执行该算子的加速器类型

contextId

INTEGER

用于区分子图小算子,常见于MIX算子和FFTS+任务

streamId

INTEGER

算子任务对应的streamId

taskId

INTEGER

算子任务对应的taskId

modelId

INTEGER

算子任务对应的modelId

COMPUTE_TASK_INFO

表22 格式

字段名

类型

含义

name

INTEGER

算子名,STRING_IDS(name)

globalTaskId

INTEGER

索引,全局算子任务id,用于关联TASK表

blockDim

INTEGER

算子运行切分数量,对应算子运行时核数

mixBlockDim

INTEGER

mix算子从加速器的block_dim值

taskType

INTEGER

host执行该算子的加速器类型,STRING_IDS(taskType)

opType

INTEGER

算子类型,STRING_IDS(opType)

inputFormats

INTEGER

算子输入数据格式,STRING_IDS(inputFormats)

inputDataTypes

INTEGER

算子输入数据类型,STRING_IDS(inputDataTypes)

inputShapes

INTEGER

算子的输入维度,STRING_IDS(inputShapes)

outputFormats

INTEGER

算子输出数据格式,STRING_IDS(outputFormats)

outputDataTypes

INTEGER

算子输出数据类型,STRING_IDS(outputDataTypes)

outputShapes

INTEGER

算子输出维度,STRING_IDS(outputShapes)

attrInfo

INTEGER

算子的attr信息,用来映射算子shape,算子自定义的参数等,STRING_IDS(attrInfo)

COMMUNICATION_TASK_INFO

表23 格式

字段名

类型

含义

name

INTEGER

算子名,STRING_IDS(name)

globalTaskId

INTEGER

索引,索引名称CommunicationTaskIndex,全局算子任务id,用于关联TASK表

taskType

INTEGER

算子类型,STRING_IDS(taskType)

planeId

INTEGER

网络平面ID

groupName

INTEGER

通信域,STRING_IDS(groupName)

notifyId

INTEGER

notify唯一ID

rdmaType

INTEGER

rdma类型,包含:RDMASendNotify、RDMASendPayload,ENUM_HCCL_RDMA_TYPE(rdmaType)

srcRank

INTEGER

源Rank

dstRank

INTEGER

目的Rank

transportType

INTEGER

传输类型,包含:LOCAL、SDMA、RDMA,ENUM_HCCL_TRANSPORT_TYPE(transportType)

size

INTEGER

数据量,单位Byte

dataType

INTEGER

数据格式,ENUM_HCCL_DATA_TYPE(dataType)

linkType

INTEGER

链路类型,包含:HCCS、PCIe、RoCE,ENUM_HCCL_LINK_TYPE(linkType)

opId

INTEGER

对应的大算子Id,用于关联COMMUNICATION_OP表

isMaster

INTEGER

标记主从流通信算子,分析时以主流算子为准,取值为:

  • 0:从流
  • 1:主流

COMMUNICATION_OP

表24 格式

字段名

类型

含义

opName

INTEGER

算子名,STRING_IDS(opName),例:hcom_allReduce__428_0_1

startNs

INTEGER

通信大算子的开始时间,单位ns

endNs

INTEGER

通信大算子的结束时间,单位ns

connectionId

INTEGER

生成host-device连线

groupName

INTEGER

通信域,STRING_IDS(groupName),例:10.170.22.98%enp67s0f5_60000_0_1708156014257149

opId

INTEGER

索引,通信大算子Id,用于关联COMMUNICATION_TASK_INFO表

relay

INTEGER

借轨通信标识

retry

INTEGER

重传标识

dataType

INTEGER

大算子传输的数据类型,如(INT8,FP32),ENUM_HCCL_DATA_TYPE(dataType)

algType

INTEGER

通信算子使用的算法,可分为多个阶段,STRING_IDS(algType),如(HD-MESH)

count

NUMERIC

算子传输的dataType类型的数据量

opType

INTEGER

算子类型,STRING_IDS(opType),例:hcom_broadcast_

CANN_API

表25 格式

字段名

类型

含义

startNs

INTEGER

api的开始时间,单位ns

endNs

INTEGER

api的结束时间,单位ns

type

INTEGER

api类型,ENUM_API_TYPE(type)

globalTid

INTEGER

api所属的全局tid。高32位:pid,低32位:tid

connectionId

INTEGER

索引,用于关联TASK表和COMMUNICATION_OP表

name

INTEGER

api的名称,STRING_IDS(name)

AICORE_FREQ

表26 格式

字段名

类型

含义

deviceld

INTEGER

设备Id

timestampNs

NUMERIC

频率变化时的本地时间,单位ns

freq

INTEGER

aicore频率值,单位MHz

ACC_PMU

表27 格式

字段名

类型

含义

accId

INTEGER

加速器id

readBwLevel

INTEGER

DVPP和DSA加速器读带宽的等级

writeBwLevel

INTEGER

DVPP和DSA加速器写带宽的等级

readOstLevel

INTEGER

DVPP和DSA加速器读并发的等级

writeOstLevel

INTEGER

DVPP和DSA加速器写并发的等级

timestampNs

NUMERIC

本地时间,单位ns

deviceId

INTEGER

设备Id

SOC_BANDWIDTH_LEVEL

表28 格式

字段名

类型

含义

l2BufferBwLevel

INTEGER

L2 Buffer带宽等级

mataBwLevel

INTEGER

Mata带宽等级

timestampNs

NUMERIC

本地时间,单位ns

deviceId

INTEGER

设备Id

NIC

表29 格式

字段名

类型

含义

deviceId

INTEGER

设备Id

timestampNs

INTEGER

本地时间,单位ns

bandwidth

INTEGER

带宽,单位Byte/s

rxPacketRate

NUMERIC

收包速率,单位packet/s

rxByteRate

NUMERIC

接收字节速率,单位Byte/s

rxPackets

INTEGER

累计收包数量,单位packet

rxBytes

INTEGER

累计接收字节数量,单位Byte

rxErrors

INTEGER

累计接收错误包数量,单位packet

rxDropped

INTEGER

累计接收丢包数量,单位packet

txPacketRate

NUMERIC

发包速率,单位packet/s

txByteRate

NUMERIC

发送字节速率,单位Byte/s

txPackets

INTEGER

累计发包数量,单位packet

txBytes

INTEGER

累计发送字节数量,单位Byte

txErrors

INTEGER

累计发送错误包数量,单位packet

txDropped

INTEGER

累计发送丢包数量,单位packet

funcId

INTEGER

端口号

RoCE

表30 格式

字段名

类型

含义

deviceId

INTEGER

设备Id

timestampNs

INTEGER

本地时间,单位ns

bandwidth

INTEGER

带宽,单位Byte/s

rxPacketRate

NUMERIC

收包速率,单位packet/s

rxByteRate

NUMERIC

接收字节速率,单位Byte/s

rxPackets

INTEGER

累计收包数量,单位packet

rxBytes

INTEGER

累计接收字节数量,单位Byte

rxErrors

INTEGER

累计接收错误包数量,单位packet

rxDropped

INTEGER

累计接收丢包数量,单位packet

txPacketRate

NUMERIC

发包速率,单位packet/s

txByteRate

NUMERIC

发送字节速率,单位Byte/s

txPackets

INTEGER

累计发包数量,单位packet

txBytes

INTEGER

累计发送字节数量,单位Byte

txErrors

INTEGER

累计发送错误包数量,单位packet

txDropped

INTEGER

累计发送丢包数量,单位packet

funcId

INTEGER

端口号

LLC

Atlas 200/300/500 推理产品不支持采集该数据。

表31 格式

字段名

类型

含义

deviceId

INTEGER

设备Id

llcId

INTEGER

三级缓存ID

timestampNs

INTEGER

本地时间,单位ns

hitRate

NUMERIC

三级缓存命中率(100%)

throughput

NUMERIC

三级缓存吞吐量,单位Byte/s

mode

INTEGER

模式,用于区分是读或写,STRING_IDS(mode)

TASK_PMU_INFO

Atlas 200I/500 A2 推理产品Atlas A2 训练系列产品/Atlas 800I A2 推理产品/A200I A2 Box 异构组件支持采集该数据。

表32 格式

字段名

类型

含义

globalTaskId

INTEGER

全局算子任务id,用于关联TASK表

name

INTEGER

pmu metric 指标名,STRING_IDS(name)

value

NUMERIC

对应指标名的数值

SAMPLE_PMU_TIMELINE

表33 格式

字段名

类型

含义

deviceId

INTEGER

设备Id

timestampNs

INTEGER

本地时间,单位ns

totalCycle

INTEGER

对应core在时间片上的cycle数

usage

NUMERIC

对应core在时间片上的利用率(100%)

freq

NUMERIC

对应core在时间片上的频率,单位MHz

coreId

INTEGER

coreId

coreType

INTEGER

core类型(AIC 或 AIV),STRING_IDS(coreType)

SAMPLE_PMU_SUMMARY

表34 格式

字段名

类型

含义

deviceId

INTEGER

设备Id

metric

INTEGER

pmu metric 指标名,STRING_IDS(metric)

value

NUMERIC

对应指标名的数值

coreId

INTEGER

coreId

coreType

INTEGER

core类型(AIC 或 AIV),STRING_IDS(coreType)

NPU_MEM

表35 格式

字段名

类型

含义

type

INTEGER

event类型,app或device,STRING_IDS(type)

ddr

NUMERIC

ddr占用大小,单位Byte

hbm

NUMERIC

hbm占用大小,单位Byte

timestampNs

INTEGER

本地时间,单位ns

deviceId

INTEGER

设备Id

NPU_MODULE_MEM

表36 格式

字段名

类型

含义

moduleId

INTEGER

组件类型,ENUM_MODULE(moduleId)

timestampNs

INTEGER

本地时间,单位ns

totalReserved

NUMERIC

内存占用大小,单位Byte

deviceId

INTEGER

设备Id

NPU_OP_MEM

表37 格式

字段名

类型

含义

operatorName

INTEGER

算子名字,STRING_IDS(operatorName)

addr

INTEGER

内存申请释放首地址

type

INTEGER

用于区分申请或是释放,STRING_IDS(type)

size

INTEGER

申请的内存大小,单位Byte

timestampNs

INTEGER

本地时间,单位ns

globalTid

INTEGER

该条记录的全局tid。高32位:pid,低32位:tid

totalAllocate

NUMERIC

总体已分配的内存大小,单位Byte

totalReserve

NUMERIC

总体持有的内存大小,单位Byte

component

INTEGER

组件名,STRING_IDS(component)

deviceId

INTEGER

设备Id

HBM

表38 格式

字段名

类型

含义

deviceId

INTEGER

设备Id

timestampNs

INTEGER

本地时间,单位ns

bandwidth

NUMERIC

带宽,单位Byte/s

hbmId

INTEGER

内存访问单元id

type

INTEGER

用于区分读或写,STRING_IDS(type)

DDR

表39 格式

字段名

类型

含义

deviceId

INTEGER

设备Id

timestampNs

INTEGER

本地时间,单位ns

read

NUMERIC

内存读取带宽,单位Byte/s

write

NUMERIC

内存写入带宽,单位Byte/s

HCCS

表40 格式

字段名

类型

含义

deviceId

INTEGER

设备Id

timestampNs

INTEGER

本地时间,单位ns

txThroughput

NUMERIC

发送带宽,单位Byte/s

rxThroughput

NUMERIC

接收带宽,单位Byte/s

PCIE

表41 格式

字段名

类型

含义

deviceId

INTEGER

设备Id

timestampNs

INTEGER

本地时间,单位ns

txPostMin

NUMERIC

发送端PCIe Posted数据传输带宽最小值,单位Byte/s

txPostMax

NUMERIC

发送端PCIe Posted数据传输带宽最大值,单位Byte/s

txPostAvg

NUMERIC

发送端PCIe Posted数据传输带宽平均值,单位Byte/s

txNonpostMin

NUMERIC

发送端PCIe Non-Posted数据传输带宽最小值,单位Byte/s

txNonpostMax

NUMERIC

发送端PCIe Non-Posted数据传输带宽最大值,单位Byte/s

txNonpostAvg

NUMERIC

发送端PCIe Non-Posted数据传输带宽平均值,单位Byte/s

txCplMin

NUMERIC

发送端接收写请求的完成数据包最小值,单位Byte/s

txCplMax

NUMERIC

发送端接收写请求的完成数据包最大值,单位Byte/s

txCplAvg

NUMERIC

发送端接收写请求的完成数据包平均值,单位Byte/s

txNonpostLatencyMin

NUMERIC

发送端PCIe Non-Posted模式下的传输时延最小值,单位ns

txNonpostLatencyMax

NUMERIC

发送端PCIe Non-Posted模式下的传输时延最大值,单位ns

txNonpostLatencyAvg

NUMERIC

发送端PCIe Non-Posted模式下的传输时延平均值,单位ns

rxPostMin

NUMERIC

接收端PCIe Posted数据传输带宽最小值,单位Byte/s

rxPostMax

NUMERIC

接收端PCIe Posted数据传输带宽最大值,单位Byte/s

rxPostAvg

NUMERIC

接收端PCIe Posted数据传输带宽平均值,单位Byte/s。

rxNonpostMin

NUMERIC

接收端PCIe Non-Posted数据传输带宽最小值,单位Byte/s

rxNonpostMax

NUMERIC

接收端PCIe Non-Posted数据传输带宽最大值,单位Byte/s

rxNonpostAvg

NUMERIC

接收端PCIe Non-Posted数据传输带宽平均值,单位Byte/s

rxCplMin

NUMERIC

接收端收写请求的完成数据包最小值,单位Byte/s

rxCplMax

NUMERIC

接收端收写请求的完成数据包最大值,单位Byte/s

rxCplAvg

NUMERIC

接收端收写请求的完成数据包平均值,单位Byte/s

META_DATA

表42 格式

字段名

类型

含义

name

TEXT

字段名

value

TEXT

数值

表43 内容

name

含义

SCHEMA_VERSION

总版本号,如1.0.2

SCHEMA_VERSION_MAJOR

大版本号,如1, 仅当数据库格式存在重写或重构时更改

SCHEMA_VERSION_MINOR

中版本号,如0, 当更改列或类型时更改,存在兼容性问题

SCHEMA_VERSION_MICRO

小版本号,如2, 当更新表时都会更改,不具有兼容性问题

MSTX_EVENTS

表44 格式

字段名

类型

含义

startNs

INTEGER

host侧tx打点数据开始时间,单位ns

endNs

INTEGER

host侧tx打点数据结束时间,单位ns

eventType

INTEGER

host侧tx打点数据类型,ENUM_MSTX_EVENT_TYPE(eventType)

rangeId

INTEGER

host侧range类型tx数据对应的range id

category

INTEGER

host侧tx数据所属的分类id

message

INTEGER

host侧tx打点数据携带信息,STRING_IDS(message)

globalTid

INTEGER

host侧tx打点数据开始线程的全局tid

endGlobalTid

INTEGER

host侧tx打点数据结束线程的全局tid

domainId

INTEGER

host侧tx打点数据所属域的域id

connectionId

INTEGER

host侧tx打点数据的关联ID,TASK(connectionId)

COMMUNICATION_SCHEDULE_TASK INFO

保存通信调度的task info。

表45 格式

字段名

类型

含义

name

INTEGER

算子名,STRING_IDS(name)

globalTaskld

INTEGER

主键,全局算子任务id,用于关联TASK表

taskType

INTEGER

host执行该算子的加速器类型,STRING_IDS(taskType)

opType

INTEGER

算子类型,STRING_IDS(opType)

MEMCPY_INFO

表46 格式

字段名

类型

含义

globalTaskId

NUMERIC

主键,全局算子任务id,用于关联TASK

size

NUMERIC

拷贝的数据量

memcpyOperation

NUMERIC

拷贝类型,STRING_IDS(memcpyDirection)