Gaming with an eGPU? Is it Worth it?

It was on Reddit (/r/linux_gaming) last month for a couple of days, so you may have missed it, but Man_With_Arrow did some tests on his eGPU setup and published them for everyone to see.

This may be a new term for some of you: eGPUs stand for external GPUs. Typically your business laptop is far too feeble to handle any graphics intensive game or application, and one of the solutions to deal with this is to link your laptop to an external GPU card, itself connected to a separate screen via their video out. There are several caveats in such setups, but since it’s rare enough and benchmarks (on Linux) are difficult to find, it’s an interesting topic to explore and document. Note that all the test results, testing and pictures shared below were produced by Man_With_Arrow. He has agreed to let me publish them to raise the general awareness of this topic. I hope you will find it as helpful as I did, and I am very grateful for his work on this matter.

Man_With_Arrow’s setup, using a X230 from Lenovo.

The great thing that Man_With_Arrow did was to actually test in almost a single variable environment the difference of performance between the same GPU card used on his laptop vs his desktop. You can see below the two machines involved in this setup:

LaptopDesktop
CPUi5-3230M (2 cores) at 3.2 Ghz Ryzen 7 1700 (8 cores) at 3.8 Ghz
MBLenovo X230 MBGigabyte AB350 Gaming 3
RAM12GB16GB
GPUSapphire AMD Radeon 4GB
R9 Fury Nitro
Sapphire AMD Radeon 4GB
R9 Fury Nitro
PCIExpressCard 2 to PCIePCIe 3.0
Gbps4 Gbps126 Gbps (16 lanes)
SSD500 GB Samsung SSD 850500 GB Samsung SSD 850
OSManjaro 4.19.6-1
Manjaro 4.19.8-2
EnvKDE Plasma 5.14.4KDE Plasma 5.14.4
XX Server 1.20.3X Server 1.20.3
GLMesa 18.2.6Mesa 18.2.6

In case you were wondering what kind of alchemy is involved to get an eGPU setup to work nowadays on Linux, it’s apparently as simple at that:

– Buy eGPU bridge and power supply. Make sure you have a compatible interface (Expresscard, M.2, Thunderbolt, etc.) for your laptop.
– Turn off laptop. Connect eGPU to laptop, and power supply to eGPU (make sure PSU is also off).
– Flick on PSU switch; turn on laptop.

Man_With_Arrow

Even I who has been following the topic of eGPU from time to time, expected more steps involved in getting this to work. Apparently not, and modern distros are making it a walk in the park.

This setup has been tested with the following games:

  • Bioshock Infinite
  • Counter Strike GO
  • Metro: Last Light
  • Tomb Raider

Let’s jump directly at the results (generated with the Phoronix test suite). Note that each game was tested at two different resolutions, but it doesn’t change much as you will see.

Of course, one should have had no expectations that the results would be similar between the 2 setups. Yet, I find them extremely impressive nonetheless!

First, the meager i5 from the X230 laptop is no match in single thread performance compared to the more recent Ryzen 7 1700. It is hard to find proper benchmarks comparing one versus the other but it looks like there may be about 50% of single thread performance for the i5 compared to the Ryzen, which is what matters most for games.

Second, the PCI-e interface is another kick in the butt. Even if the CPU could manage certain games fine, the transfer speeds between the motherboard and the eGPU are limited to 4Gbps, which causes substantial performance drops. Since the 4Gbps ExpressCard 2.0 interface is equivalent to a PCI-e 2.0 with 4 lanes (4Gbps), prior articles on the subject show that this should incur around 10 to 15% drop in terms of framerate compared to PCI 3.0 at 16 lanes.

So, the major contributor in the drop of performance here is clearly the CPU. Unfortunately, CPU single thread performance on laptops has pretty much plateaued for the past 5-6 years (there are some modest improvements) while power consumption is down and number of cores are up. More modern laptops will have better interfaces for eGPUs (thunderbolt will basically get rid of the 15% drop of performance caused by the bandwidth limitation I mentioned earlier), but CPU bottle-necked games will be hit hard nevertheless.

I guess what really matters, beyond numbers, is if you can actually game on such a setup. And the answer is a resounding YES, even with the major loss of framerate – the aforementioned games would run at least at 30fps constantly or 60fps if you were to downgrade graphics quality a little.

So it is a reasonable setup to consider – it’s probably cheaper than building a full fledged desktop, and may get you about half way there in performance. Now, there are numerous options on the market to consider, such as laptops with discrete GPU chips (expensive and so far hardware support on Linux has been adventurous to say the least – maybe AMD will lead the change there), or a used desktop on which you add a brand new GPU (my choice with the Xeon I purchased last year), or gaming thru streaming with a very fast broadband connection and a subscription to some of the available services in your area.

I would think this is a pretty good setup if you have a “free” GPU card lying around, and want to make use of it without investing in a desktop.

At least, you should now have some data to make an educated judgment on how well eGPUs will perform on Linux.

Many thanks again to Man_With_Arrow! Feel free to contact him to get more information!


BoilingSteam lets you access our content for free, but writing articles is a constant investment. We don't use ads or sponsporship, help us make our activities sustainable by donating via Patreon or LiberaPay if you prefer it anonymous. You can follow what we do via our newsletter, our RSS feed, our Mastodon profile or our Twitter feed. We also have Peertube, Youtube and LBRY channels. If you'd like to chat, you can also find us on #boilingsteam:matrix.org. (what is Matrix?)

5 1 vote
Article Rating
Subscribe
Notify of
guest

7 Comments
Newest
Oldest Most Voted
Inline Feedbacks
View all comments
ask

do u test this using windows?

bisby

Often for people the option isn’t “laptop or desktop” but people are forced into laptop for mobility reasons. I would love to see a “laptop vs laptop + egpu” comparison in the mix just to demonstrate “this isn’t as fast as a desktop, but it is [or isn’t] better than just using a built in laptop GPU if you are forced to use a laptop”

bisby

That’s not how eGPU’s are used though. Some people are required to have a laptop for mobility purposes (taking it to classes for note-taking, etc). But they only game at home. So having an eGPU dock be available to play games when at home, but still having mobility is nice. Showing the single digit framerates is a nice reminder that even though you are getting ~half the framerates of a desktop, it’s still much nicer than just using a laptop as is. The options for mobile constrained users are: * Use the laptop as is. The HD 4000 is going… Read more »

calvin

As someone with a cat, I wouldn’t trust an eGPU system without a case for the GPU and PSU. Do ones exist for ExpressCard based eGPU setups?

It’d also be interesting to see data for Thunderbolt setups.