I’ve been seeing a sprinkling of mentions here and there about how using an eGPU might be bottlenecked by the amount of bandwidth offered by a USB-C Thunderbolt port. However, I don’t really know how to plan for this. I’m supposed to watch out for something to do with PCIe lanes or something but I don’t really understand how it works.
How many “lanes” does Framework’s USB-C Thunderbolt have? Will a Zotac GTX 1060 Mini be bottlenecked?
Assuming the Framework laptop can support Thunderbolt 4, then one port must provide at least 32 Gbit/s of bandwidth for PCIe (equivalent to 4 PCIe Gen 3 lanes). Bandwidth usage depends on the type of load; gaming on a 1060 shouldn’t max out the Thunderbolt 4 PCIe bandwidth. You could probably find some I/O heavy task that would max it out, though.
Unfortunately, you should still expect a performance loss. Running the GPU outside of the computer adds latency, as does waiting for the GPU to write back to the internal display buffer (which is why plugging your eGPU into an external monitor can improve performance). That latency is the real bottleneck. Around 25% performance loss is common, but I believe it’s worse for more powerful GPUs.
It is possible to overcome the latency issues. The Alienware Graphics Amplifier (the discontinued eGPU for some Alienware laptops) had a pretty small performance hit, but that used a proprietary port and some other custom internals. Now, even that only had PCIe 3.0 x4.
Mobile processors typically have few PCIe lanes, which makes it hard to just slap a x16 port on everything. Another user mentioned that the Tiger Lake CPUs only have 20 PCIe lanes.
@Jacob_Padgett I see… so if I had a Thunderbolt eGPU but with an external monitor, I should still expect to see a 25% performance dip in something like video editing or 3D rendering compared to a desktop? (I don’t really plan to game that much)
Yes, some overhead will be present simply due to the thunderbolt controller and cable. However if you are intending on minimizing degradation, the two biggest things you can do to minimize impact are actually relatively simple:
- Use a high quality TB cable, the shorter the better. In other words, minimize the bottleneck caused by the cable. This sounds really stupid but it can make or break the setup.
- If you have a working setup then the single biggest improvement is to use an external monitor hooked up to the eGPU, not to the laptop. Making the video signal travel back to the laptop worsens timing issues and takes bandwidth out of the TB connection.
I just checked the forums of my video/creative software and it seems like the 20-25% performance drop issue (WITH an external monitor) is true. Gaming doesn’t need all the bandwidth like rendering does, where I want to use all available GPU power.
Oh well, I’ll still use my Framework laptop on the go but it looks like I’ll have to stick to building an SFFPC for my needs.
Thanks for clarifying this bottleneck everyone!
That’s unfortunate with the bottleneck. I’d check to make sure they’re reporting similar GPUs and that it’s not being skewed by people expecting a 3080Ti to not saturate 4 x PCIe gen 3 lanes.
A desktop with a real PCIe connection to the GPU will always be more performant than an eGPU setup (thus why I too have a SFFPCand elected against an eGPU + laptop), but the main advantage of eGPUs is that the file system is always the same whether you’re on the go or docked at home. There are ways to make up for this (e.g. I use a VPN and remote desktop to access my home computer) but they’re always a little jank. There’s something to be said for that convenience.
@Frosty Yeah I really loved the idea of having a workstation powerhouse that I could pluck from my desk and it turns into a flat and portable laptop that has all of my files, as well as a small enclosure that contains the GPU to take to a friend’s house in a backpack or on a plane in a suitcase (but an entire SFFPC also does this.) I really want the option of using a super powerful card one day though, so I’ll stick to having two machines instead of going the eGPU route. I could even fulfill part of the 3-2-1 rule for file backups by keeping the desktop and laptop files synced with Syncthing, and then put Veracrypt on both drives for maximum peace of mind. Until Framework comes out with a laptop that has a mindblowing PCIe slot for full GPU bandwidth, I’ll stick to having two computers that are both repairable. (Goodbye ThinkPad!)
The performance hit is noticeable, and I think it’s worth it most of the time. Your 1060 Mini is pretty dated, but still 2-3x faster at most things than the Iris Xe. Intel leaked (probably more like teased) 80 Gb/s on Thunderbolt 5, but that would still leave us with closer to 4-lane performance given PCIe 4.
Yeah, unfortunately doesn’t help us with this generation of mainboard. The future looks bright though!