I'm going to purchase a GPU which is for PCI-e 3.0. But since I don't know what PCI-e slot it is in my computer I need to find it out somehow. Is it possible to find it from the terminal in linux?
Asked
Active
Viewed 7.2k times
38
-
1Not asked, but nice to know: A PCI-e v3 card will run fine on an PCI-e v2 slot. – Hennes Apr 23 '14 at 18:41
2 Answers
34
Using lspci -vv as root, you can get the transfer rate and compare it with the transfer rate specified for the revisions. A sample output would read:
# 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])
Which shows that the speed here is 2.5GT/s, corresponding to PCIe 1.x.
quazgar
- 646
- 6
- 9
-
10This needs to run as root; without it, `lspci` silently prints `Capabilities:
`, which is removed by the `grep`. – FauxFaux Jul 05 '17 at 19:29 -
18
-
That shows the CURRENT transfer speed. An idle system will all show the lowest speed it is allowed to run at. You can't use this at all. – Ken Sharp Sep 27 '21 at 04:05
-
1@KenSharp My understanding is that `LnkCap` is the link capability, not the current throughput rate. Do you have a source for your claim? – quazgar Sep 28 '21 at 07:59
-
22
You can use the "dmidecode" command to give an in depth list of all the hardware on the system and then view that. I did a "quick and dirty" command to show the pertinent bit as follows:
dmidecode | grep "PCI"
Which returned
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
davidgo
- 68,623
- 13
- 106
- 163
-
7`dmidecode --type 9` can also be used to filter while keeping the rest of the information. – BenC Jan 19 '16 at 02:24
-
8
-
I think this lists the slot native speed but if the BIOS has a slot set to previous generation or an older card is dropping the slot generation I don't think this reflects it. – BoeroBoy Jan 24 '23 at 14:13