我可以在 Linux 终端中找出 PCI-e 插槽是 1.0、2.0 还是 3.0?

我可以在 Linux 终端中找出 PCI-e 插槽是 1.0、2.0 还是 3.0?

我打算购买一个适用于 PCI-e 3.0 的 GPU。但由于我不知道我的电脑上的 PCI-e 插槽是什么,所以我需要以某种方式找到它。是否可以从 Linux 中的终端找到它?

答案1

使用lspci -vvroot 身份,您可以获取传输速率并将其与传输速率进行比较为修订指定。示例输出如下:

# lspci -vv | grep -E 'PCI bridge|LnkCap'
00:02.0 PCI bridge: NVIDIA Corporation C51 PCI Express Bridge (rev a1) (prog-if 00 [Normal decode])
                LnkCap: Port #2, Speed 2.5GT/s, Width x1, ASPM L0s L1, Latency L0 <512ns, L1 <4us
00:03.0 PCI bridge: NVIDIA Corporation C51 PCI Express Bridge (rev a1) (prog-if 00 [Normal decode])
                LnkCap: Port #1, Speed 2.5GT/s, Width x1, ASPM L0s L1, Latency L0 <512ns, L1 <4us
00:04.0 PCI bridge: NVIDIA Corporation C51 PCI Express Bridge (rev a1) (prog-if 00 [Normal decode])
                LnkCap: Port #0, Speed 2.5GT/s, Width x16, ASPM L0s L1, Latency L0 <512ns, L1 <4us
00:10.0 PCI bridge: NVIDIA Corporation MCP51 PCI Bridge (rev a2) (prog-if 01 [Subtractive decode])

这表明这里的速度是2.5GT/s,对应PCIe 1.x。

答案2

您可以使用“dmidecode”命令详细列出系统上的所有硬件,然后查看该列表。我使用了一个“快速而粗略”的命令来显示相关位,如下所示:

dmidecode | grep "PCI"

返回

PCI is supported
Type: x16 PCI Express 2 x8
Type: x8 PCI Express 2 x4
Type: x8 PCI Express 2 x4
Type: x8 PCI Express 2 x4
Type: 32-bit PCI

相关内容