Hi all,
Just wondering how progress is on eGPU docks? I want to upgrade my GPU at some point and thought it might be cool to put it in a dock and connect it to a laptop. The laptop has a couple thunderbolt ports.
How’s compatibility these days?
I have an AKiTiO Node Titan eGPU enclosure with a GTX 1070 hooked up to an Ubuntu 22.04 laptop and it’s working pretty well. I’m doing PCI passthrough to an Arch Linux VM, since my company mandated that all Linux users must use Ubuntu. To stave off comments about this, I’ll say that it’s not just that I dislike Ubuntu. They’re requiring me to lock down so much stuff that I can’t do my job. Plus, the endpoint security sensor on the host plays absolute hell with anything that uses heavy multiprocessing. The GPU (with external monitors), second NVMe drive, mouse, keyboard, audio interface, microphone, webcam, 30 gigs of RAM, and 11 CPU cores are passed to the VM, and the host OS gets the laptop GPU + monitor and my continuing disdain.
I’ve been using this setup for a month. My experience thus far has been positive. I start the computer up with or without the GPU connected, connect the GPU if I haven’t yet, launch my VM via libvirt, and things just work. I really thought I’d have more problems with the GPU, but the USB passthrough stuff has been the truly problematic part (I can’t just pass the whole PCI USB controller for IOMMU reasons). It’s important to note that the GPU displays directly to external monitors. I think it’s possible to like, send the data back to your laptop screen? But I really didn’t want that.
(As an aside, the security people at my company have no problems with VMs lol. They know what I’ve done and they don’t seem to care).
Makes me wonder if this is a possible future. Just get a small nuc like computer and connect it to an egpu.
It definitely is, but likely comes with a slight performance sacrifice due to bus speeds.
It’s more than slight! I ran a 3090 in an eGPU for a while and it lost around 40% of performance compared to when it was in my case.
For sure. It’s something I’ve considered for a while simply because I don’t need that extra heat/noise created by the GPU when I’m only doing my day job.
I have extensively used an eGPU (Razer Core X) with an Nvidia RTX 3050 for gaming under Wayland. Using X11 gave me nothing but problems, but Wayland allows for full hotplug capabilities (as long as no monitors are ever connected to the GPU).
Of course, performance is fairly bad with the official Nvidia drivers + Wayland, but it’s good enough to play The Outer Worlds and a few other single player games, which is good enough for me! I have been entirely unable to get external monitors to work with the Nvidia driver (any help would be much appreciated), although they did work (coldplug) with the Nouveau driver.
When I was using Windows, I was able to hotplug/unplug the eGPU with monitors attached, effectively turning the GPU into an external docking station–I am closely following driver improvements, as this would be great to have on Linux to get around the 2-monitor limitation of the Intel iGPU.
Hmm, that doesn’t sound great. Can I ask what laptop you were using and which distro?
I’m using the Surface Laptop Studio with EndeavourOS (basically arch, so I have all the latest packages)–the performance issues stem from Nvidia’s drivers, so AMD should not suffer from the same problems, although I don’t have any AMD cards to test if hotplug with monitors is functional
Disclaimer: I have exactly 0 personal experience with eGPU’s.
According to the archwiki:
While some manual configuration (shown below) is needed for most modes of operation, Linux support for eGPUs is generally good.