Converting GT/s to Gbps


On IT and Software Engineering daily tasks it’s always very useful being able to understand what GT/s really means in terms of Gigabits per second of computable data. This post shows how to convert GT/s into Gbps.

Converting GT/s to Gbps is quite easy once the mechanics involved become clear.For example, let’s take the most common situation where converting GT/s to Gbps is very useful, PCIe (PCI Express) performances are always expressed in GT/s, while Network Card performances, instead, are expressed in Gbps. So, how can I compare PCIe performances with network card ones?

PCIe 3.x

We know that a PCIe 3.0 1x can handle up to 8GT/s (985 MB/s), so in an x8 format (8 lanes) it can handle up to 64 GT/s (7880 MB/s) per card.

To convert this value in Gbps we need to consider PCIe encoding scheme (because the encoding creates overhead during data transfer),  128b/130b for PCIe 3.0 and 8b/10b (this means that PCIe 3.0 requires 130 bits to encode 128 bits of data and PCIe 2.0 requires 10 bits to encode 8 bits of data).

So to convert our 64 GT/s into Gbps for PCIe 3.0:

64GT/s * (128b/130b) = 63.01Gbps

So theoretically an 8x PCIe 3.0 network card can transfer, over a PCIe 3.0 x8 slot, up to 63.01 Gbps

PCIe 2.x

If instead you want to convert PCIe 2.x performances:

PCIe 2.0 1x can handle up to: 5GT/s (~500MB/s), so in an x8 format means a total of 40GT/s (~4GB/s) per card.

40GT/s * (8b/10b) = 32Gbps

PCIe 4.x

If the specifics of PCIe 4.0 will stay the same until it’ll be released then for PCIe 4.0 the numbers are the following:

PCIe 4.0 x1 will handle up to 16GT/s (~2GB/s) and will require the same encoding scheme of PCIe 3.0 so, on a x8 slot it will be able to handle up to: 128GT/s (~16GB/s):

128GT/s * (128b/130b) = 125.44Gbps on x8 card

Conclusions

From what we just seen we can deduce that Gbps is the effective data rate of the PCIe while GT/s is raw measure.

We can also deduce that the overhead imposed by PCIe 3.0 is of 1.54% of the bandwidth:

((130b-128b)/130b)*100 = 1.54%

While the overhead in the previous generation PCIe 2.x was of 20%:

((10b-8b)/10b)*100 = 20%

A common question at this point would be “So, now that I know how to convert mathematically GT/s into Gbps, do I know the exact performance of my Video Card or Network card etc…?”

The general answer to this question is “not always”, the reason why so is that you need to be careful to read the SPECS of your PCIe device. Many Vendors report “Max Bandwidth” (which usually means “maximum potential bandwidth”, or nominal bandwidth). However, the effective bandwidth that your device will use of the total AVAILABLE PCIe (as we have seen above) is based on the card performances itself (some NIC card, for example, comes with a PCIe 2 x8 slot, but it cannot use it all because the NIC controller is not fast enough or because of buffer issues etc…, so, their effective bandwidth will be less than the bandwidth offered by the PCIe bus). This is also the reason why this article is called “Converting GT/s to Gbps” and not something like “Effective PCIe bandwidth usage…”  which is a total different discussion and would be specific for each system and device used.

Thanks for reading and, if you enjoyed this post, please support my blog by visiting my on-line hacking and engineering merchandise shop on redbubble.com by clicking here, thank you! 🙂

2 thoughts on “Converting GT/s to Gbps

Leave a Reply or Ask a Question

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.