mlx5网卡怎么开启RNR功能,并如何统计RNR
时间: 2024-02-21 21:01:55 浏览: 151
RNR(Receiver Not Ready)是一种流量控制技术,可以避免接收端处理不过来的情况。在mlx5网卡上开启RNR功能可以通过设置QoS(Quality of Service)参数来实现。具体步骤如下:
1. 使用Mellanox官方提供的MLNX_OFED驱动,或者安装MLNX_OFED的包,确保mlx5_core模块已经加载。
2. 使用ethtool命令查看网卡是否支持QoS功能:
```
ethtool -l <interface name>
```
如果结果中有“rx-flow-hash”一项,则网卡支持QoS功能。
3. 使用ethtool命令开启QoS功能:
```
ethtool -L <interface name> combined <number of RX queues>
```
例如,如果想要开启4个RX队列,则可以执行以下命令:
```
ethtool -L eth0 combined 4
```
4. 在应用程序中,可以使用Perf Query工具来统计RNR。Perf Query是一种性能分析工具,可以使用以下命令来统计RNR:
```
sudo perf query -i <interface name> -e mlx5e:rq_affinity_change --per-thread
```
例如,如果要统计eth0网卡的RNR,可以执行以下命令:
```
sudo perf query -i eth0 -e mlx5e:rq_affinity_change --per-thread
```
运行结果会输出每个线程的RNR统计信息。
阅读全文