Sonnet eGPU Puck freezes on Ubuntu 20.04 LTS

I’ve been having some oddities with a Sonnet eGPU puck I bought to use as an eGPU with my Framework DIY base-model laptop. It’s one of the newer examples with an Rx 5700 in it. I’m currently using the oilaf ppa because I figured it’d work out better given how new the GPU is.

However, I’ve been getting a lot of random complete system lockups. Like, the sound starts to loop, the graphics freeze, sometimes the mouse can move, but often this is in the middle of a game so nothing happens if it can 'cause the game had locked the mouse cursor.

It’s pretty frustrating. I don’t think it’s hardware related 'cause it runs intensive GPU loads fine for a while and then goes kaput for no particular reason. Anything I should be looking at to see what’s up? Scrolling through syslog it seems like GNOME might be crashing full stop but I don’t know if that’s really the cause.

Could you try to reproduce it on another distro with an up to date kernel? (E.G Fedora, openSUSE TW, Arch, etc).

1 Like

I updated the kernel at one point on my Ubuntu installation to 5.13 which seems like a relatively recent version.

I’ve also, since posting this, tried adding egpu-switcher and switching from the oilaf ppa to the kivak ppa recommended by Valve Software for Proton support, with middling results - more stable drivers when they’re working but it still occasionally locks up completely. Nothing in particular seems to cause it. It just… happens.

It might not be exactly a software issue. Have you tried running the eGPU on heavy workloads on a different device/OS?

5.13 isn’t that recent as it was released in July 2021, but it should be recent enough (5.7+ for most AMD things). But try StarrEngineer’s method to see if it’s a software or hardware problem.

Ok, update. I figured out why it’s such a pain to keep from doing stupid. Under /sys/class/drm/card1/device there’s a file labeled as power_dpm_force_performance_level which is set to auto by default. When set to auto, it crashes after a while (~90 minutes). When set to high it runs for at least several hours.

However, it resets to auto every time I reboot the computer, as the eGPU doesn’t stay on after reboot - I have to pull the USB-C cable out of the laptop and plug it back in, so I have to redo the power setting every boot, but otherwise it works. It is a software thing as I figured… I’m just not sure what I can do to fix that.

I just got a Sonnet 5700 Puck and I’m using it in Windows 10 on my 11th gen Framework without issue, which doesn’t really help you (and pardon the thread necro), BUT-

The 5700 puck runs at like 100 watts whereas the normal settings for a 5700 are around 180W. A lot of reviews complain about this because the 5500 puck runs about the same as a 5500 discrete card but the 5700 is power limited. If Linux is treating this 5700 like a discrete card…

(also, some things in windows seem to detect it as a 5700xt, which would be even worse at 225w)

20.04, while supported at a very basic level is quite old. I would want to try it with at least 22.04 using the recommended oem kernel: sudo apt-get install linux-oem-22.04

I’d start there as this would be extremely difficult to reproduce.

1 Like