Can I find out if PCI-e slot is 1.0, 2.0 or 3.0 in linux terminal?

19

6

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?

starcorn

Posted 2013-12-27T23:50:13.530

Reputation: 2 136

1Not asked, but nice to know: A PCI-e v3 card will run fine on an PCI-e v2 slot. – Hennes – 2014-04-23T18:41:53.077

Answers

17

Using lspci -vv, 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

Posted 2013-12-27T23:50:13.530

Reputation: 437

6This needs to run as root; without it, lspci silently prints Capabilities: <access denied>, which is removed by the grep. – FauxFaux – 2017-07-05T19:29:46.557

7That's what the # means. – goetzc – 2017-08-13T23:12:09.177

9

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

Posted 2013-12-27T23:50:13.530

Reputation: 49 152

4dmidecode --type 9 can also be used to filter while keeping the rest of the information. – BenC – 2016-01-19T02:24:36.573