使用msnpureport工具收集更多AI Core Error信息
联系技术支持定位一些疑难AI Core Error问题时,除了收集AI Core Error问题信息中收集的信息外,还需获取Device配置信息、设置TaskSchedule是否自动复位加速器、导出寄存器信息、设置AI Core上任务串联或并行执行、屏蔽指定AI Core或Vector Core上的任务执行等,以便更进一步排查算子问题、硬件问题。

- Atlas 200/300/500 推理产品不支持使用本步骤的定位方法。
- 昇腾AI应用进程运行过程中不支持使用本步骤中的定位方法,可能会导致应用进程运行异常或本步骤中的命令执行异常,需应用进程退出后才能使用。
- 获取当前Device配置信息。
命令格式如下,其中--device或-d用于指定deviceId,可选参数,默认为0:
msnpureport config --get [--device <deviceId>]
命令示例如下:
msnpureport config --get --device 0
- 设置TaskSchedule是否自动复位加速器,以便导出更详细、更精准的寄存器信息定位问题,但该配置后会影响执行性能。针对以下产品,AI Core问题定位场景下,执行本命令设置不自动复位加速器后,需再次复现问题,然后再参见•导出寄存器信息,便于后续辅助定位硬件问题。中的内容,可导出更详细、更精准的寄存器信息,辅助定位问题。
- Atlas A2训练系列产品/Atlas 800I A2推理产品
命令及其参数说明如下:命令示例如下:
msnpureport config --set --accelerator_recover 0 -d 1
- 设置AI Core的singlecommit,设置后,需再次执行2收集故障信息、分析问题。命令及其参数说明如下:
命令示例如下:
msnpureport config --set --singlecommit 0 -d 1
- 屏蔽指定AI Core或Vector Core上的任务执行,以便排查哪个AI Core或Vector Core故障。设置后,需再次执行2收集故障信息、分析问题。命令及其参数说明如下:
命令
参数
说明
msnpureport config --set [--device <deviceId>]
--aic_switch {0 | 1} --coreid 3,4
屏蔽指定AI Core,需按照--aic_switch、--coreid参数顺序:
- --device或-d:指定deviceId,可选参数,默认为0。
- --aic_switch
- --coreid:指定core id,多个core id之间以英文逗号分隔,最多可同时指定4个AI Core,只要有一个core id无效,则该命令会返回报错。
若想恢复初始值,可将--aic_switch设置为1,将--coreid设置为0xFFFF。
Atlas 200I/500 A2推理产品上只有一个AI Core,不支持使用该命令屏蔽。
msnpureport config --set [--device <deviceId>]
--aiv_switch {0 | 1} --coreid 5,6
屏蔽指定Vector Core,需按照--aiv_switch、--coreid参数顺序。
- --device或-d:指定deviceId,可选参数,默认为0。
- --aiv_switch
- --coreid:指定core id,多个core id之间以英文逗号分隔,最多可同时指定4个Vector Core,只要有一个core id无效,则该命令会返回报错。
若想恢复初始值,可将--aiv_switch设置为1,将--coreid设置为0xFFFF。
Atlas 训练系列产品上没有Vector Core,不支持使用该命令。
Atlas 200I/500 A2推理产品上没有Vector Core,不支持使用该命令。
命令示例如下:
msnpureport config --set --aic_switch 0 --coreid 3,4 -d 0 msnpureport config --set --aiv_switch 0 --coreid 5,6 -d 0
- 设置icache bit翻转检验范围,以便定位算子问题。设置后,需再次执行2收集故障信息、分析问题。命令及其参数说明如下:
命令
参数
说明
msnpureport config --set [--device <deviceId>]
--icachecheck <参数值>
- --device或-d:指定deviceId,可选参数,默认为0。
- --icachecheck :设置参数值,取值范围:[0, 131072],单位K byte,最大值120M byte。例如将该参数值设置为128,则校验从出错PC往前128K到出错PC往后128K的icache与GM(Global Memory)是否一致。
在设置该参数值前,可先参见•获取当前Device配置信息。获取当前环境上的icache翻转校验范围(即Icache check range字段值)。
命令示例如下:
msnpureport config --set --icachecheck 128 -d 0
- 导出寄存器信息,便于后续辅助定位硬件问题。命令及其参数说明如下:
命令
参数
说明
msnpureport report -t 2
或者
msnpureport report --type 2
不涉及
导出所有Device上的寄存器信息。
注意,由于是导出所有寄存器信息,可能耗时较长,在10秒以内。
命令示例如下:
msnpureport report --type 2