昇腾社区首页
中文
注册

一键式打流

测试项功能

一键式打流是指在NPU外部环回(CDR环回或者外接光纤回路器)场景,NPU的RoCE网口进行自发自收的码流测试。

测试项名称

支持的打流方式

使用方法

一键式打流

CDR环回打流、光模块外接光纤回路器(自环器)打流

执行一键式打流命令,Ascend DMI工具将自动完成发送及接收指定device所有lane的码流,一段时间后关闭码流并查询结果。

自定义打流

CDR环回打流、光模块外接光纤回路器(自环器)打流、NPU直连打流

自定义打流是将一键式打流中的各步骤独立出来,用户可灵活控制打流的TX、RX方向开关和指定打流的具体lane。

测试原理

一键式打流支持以下2种打流方式。

  • CDR环回打流:是指单个Device同时发送和接收,可用于检查从NPU的物理serdes端口到CDR单元的信号质量。在打流前,请确保光模块在位,然后再进行CDR环回配置。执行如下命令配置或解除CDR回环,其余参数说明请参考《Atlas A2 中心推理和训练硬件 24.1.0 HCCN Tool 接口参考》的“配置功能>配置和查询CDR相关信息”章节
    • 配置CDR回环,t取值顺序为3、0,例如依次执行如下命令:

      hccn_tool -i 0 -scdr -t 3

      hccn_tool -i 0 -scdr -t 0

    • 解除CDR回环,t取值顺序为2、1,例如依次执行如下命令:

      hccn_tool -i 0 -scdr -t 2

      hccn_tool -i 0 -scdr -t 1

  • 光模块外接光纤回路器(自环器)打流:单个Device同时发送和接收,可用于检查NPU的物理serdes端口到光模块的信号质量,不需要设置环回。
  • 一键式打流原理:对指定NPU的serdes端口打开TX方向打流后,数据流通过被测链路传输到回环单元(CDR或者光纤回路器),再经过被测链路回传,被该NPU的RX方向接收到。RX方向统计打流期间数据流经过链路产生的误码情况,用于检查链路信号质量。
    图1 一键式打流原理图

使用场景

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

使用约束

  • 该测试项当前仅支持root用户在Atlas 800T A2 训练服务器Atlas 200T A2 Box16 异构子框Atlas 800I A2推理产品上使用。
  • 当前仅支持在物理机、容器和虚拟机上执行该项测试。
  • 该操作为高危操作,可能会导致网口link down,需要单独执行。

测试前准备

  • 打流会中断训练或推理业务,打流前请确保无业务运行。
  • 如果使用外接光纤回路器打流,打流前无需额外配置;如果使用CDR环回,请确保光模块在位然后配置CDR环回。CDR配置环回方法请参考《Atlas A2 中心推理和训练硬件 24.1.0 HCCN Tool 接口参考》的“配置功能>配置和查询CDR相关信息”章节
  • 为了避免频繁输出日志影响测试结果,测试前确认Host和Device的日志级别设置为ERROR,确认及设置方法如下:
    1. 确认日志级别:
      • Host侧:通过执行echo $GLOBAL_LOG_LEVEL命令查询,如果查询结果为非法值或者空,表示日志级别为缺省级别ERROR,对应数值3。
      • Device侧:请参考msnpureport工具使用,查看全局日志级别、模块日志级别和是否开启Event日志。
    2. 如果日志级别不为ERROR,请参考《CANN 日志参考》中“设置日志级别”章节章节,设置Host和Device侧的日志级别。

支持的场景

码流测试支持的设备及场景如表1 支持的场景和产品型号所示。(在下表中,Y表示支持,N表示不支持。)

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

场景/产品型号

Atlas A2 训练系列产品

Atlas 800I A2 推理产品

物理机

1

Y

宿主机+容器

1

Y

虚拟机

1

N

  1. Atlas 800T A2 训练服务器Atlas 200T A2 Box16 异构子框支持。

测试项参数查询

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

ascend-dmi --prbs-check -h

ascend-dmi --prbs-check --help

各参数解释如表1所示。

表2 参数说明

参数

说明

是否必填

[-pc, --pc, --prbs-check]

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

[--pattern]

指定测试的码流类型。

  • 当前支持测试的码流类型为:prbs7、prbs9、prbs10、prbs11、prbs15、prbs20、prbs23、prbs31。
  • 指定码型时大小写均可生效,例如prbs7也可以写为PRBS7。
  • 不指定该参数时,默认值为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的码流测试为例。
    图2 指定码流测试示例

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

表3 参数回显说明

参数

说明

device

表示NPU的逻辑ID。

lane

表示RoCE链路的lane通道ID。

error count

误码数。

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

error rate

误码率。

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

alos

取值为:0、1。

值为0表示正常

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

times

表示打流时长。

以下几种情况可能导致满误码(误码数为67092480):

  • 打流流程会自动关闭NPU和CDR自适应,多次执行打流命令时会反复开关自适应,当自适应开关动作未完成时,偶现误码数为67092480。
  • CDR环回场景下,未配置CDR环回或环回未配置成功,CDR环回详细配置步骤请参见《Atlas A2 中心推理和训练硬件 24.1.0 HCCN Tool 接口参考》的“配置功能>配置和查询CDR相关信息”章节

后续操作

  • 为避免对正在运行的训练或推理业务造成影响,请在完成码流测试后,关闭该测试项。
  • 若使用CDR环回打流,请在完成打流后解除CDR环回,否则业务无法正常运行。解除CDR环回请参见《Atlas A2 中心推理和训练硬件 24.1.0 HCCN Tool 接口参考》的“配置功能>配置和查询CDR相关信息”章节