片上内存诊断

测试项功能

对高带宽内存进行诊断,并输出诊断结果。

表1 诊断项说明

诊断项名称

使用Atlas A2 训练系列产品完成一轮诊断的参考耗时

使用Atlas 900 A3 SuperPoD 集群算力系统完成一轮诊断的参考耗时

是否影响NPU训练或推理

使用场景

片上内存诊断

2s~4s

≤2min

训练或推理任务时,NPU芯片出现HBM ECC故障:设备出现0x80E01801故障码。

键式片上内存压测诊断

<3h

<3h

训练或推理任务时,NPU芯片出现HBM ECC故障,有新增隔离页。

片上内存压测

1h~3h

2h~3h

片上内存诊断结果为GENERAL_WARN、PASS或IMPORTANT_WARN。

片上内存高危地址压测

≤17min

≤17min

片上内存诊断结果出现单比特或多比特错误。

  • 片上内存压测和片上内存诊断有不同的使用场景,具体请参见表1。请根据实际使用场景选择执行片上内存压测或片上内存诊断。
  • 若想同时使用片上内存诊断、片上内存压测、片上内存高危地址压测请执行一键式片上内存压测诊断

支持的场景

片上内存诊断支持的设备及场景如表2所示。(在下表中,Y表示支持,N表示不支持。)

表2 支持的场景和产品型号

场景/产品型号

Atlas 训练系列产品

Atlas A2 训练系列产品

Atlas 800I A2 推理产品

Atlas A3 训练系列产品

物理机

Y

Y

Y

Y

宿主机+容器

Y

Y

Y

Y

虚拟机

Y

Y

Y

N

测试项参数查询

各参数解释如表3所示。

表3 参数说明

参数

说明

是否必填

[-dg, --dg, --diagnosis]

使用该参数进行整卡的故障诊断测试。

[-i, --items]

指定具体的诊断检查项。

  • 当前仅支持指定的诊断项为hbm。
  • 可指定driver、cann、device、network、bandwidth、aiflops、hbm、signalQuality中的一项或多项,多项时各项之间使用“,”分隔。
  • 不传入此参数,则默认执行除aicore和prbs外其他检查项的诊断。

[-d, --device]

指定需要进行诊断测试的Device ID,Device ID是指昇腾芯片的逻辑ID。

  • 可指定一个或多个Device ID,多个时各项之间使用“,”分隔。
  • 若不填写Device ID则默认返回所有Device的诊断结果。

[-r, --result]

指定压测结果和信息采集结果的保存路径,如:/test。指定的路径需符合安全要求,且不支持包含通配符“*”。

  • 若用户指定结果保存路径,则在指定路径创建ascend_check文件夹,root用户指定的路径,将创建在根目录下,非root用户则创建在其$HOME下;
  • 若不指定路径,则保存在默认路径下,root用户:“/var/log/ascend_check”,非root用户:“$HOME/var/log/ascend_check”。

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

指定输出格式,可以为normal或json。

  • 若未指定则默认为normal。
  • 当[-fmt, --fmt, --format]后检查项指定json格式输出时,会进行压测结果保存,结果保存在“ascend_check/environment_check_before.txt”文件中,不指定json格式输出时,不保存故障诊断结果。

[-q, --quiet]

  • 指定该参数,将不再进行防呆提示,用户将默认允许该操作。
  • 若不指定该参数,用户需要输入Y或N(y或n)确认是否进行测试。

说明:

  • 本文档输入或输出的Device ID都是芯片逻辑ID。
  • 用户可以执行npu-smi info -m命令,在显示界面表格中的Chip Logic ID参数处获得芯片逻辑ID,NPU ID则为对应的芯片物理ID。
  • ascend-dmi --dg后使用-i,-d等多个二级参数时,可任意指定这些参数的排列顺序,不影响命令结果输出。

使用实例

ascend-dmi -dg -i hbm

故障检查项说明

表4 故障检查项说明

回显状态

含义

PASS

片上内存检测通过,无异常。

SKIP

当前硬件形态不支持片上内存检测。

GENERAL_WARN

历史多比特存在隔离页,告警NPU芯片健康管理故障码为0x80E18401,可以继续使用。

IMPORTANT_WARN

当前实时隔离页数与已隔离页数存在差异,必须进行重启,复位npu芯片。

EMERGENCY_WARN

  • 历史多比特隔离页数及设备隔离行过多,告警NPU芯片健康管理故障码为0x80E18402,建议更换备件。
  • 相同Stack及PC内的隔离行处于不同Bank的数量 ≥ 4,当前设备运行存在高风险,建议更换备件。
  • 相同Stack、相同Sid及不同PC内的隔离行 ≥ 4,当前设备运行存在高风险,建议更换备件。
  • 相同Stack、Sid、PC及Bank内的隔离行 >16,当前设备运行存在高风险,建议更换备件。
  • 相同Stack、Sid、PC及Bank内,排除4bit及以内相邻的错误地址,其他不同地址的数量 > 5,当前设备运行存在高风险,建议更换备件。

FAIL

片上内存检测失败,请联系华为工程师处理或参考FAQ进行定位。