如何查看PCIe卡使用了多少个lane?

sil*_*ilk 43 pci

主板上的 PCI Express 插槽可以比连接的通道数更宽。例如,主板可以有 x8 插槽,仅连接 x1 通道。

另一方面,您可以插入仅用于 ex 的卡。4 条通道连接到主板上的 x16 插槽,他们将协商仅使用那些 x4 通道。

如何从运行系统中查看插入的PCIe卡使用了多少通道?

sil*_*ilk 46

好的,似乎我在lspci联机帮助页中的第一次尝试中错过了它。

注意:以 root/sudo 身份运行命令,否则会省略很多细节,包括下面显示的 Lnk 输出。

lspci -vv 显示很多信息,包括链接宽度:

01:00.0 VGA compatible controller: nVidia Corporation G92 [GeForce 8800 GT] (rev a2) (prog-if 00 [VGA controller])
            [...]
            LnkCap: Port #0, Speed 2.5GT/s, Width x16, ASPM L0s L1, Latency L0 <512ns, L1 <1us
                    ClockPM- Surprise- LLActRep- BwNot-
            LnkCtl: ASPM Disabled; RCB 128 bytes Disabled- Retrain- CommClk+
                    ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
            LnkSta: Speed 2.5GT/s, Width x8, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
Run Code Online (Sandbox Code Playgroud)

  • 在您的示例中,输出文本同时具有“宽度 x16”和“宽度 x8”。我假设这被解释为:“链接容量为 x16”和“此设备已协商宽度 x8”? (4认同)
  • 是的,我也是这么理解的。 (2认同)

小智 19

有时它可能会更复杂一些。

例如,4 端口 GBit 以太网适配器板载 PCIe 交换机。我陷入了一个问题,我发现以太网适配器连接到 x4,但当板载 pcie 交换机仅在 x1 连接到主板时,上游出现瓶颈。

有关此问题,请参阅此线程:http : //thread.gmane.org/gmane.linux.drivers.e1000.devel/15192/focus=15254

要掌握树的连通性,请比较以下视图

sudo lspci -tv
sudo lspci -vv | grep -P "[0-9a-f]{2}:[0-9a-f]{2}\.[0-9a-f]|LnkSta:"
Run Code Online (Sandbox Code Playgroud)

最后一行将向您显示总线上每个设备下方的链接状态,而没有 vv 选项的过多细节。

  • 注意:当以非特权用户身份运行时,lspci 不显示 LnkCap / LnkSta / Width 统计信息。用 sudo 运行它以查看它们。 (15认同)

小智 5

我使用以下命令。 lspci -vv提供详细输出。使用 grep 对其进行解析,仅查看“宽度”,如下所示:

lspci -vvv | egrep "0[0-9]:|Width\ "
03:00.0 Ethernet controller: Mellanox Technologies MT26448 [ConnectX EN 10GigE, PCIe 2.0 5GT/s] (rev b0)
pcilib: sysfs_read_vpd: read failed: Input/output error
        LnkCap:    Port #8, Speed 5GT/s, Width x8, ASPM L0s, Exit Latency L0s unlimited, L1 unlimited
        LnkSta:    Speed 5GT/s, Width x8, TrErr- Train- SlotClk- DLActive- BWMgmt- ABWMgmt-
Run Code Online (Sandbox Code Playgroud)

注意上面的两条Width x8线。

如果LnkSta(链接状态)小于LnkCap(链接能力),它将显示(downgraded)在宽度旁边。这意味着 PCI 卡的功能超出了 PCI 插槽的功能。

接下来,您可以查看显示物理和电气 PCI 端口信息。物理是主板上的实际插槽尺寸。电气是插槽与芯片组的连接方式。某些主板将具有物理 x16 插槽,但仅使用 x8 通道。

dmidecode --type 9 | egrep "Usage|Type|Designation"

Designation: PCH SLOT1 PCI-E 3.0 X4(IN X8)
Type: x4 PCI Express 3 x8
Current Usage: Available
Run Code Online (Sandbox Code Playgroud)

Designation这是主板制造商报告插槽的方式。 Type是电气和物理特性。(例如,电气 x4 通道,物理插槽 x8)。