DOCA 文档 v2.10.0

共享 RQ 模式

当创建 1 个发送队列 (SQ) 和 1 个接收队列 (RQ) 时,每个表示器每个通道消耗约 3MB 内存。将此扩展到所需的 1024 个表示器(SF 和/或 VF)将需要约 3GB 的单通道内存。3MB 的主要部分是由 RQ 分配(接收缓冲区和 SKB)贡献的。因此,为了有效利用内存,实现了共享 RQ 模式,以便 PF/VF/SF 表示器共享由上行链路表示器拥有的接收队列。

此功能默认启用。要禁用它

  1. /etc/mellanox/mlnx-bf.conf 中编辑字段 ALLOW_SHARED_RQ,如下所示

    复制
    已复制!
                

    ALLOW_SHARED_RQ="no"

  2. 重启驱动程序。运行

    复制
    已复制!
                

    /etc/init.d/openibd restart

要从主机连接到共享 RQ 模式下的 NVIDIA® BlueField® 网络平台(DPU 或 SuperNIC),请参阅 验证从主机到 BlueField 的连接 部分。

注意

主机上 PF/VF 表示器到 PF/VF 表示器的通信是不可能的。

在共享 RQ 模式下观察到以下行为

  • 预期在运行流量后,在 rx_bytesrx_packets 中看到 0,以及有效的 vport_rx_packetsvport_rx_bytes。示例输出

    复制
    已复制!
                

    # ethtool -S pf0hpf NIC statistics: rx_packets: 0 rx_bytes: 0 tx_packets: 66946 tx_bytes: 8786869 vport_rx_packets: 546093 vport_rx_bytes: 321100036 vport_tx_packets: 549449 vport_tx_bytes: 321679548

  • Ethtool 用法 – 在此模式下,无法使用 ethtool 更改/设置 RX 侧的环或合并参数。更改通道也仅影响 TX 侧。

© 版权所有 2025 NVIDIA。 上次更新于 2025 年 2 月 12 日。