下载
中文
注册

算力测试

算力测试通过构造矩阵乘“A(m,k)*B(k,n)”并执行一定次数的方式,根据运算量与执行多次矩阵乘所耗费时间来计算整卡或处理器中AI Core的算力值和满算力下实时的功率。

设计的矩阵乘参数如表1所示,默认在最大算力模式下运行。

表1 矩阵乘参数

算子运算类型

参数

说明

取值

fp16模式(推理和训练服务器)

int8模式(推理产品)

m

A矩阵行

256

k

A矩阵列,B矩阵行

32

n

B矩阵列

128

测试项参数查询

用户可任选以下指令之一查看算力测试命令的可用参数。

ascend-dmi -f -h

ascend-dmi -f --help

各参数解释如表2所示。

表2 参数说明

参数

说明

是否必填

[-f, --flops, flops]

使用该参数测试芯片的算力。

[-t, --type]

指定算子运算类型,可以为fp16、fp32、hf32、bf16和int8,若未指定则默认为fp16。

须知:

fp32、hf32、bf16类型暂不支持310P卡。

[-d, --device]

指定需要测试算力的Device ID, Device ID是指昇腾芯片的ID,用户可以执行ascend-dmi --info命令,在显示界面表格中的Chip参数处获得芯片数量。例如一个推理卡配置4个昇腾芯片,则Device ID的取值范围为[0,3]。若不填写Device ID则默认返回Device 0的算力信息。

[-et, --et, --execute-times]

指定芯片单个AI Core上运行矩阵乘法的执行次数。

推理场景:若不填写执行次数则默认为10。推理场景单位为百万,参数范围为[10,80]。

训练场景:若不填写执行次数则默认为60。训练场景单位为十万,参数范围为[10,80]。

[-fmt, --fmt, --format]

指定输出格式,可以为normal或json。若未指定则默认为normal。

ascend-dmi -f后使用-d, --et等多个二级参数时,可任意指定这些参数的排列顺序,不影响命令结果输出。例如: ascend-dmi -f -d 2 --et 60ascend-dmi -f --et 60 -d 2输出结果相同。

使用实例

推理服务器以测试Device 2,指定算子运算类型默认为fp16,执行次数为6千万的算力为例。

ascend-dmi -f -d 2 --et 60 

若返回如图1所示信息,表示工具运行正常,图中参数介绍如表3所示。

图1 推理服务器算力测试示例

显示界面参数说明如表3所示。

表3 显示界面参数说明

参数

说明

Device

Device ID。

Execute Times

单个芯片实际运算中执行矩阵乘的次数。

Duration(ms)

执行多次矩阵乘所耗费的时间。

TFLOPS@FP16

Fp16数据进行算力测试得到的算力值。

Power(W)

满算力下芯片的平均功率,推理服务器的芯片显示的为额定功率。

为保证返回检测结果的正确性和准确性,算力测试需要单独执行。图1中的Execute Times数值解释如下:推理服务器的芯片有2个AI Core, Execute Times为执行矩阵乘的次数(6千万)乘以AI Core的个数(2个),结果为120,000,000。