Question Can PCIe 3.0 x4 card achive same max speed when in PCIe 2.0 x8 slot?

Mar 23, 2019
3
0
10
Hello. I'm trying to google my way to an authoritative answer, but coming up short. If I purchase a PCIe 3.0 x4 card (max bandwith of 3.94GB/sec) and put it into a PCIe 2.0 x8 or x16 slot (4.0 or 8.0 GB/sec.), will I be able to get the full bandwith of the PCIe 3.0 card? Or does merely the presence of a 3.0 card in a 2.0 architecture halve the max performance of the 3.0 card, regardless of the max throughput of x8 and x16 2.0 slots? Thanks. - Ben
 

Math Geek

Titan
Ambassador
your math is right. x8 2.0 is the same speed as x4 3.0. so the drive will run the same speed in both cases. you do need to ensure you are actually getting the x8 2.0 from the slot though. often the slot may be rated for that if certain conditions are met and may be slower in other cases. same with your #1 x16 slots. your motherboard manual should break down for you how the slots and lanes are used and in what scenarios.

obviously if that slot is only running at x4, then you'll be losing speed for the shiny new 3.0 ssd.
 
Mar 23, 2019
3
0
10
Math Geek, thanks for the reply. I'm a skeptic. Trying to have confidence here before I buy. I do know the difference between physical x16 slot and electrical x16 slot. I know for sure the specs of the slots on my mobo. But how does this work? Often time we can see how many lanes a PCIe 2.0 card will have by how many pins are present. You can easily spot a x1 card, a x4 and an x8 because they have more pins. I know this may not always be the fool-proof way of knowing, but it leads me to this thought: When I look at the marketing of a PCIe 3.0 x4 card and can see in the picture that the amount of pins looks like any x4 card I've ever seen, how can I tap into the extra bandwidth of an 2.0 x8 slot assuming the extra bandwidth in that 2.0 slot is spread out in the other pin mates, which the 3.0 x4 card is not long enough to plug in to? My understanding of how this works may be totally wrong, so trying to understand. Here is the card in question:

https://www.gigabyte.com/us/Motherboard/GC-TITAN-RIDGE-rev-10#kf

Thanks.
 

Math Geek

Titan
Ambassador
the bandwidth is not from the card itself. it is from the lanes on the motherboard. that's why the x4 card looks the same as a pcie 2.0 x4 card and so on. the actual pcie lane attached to the slot is where the bandwidth lies.

my answer was based on a gpu that uses the whole length of the slot and not this add-on card.

so seems the theoretical answer vs the practical answer is different. a single 3.0 lane is twice as fast as a single 2.0 one hence the conclusion that 3.0 x4 = 2.0 x8. however, noting that the card itself only uses 4 lanes (the pin layout and size you noted) then it would only be using x4 2.0 lanes which is half what would be available with a 3.0 slot. so you will likely see slowed performance with the card on your older system. i believe the only way to use the extra lanes would be if the card plugged into the entire slot and hoped to use all the available lanes. then it could use the x8 2.0 lanes available and see the same performance as the x4 3.0 it expects.

the card you linked would not do that and would be using half the bandwidth it expects. it really depends on what you want to plug into the thunderbolt ports and what their true bandwidth needs are. an external ssd would be fine but slower while an external gpu doc would be hurt big time with only half bandwidth.
 
Mar 23, 2019
3
0
10
Thanks again Math Geek. Yes, the GPU example is the common one I found while searching around, and they were all dealing with comparisons with higher-end GPUs which all have full length x16 connections. You've helped me verify what I thought was correct but wasn't fully sure of. Thank you.
 

kanewolf

Titan
Moderator
Hello. I'm trying to google my way to an authoritative answer, but coming up short. If I purchase a PCIe 3.0 x4 card (max bandwith of 3.94GB/sec) and put it into a PCIe 2.0 x8 or x16 slot (4.0 or 8.0 GB/sec.), will I be able to get the full bandwith of the PCIe 3.0 card? Or does merely the presence of a 3.0 card in a 2.0 architecture halve the max performance of the 3.0 card, regardless of the max throughput of x8 and x16 2.0 slots? Thanks. - Ben
Since you say the card is an X4 then it will be X4 always. So it will have 1/2 the bandwidth in a PCIe 2.0 slot.
 

Karadjgne

Titan
Ambassador
So let's say the math is correct. On that assumption if the slots physical layout allows for a 4GB/S bandwidth and the card is capable of only 3.94GB/S, it's going to get max bandwidth. Since 3.96GB/S is trying to run on a 4GB/S set of lanes.

The other assumption I'll make is that you'll probably never saturate the bandwidth. You may come close at times with large file transfers, but other than that you'll not see any performance drop or change since you won't reach those numbers.

You also have to consider the other factors such as ram, memory controller, cpu processing etc as ssd speeds exceed those other components capabilities to use, so while an SSD is capable of 4GB/S, you may only see 2-3GB/S actually used.

Does it make a difference if a Corvette can do 250mph and a minivan struggles to get 90mph when speed limits only range from 30mph to 70mph?
 

joevt1

Reputable
Apr 19, 2016
18
0
4,520
A PCIe 3.0 x4 card will run at PCIe 2.0 x4 in a PCIe 2.0 x4, x8, or x16 slot unless there is a PCIe 3.0 switch or bridge between the card and the slot with at least 8 upstream lanes for the slot and 4 downstream lanes for the card. The switch chip will then convert the PCIe 3.0 x4 of the card to PCIe 2.0 x8 or x16 of the slot. Of course, PCIe 2.0 x4 slots are stuck at x4.

The Broadcom PLX chips (with PEX model numbers) are common PCIe switch chips. PCIe expansion boxes use them to convert one slot into multiple slots. PCIe M.2 cards may use a switch to allow connecting multiple M.2 drives. Motherboards may use a switch to add additional slots. PCIe cards may use a switch to connect multiple controller (for example, USB and SATA). Any of those examples may have the additional benefit of converting fast/narrow links (e.g. PCIe 3.0 x4) to slower/wider links (e.g. PCIe 2.0 x8).