eGPU

Don't lose those screws...
Post Reply
Adam
Posts: 2240
Joined: Wed Oct 23, 2013 9:50 pm

eGPU

Post by Adam »

I usually play games using my desktop, but sometimes that isn't always practical. Configuring a machine (usually a laptop) with an external GPU would allow more upgradability to the otherwise fixed configuration of graphics in a given laptop. There are several ways to do this, but they are all basically an external dock which you attach your GPU to and a mechanism to connect it to the machine via PCI Express.

The best way (most lanes=most performance) is to use Thunderbolt 3 (or earlier specs which give to less than 16 lanes). The drawback of this is getting a laptop which supports this means your laptop is only a year or two old, which doesn't help me as my newest laptop is 9 years old. These tend to be more expensive but usually look nice and include an internal power supply for the GPU. This one even comes with a GTX 1070: https://www.amazon.com/XCSOURCE-Externa ... B0725B6L99

The next best way is to leverage an internal mini-PCI Express slot in the laptop and connect it to an external dock via an adapter like: https://www.amazon.com/XCSOURCE-Externa ... B0725B6L99. This usually involves cutting a hole somewhere in the laptop to run the cable out as well as the obvious loosing a port. Most laptops only have one of these ports and it is usually used by the internal WiFi adapter.

The third and least best (least number of lanes) is to leverage an ExpressCard 2.0 slot with an adapter. That interface spec is essentially a hot-pluggable PCI Express lane available externally which means no holes in your laptop which weren't already there. https://www.amazon.com/Laptop-External- ... B07KZV8XZH

As far as selecting a PC on which to run this setup, you need something which has one of the above interfaces and a BIOS which supports this (on purpose or not). There are lots of shenanigans with patching BIOSs to add needed feature support for this and other stuff which I didn't feel like dealing with. Fortunately for me, the BIOSs in most modern Lenovos seem to support this w/o issue. That combined with my W510's QM57 chipset gave me a good shot. There are ways to get this working on Win7, but Win10 does a much better job of supporting hot-pluggable PCI Express things. That or a Linux machine with a 4.x kernel. You also need a power supply. The EXP GDC thing than use an ATX power supply with an adapter or, more conveniently, a Dell DA-2 power supply with its weird 8-pin connector https://www.ebay.com/itm/Dell-DA-2-USFF ... 2715003388.

Long story short, it works.

There are some considerations and pros/cons for this setup:
Pros:
- Running a modern GPU on a old laptop
- Cheaper than building a desktop or buying a new laptop
- ExpressCard interface doesn't require cutting holes in things
- Can drive as many displays as the external GPU supports

Cons:
- You can only run 1 Nvidia driver at a time. This is an issue for my setup as there isn't a driver than can support both the Quadro FX880M and the GTX950 that I've added. The laptop is using the MS Basic Display driver for the on-board video so 1280x1024 is the best I get rather than the panel's native 1920x1080.
- Lots of cables although an enclosure would pretty things up.
- The DA-2 is 220W so that limits the GPU selection. Also the PCI-e power supply connector on the EXP GDC is only 6-pin so no 8-pin GPUs w/o adapters or a different power supply.
w510_dev_man.png
w510_task_man.png
Background reading: https://egpu.io/

I also tried this setup on my X200s. It is not completely compatible. Linux sees the GPU, but can't initialize it with any driver w/o crashing the kernel. It is even older than the W510, so not terribly surprising.
Adam
Posts: 2240
Joined: Wed Oct 23, 2013 9:50 pm

Re: eGPU

Post by Adam »

So why would anyone do this at all? Games is the obvious answer, but there are also other application which could benefit from a higher performance GPU:
- Video encoding, transcoding, or other video processing tasks which can leverage GPUs for things
- Same as above but for images
- CAD-type things like SolidWorks
- Modeling things like Matlab or Mathmatica
- GPU-compute things which leverage OpenCL (cross platform) or CUDA (Nvidia) or whatever AMD cards support for this
- 3D modeling things for game asset building or other non-game things
- Running all the displays https://www.newegg.com/Product/ProductL ... erSearch=1

As far as money goes, you can get the adapter, power supply and a low-end GPU for under ~$200. Even a lower-end discrete GPU will outperform any non-gaming laptop GPU. Plus, if you are using it as a portable computer, you get to keep your battery life.
kevm14
Posts: 15200
Joined: Wed Oct 23, 2013 10:28 pm

Re: eGPU

Post by kevm14 »

Adam wrote:as my newest laptop is 9 years old
Fortunately for me, the BIOSs in most modern Lenovos seem to support this w/o issue.
lol
kevm14
Posts: 15200
Joined: Wed Oct 23, 2013 10:28 pm

Re: eGPU

Post by kevm14 »

Yeah that is a very niche thing you did there. Anyone who plays games or any of those other things with any regularity is going to spring for either an updated laptop or a dedicated PC for those tasks.

On a somewhat related note, my Vaio just got the April 2018 update for W10. I don't use the machine though it is still plugged in and "available." It is from mid-2006. Try running the latest Mac OS on an Apple laptop from mid-2006. Can't be done. In fact, the latest release you can run on such an old machine is from August 28, 2009. 2009! That is using the same CPU as my Vaio (a Core Duo 32-bit). If you have a late 2006 machine with the new Core 2 Duo (64-bit) you can run up to 10.7.5 dated July 20, 2011. But I digress.
Adam
Posts: 2240
Joined: Wed Oct 23, 2013 9:50 pm

Re: eGPU

Post by Adam »

kevm14 wrote:Yeah that is a very niche thing you did there. Anyone who plays games or any of those other things with any regularity is going to spring for either an updated laptop or a dedicated PC for those tasks.
$200 is a lot less than $1500. Or even $700-800 for a capable used model.

Also, in my particular case I'm updating the GPU(s) in my desktop every few years anyway, this just gives me another thing to do with them before I give them to people who won't use them for anything.
Post Reply