开发者
资源

码流测试

测试项功能

码流测试是通过对NPU芯片的RoCE网口收发PRBS码流,检查硬件链路的通信信号质量。

码流测试支持以下2种打流方式:

  • CDR环回打流:单个Device同时发送和接收,可用于检查从NPU的物理serdes端口到CDR单元的信号质量。在打流前,请确保光模块在位,然后再进行CDR环回配置。详细说明请参考:配置CDR环回
  • 光模块外接光纤回路器(自环器)打流:单个Device同时发送和接收,可用于检查NPU的物理serdes端口到光模块的信号质量,不需要设置环回。

仅6.0.RC2.1及以上版本支持此功能。

使用场景

码流测试主要用于查询RoCE网口信号质量的具体数据。定位RoCE网口信号质量问题,请执行prbs码流诊断

使用约束

  • 该测试项当前仅支持root用户在超节点上使用。
  • 该操作为高危操作,可能会导致网口link down,需要单独执行。
  • 打流流程会自动关闭NPU和CDR自适应,多次执行打流命令时会反复开关自适应,当自适应开关动作未完成时,偶现误码数为67092480为正常现象。
  • 当前仅支持在物理机和特权容器上进行该项测试。
  • 为了避免频繁输出日志影响测试结果,测试前确认Host和Device的日志级别设置为ERROR,确认及设置方法如下:
    1. 确认日志级别:
      • Host侧:通过执行echo $GLOBAL_LOG_LEVEL命令查询,如果查询结果为非法值或者空,表示日志级别为缺省级别ERROR,对应数值3。
      • Device侧:请参考《CANN 日志参考》“其他操作">"msnpureport工具使用”章节,查看全局日志级别、模块日志级别和是否开启Event日志。
    2. 如果日志级别不为ERROR,请参考《CANN 日志参考》中“其他操作">“设置日志级别”章节,设置Host和Device侧的日志级别。

测试项参数查询

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

ascend-dmi --prbs-check -h

ascend-dmi --prbs-check --help

各参数解释如表1所示。

表1 参数说明

参数

说明

是否必填

[--prbs-check]

使用该参数进行prbs码流测试。

[--pattern]

指定测试的码流类型。

  • 当前支持测试的码流类型为:prbs7、prbs9、prbs10、prbs11、prbs15、prbs20、prbs23、prbs31。
  • 不指定该参数时,默认值为prbs31。

[-d, --device]

指定需要进行码流测试的Device ID。

Device ID是指昇腾AI处理器的逻辑ID,若不填写则测试全量昇腾NPU芯片的码流。

[-dur, --dur, --duration]

指定码流测试的时长。

  • 参数取值范围为【3,10】,单位为秒。
  • 不指定该参数时,默认值为3。

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

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

[-h, --help]

显示帮助信息。

[-q, --quiet]

指定该参数,将不再进行防呆提示,用户将默认允许该操作。

说明:

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

使用实例

  • 以在Device 8和Device 9上进行prbs7的码流测试为例。
    图1 指定码流测试示例

在以上示例中,各回显参数的说明如下表所示:

表2 参数回显说明

参数

说明

device

表示NPU的逻辑ID。

lane

表示RoCE链路的lane通道ID。

error count

误码数。

最大值为67092480,表示满误码。

error rate

误码率。

当误码率小于10-5为信号质量正常。

alos

取值为:0、1。

值为0表示正常

值为1通常表示输入信号幅度过低。

times

表示打流时长。