idpf Linux* Intel(R) 基础设施数据路径功能的基础驱动程序¶
Intel idpf Linux 驱动程序。版权所有 (C) 2023 Intel Corporation。
idpf 驱动程序同时用作 Intel(R) 基础设施数据路径功能的物理功能 (PF) 和虚拟功能 (VF) 驱动程序。
驱动程序信息可通过 ethtool、lspci 和 ip 命令获取。
有关硬件要求的问题,请参阅 Intel 适配器随附的文档。所有列出的硬件要求均适用于 Linux 环境。
识别您的适配器¶
有关如何识别您的适配器以及获取最新 Intel 网络驱动程序的信息,请访问 Intel 支持网站:http://www.intel.com/support
附加功能和配置¶
ethtool¶
驱动程序利用 ethtool 接口进行驱动程序配置和诊断,以及显示统计信息。此功能需要最新版本的 ethtool。如果您还没有,可以从以下网址获取:https://linuxkernel.org.cn/pub/software/network/ethtool/
查看链接消息¶
如果发行版限制了系统消息,链接消息将不会显示在控制台上。为了在控制台上看到网络驱动程序链接消息,请通过输入以下命令将 dmesg 设置为 8
# dmesg -n 8
注意
此设置在重启后不会保存。
巨型帧¶
通过将最大传输单元 (MTU) 更改为大于默认值 1500 的值,可以启用巨型帧支持。
使用 ip 命令增加 MTU 大小。例如,输入以下内容,其中 <ethX> 是接口编号
# ip link set mtu 9000 dev <ethX>
# ip link set up dev <ethX>
注意
巨型帧的最大 MTU 设置为 9706。这对应于 9728 字节的最大巨型帧大小。
注意
此驱动程序将尝试使用多个页面大小的缓冲区来接收每个巨型数据包。这有助于避免在分配接收数据包时出现缓冲区饥饿问题。
注意
使用巨型帧时,数据包丢失可能对吞吐量产生更大的影响。如果您在启用巨型帧后观察到性能下降,启用流控制可能会缓解此问题。
性能优化¶
驱动程序默认设置旨在适应各种工作负载,但如果需要进一步优化,我们建议尝试以下设置。
中断速率限制¶
此驱动程序支持一种自适应中断节流速率 (ITR) 机制,该机制针对通用工作负载进行了调整。用户可以通过 ethtool 自定义特定工作负载的中断速率控制,调整中断之间的微秒数。
要手动设置中断速率,您必须禁用自适应模式
# ethtool -C <ethX> adaptive-rx off adaptive-tx off
- 降低 CPU 利用率
禁用自适应 ITR 并降低 Rx 和 Tx 中断。以下示例会影响指定接口的每个队列。
将 rx-usecs 和 tx-usecs 设置为 80 将使每个队列每秒中断限制在大约 12,500 次
# ethtool -C <ethX> adaptive-rx off adaptive-tx off rx-usecs 80 tx-usecs 80
- 降低延迟
通过使用 ethtool 将 rx-usecs 和 tx-usecs 设置为 0 来禁用自适应 ITR 和 ITR
# ethtool -C <ethX> adaptive-rx off adaptive-tx off rx-usecs 0 tx-usecs 0
- 每队列中断速率设置
以下示例适用于队列 1 和 3,但您可以调整其他队列。
对于队列 1 和 3,禁用 Rx 自适应 ITR 并将静态 Rx ITR 设置为 10 微秒或大约 100,000 次中断/秒
# ethtool --per-queue <ethX> queue_mask 0xa --coalesce adaptive-rx off rx-usecs 10
显示队列 1 和 3 的当前合并设置
# ethtool --per-queue <ethX> queue_mask 0xa --show-coalesce
虚拟化环境¶
除了本节中的其他建议之外,以下内容可能有助于优化虚拟机中的性能。
在虚拟机中使用适当的机制 (vcpupin) 将 CPU 固定到单个 LCPU,确保使用设备 local_cpulist 中包含的 CPU 集:/sys/class/net/<ethX>/device/local_cpulist。
在虚拟机中配置尽可能多的 Rx/Tx 队列。(有关支持的队列数量,请参阅 idpf 驱动程序文档。)例如
# ethtool -L <virt_interface> rx <max> tx <max>
支持¶
有关一般信息,请访问 Intel 支持网站:http://www.intel.com/support/
如果在受支持的内核和受支持的适配器上发现已发布源代码的问题,请将与该问题相关的具体信息发送电子邮件至 intel-wired-lan@lists.osuosl.org。
商标¶
Intel 是 Intel Corporation 或其子公司在美国和/或其他国家/地区的商标或注册商标。
其他名称和品牌可能属于他人财产。