禁用 Mellanox BlueField DPU 上的省电模式

禁用 Mellanox BlueField DPU 上的省电模式

我目前正在使用 Mellanox BlueField DPU,在省电功能方面面临一些挑战,这些功能似乎会影响网络性能。

我曾经ethtool探索和调整网卡设置,但没有发现任何与省电相关的特定选项(如 EEE - 节能以太网)。

$ sudo ethtool -i enp3s0f0np0
driver: mlx5_core
version: 5.8-4.1.5
firmware-version: 18.24.0302 (MSF0000000005)
expansion-rom-version:
bus-info: 0000:03:00.0
supports-statistics: yes
supports-test: yes
supports-eeprom-access: no
supports-register-dump: no
supports-priv-flags: yes

ethtool --show-features

  • 没有可供切换的 EEE 设置或类似的电源管理功能。
$ sudo ethtool --set-eee enp3s0f0np0 eee off

Cannot get EEE settings: Operation not supported

我可以找到一些与电源相关的配置,但我不知道它们是什么意思:

$ sudo mlxconfig -d /dev/mst/mt41682_pciconf0 query

Device #1:
----------

Device type:    BlueField       
Name:           N/A             
Description:    N/A             
Device:         /dev/mst/mt41682_pciconf0

Configurations:                                      Next Boot      
         DISABLE_SLOT_POWER_LIMITER                  True(1)         
         ADVANCED_POWER_SETTINGS                     True(1)         

更多信息:

$ sudo lshw -c network

  *-network:0
       description: Ethernet interface
       product: MT416842 BlueField integrated ConnectX-5 network controller
       vendor: Mellanox Technologies
       physical id: 0
       bus info: pci@0000:03:00.0
       logical name: enp3s0f0np0
       logical name: /dev/fb0
       version: 00
       serial: b8:59:9f:42:6d:24
       capacity: 56Gbit/s
       width: 64 bits
       clock: 33MHz
       capabilities: pciexpress vpd msix pm bus_master cap_list rom ethernet physical 1000bt-fd 10000bt-fd 25000bt-fd 40000bt-fd 56000bt-fd autonegotiation fb
       configuration: autonegotiation=on broadcast=yes depth=32 driver=mlx5_core driverversion=5.8-4.1.5 duplex=full firmware=18.24.0302 (MSF0000000005) ip=192.168.3.2 latency=0 link=yes mode=1024x768 multicast=yes promiscuous=yes visual=truecolor xres=1024 yres=768
       resources: iomemory:3000-2fff irq:84 memory:30002000000-30003ffffff memory:96200000-962fffff memory:30006000000-300073fffff
  *-network:1
       description: Ethernet interface
       product: MT416842 BlueField integrated ConnectX-5 network controller
       vendor: Mellanox Technologies
       physical id: 0.1
       bus info: pci@0000:03:00.1
       logical name: enp3s0f1np1
       version: 00
       serial: b8:59:9f:42:6d:25
       capacity: 56Gbit/s
       width: 64 bits
       clock: 33MHz
       capabilities: pciexpress vpd msix pm bus_master cap_list rom ethernet physical 1000bt-fd 10000bt-fd 25000bt-fd 40000bt-fd 56000bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=mlx5_core driverversion=5.8-4.1.5 firmware=18.24.0302 (MSF0000000005) ip=192.168.3.3 latency=0 link=yes multicast=yes promiscuous=yes
       resources: iomemory:3000-2fff irq:149 memory:30004000000-30005ffffff memory:96300000-963fffff memory:30007400000-300087fffff

鉴于这些细节,我将非常感激有关以下方面的任何指导:

  1. 如何检查是否有任何嵌入式省电模式处于活动状态,但通过 不可见ethtool
  2. 禁用这些省电功能以优先考虑性能的步骤,特别是对于延迟敏感的应用程序。

有其他人遇到过类似的挑战吗?任何有关在性能至关重要的环境中管理 Mellanox 网卡电源设置的建议都将非常有帮助。

提前感谢您的见解!

答案1

看完之后Linux 内核文档RedHat 文章

我想我找到了一个解决方案:

sudo vim /sys/class/net/<my device>/power/control

更改autoon以禁用 RDPM

相关内容