Do you have a network adapter where you need to find the PCIe link speed in Windows? Common reasons include troubleshooting and verification of installation. Some platforms, such as the Intel Xeon D-1500 / D-1600, and AMD EPYC systems mix different PCIe generations on the same motherboard. Also, some systems will lower link rates to lower power consumption. The process can be entirely frustrating. Here is the simple way to see PCIe link speed in 30 seconds.
How to Get Network Adapter PCIe Link Speed in Windows
Step 1: Start PowerShell – There are many ways to get to PowerShell. Perhaps the easiest is to bring up the Windows menu and start typing “PowerShell”. We have had a few cases where this did not work for us unless we selected Run as Administrator via the right menu or right-clicking and selecting via the context menu.
Step 2: Get Network Adapter Link Speeds – PowerShell has a “Get-NetAdapterHardwareInfo” feature. Copy and paste that in PowerShell and you should see all network connections enumerated. One of the Columns is PcieLinkSpeed.
Here is a handy table that will let you know how the bandwidth that corresponds to PCIe Gen1, Gen2, and Gen3 adapters:
- PCIe Gen1 2.5GT/s
- PCIe Gen2 5.0GT/s
- PCIe Gen3 8.0GT/s
The PCIe Gen3 8.0GT/s may seem strange, but that is due to a change in encoding for the PCIe protocol with PCIe 3.0 which means one gets around twice the performance using 8GT/s speeds.
- PCIe 1.1: 250MB/s per lane
- PCIe 2.0: 500MB/s per lane
- PCIe 3.0: 985MB/s per lane (effective)
If you have a 100GbE adapter in a PCIe Gen2 x8 slot, you are clearly not going to have enough bandwidth available.
This was not a huge guide by any means. Linux has fairly easy tools to get at this data. Many Windows 10 and Windows Server users do not know the Get-NetAdapterHardwareInfo trick to help get the PCIe speed that a network adapter is currently running at. We hope this guide helps our readers.