I purchased a system76 Thelio Mira Elite With a AMD Radeon RX 7900 XT. I kinda regret not going with Nvidia at this point but it is what it is. I primarily use it as a developer workstation, but want to play games on it as well so I can be rid of my windows box.
I didn’t expect it to be able to play the latest and greatest games but I did expect it to be able to play older titles reasonably well. Games launch from steam and seem to work, but I’m getting between 0 and 10 fps on the title screen of Kerbal Space Program. Other games are similarly functional but poorly performing.
Where do I start? How can I ensure my GPU is being leveraged? Is this as good as it gets?
Yeah, so it’s not using hardware acceleration then – your (poor) CPU has been trying to do all this in software emulation. I updated my comment above – take a look in Xorg.0.log if you’re on Xorg. My first guess is that you most-likely need newer drivers.
I know that these are new enough for the 7900 XTX; that’s current for Debian trixie, just to provide a known-good point in terms of driver version.
EDIT: You don’t say what distro you’re using. If you’re using Debian stable – I think I was when I first got my 7900 XTX, and IIRC they didn’t have driver support in at that point, though that was a while back now – you might check whether you have the backports repository present.
EDIT2: The first results for my search as to minimum supported version, though I wouldn’t take this as authoritative:
https://old.reddit.com/r/debian/comments/1301rph/radeon_7900_support/
EDIT3: Sorry, you did say which OS you were using – PopOS.
dpkg -l|grep radeon
ii libdrm-amdgpu-radeon1:amd64 1:2.4.120.60103-1787201.22.04 amd64 Userspace interface to radeon-specific kernel DRM services -- runtime ii libdrm-radeon1:amd64 2.4.120-1pop1~1706792268~22.04~bfb54ee amd64 Userspace interface to radeon-specific kernel DRM services -- runtime ii libdrm-radeon1:i386 2.4.120-1pop1~1706792268~22.04~bfb54ee i386 Userspace interface to radeon-specific kernel DRM services -- runtime ii radeontop 1.4-1 amd64 Utility to show Radeon GPU utilization ii xserver-xorg-video-radeon 1:19.1.0-2ubuntu1 amd64 X.Org X server -- AMD/ATI Radeon display driver
I don’t know exactly what i’m looking for in the xorg logs… cat /var/log/Xorg.*.log | grep “EE”
cat /var/log/Xorg.*.log | grep “WW”
[ 5068.047] (WW) Falling back to old probe method for modesetting [ 5068.047] (WW) Falling back to old probe method for fbdev
cat /var/log/Xorg.*.log | grep “gpu”
[ 5067.696] (II) Applying OutputClass "AMDgpu" to /dev/dri/card1 [ 5067.696] loading driver: amdgpu [ 5067.696] (==) Matched amdgpu as autoconfigured driver 0 [ 5067.696] (II) LoadModule: "amdgpu" [ 5067.696] (II) Loading /usr/lib/xorg/modules/drivers/amdgpu_drv.so [ 5067.696] (II) Module amdgpu: vendor="X.Org Foundation" All GPUs supported by the amdgpu kernel driver
sudo journalctl -kb | grep gpu
Feb 15 08:59:51 pop-os kernel: [drm] amdgpu kernel modesetting enabled. Feb 15 08:59:51 pop-os kernel: amdgpu: Virtual CRAT table created for CPU Feb 15 08:59:51 pop-os kernel: amdgpu: Topology: Add CPU node Feb 15 08:59:51 pop-os kernel: amdgpu 0000:03:00.0: enabling device (0006 -> 0007) Feb 15 08:59:51 pop-os kernel: amdgpu 0000:03:00.0: amdgpu: Fetched VBIOS from VFCT Feb 15 08:59:51 pop-os kernel: amdgpu: ATOM BIOS: 113-APM7199-002 Feb 15 08:59:51 pop-os kernel: amdgpu 0000:03:00.0: amdgpu: CP RS64 enable Feb 15 08:59:51 pop-os kernel: amdgpu 0000:03:00.0: [drm:jpeg_v4_0_early_init [amdgpu]] JPEG decode is enabled in VM mode Feb 15 08:59:51 pop-os kernel: amdgpu 0000:03:00.0: vgaarb: deactivate vga console Feb 15 08:59:51 pop-os kernel: amdgpu 0000:03:00.0: amdgpu: Trusted Memory Zone (TMZ) feature not supported Feb 15 08:59:51 pop-os kernel: amdgpu 0000:03:00.0: amdgpu: MEM ECC is not presented. Feb 15 08:59:51 pop-os kernel: amdgpu 0000:03:00.0: amdgpu: SRAM ECC is not presented. Feb 15 08:59:51 pop-os kernel: amdgpu 0000:03:00.0: amdgpu: VRAM: 16368M 0x0000008000000000 - 0x00000083FEFFFFFF (16368M used) Feb 15 08:59:51 pop-os kernel: amdgpu 0000:03:00.0: amdgpu: GART: 512M 0x00007FFF00000000 - 0x00007FFF1FFFFFFF Feb 15 08:59:51 pop-os kernel: [drm] amdgpu: 16368M of VRAM memory ready Feb 15 08:59:51 pop-os kernel: [drm] amdgpu: 64286M of GTT memory ready. Feb 15 08:59:51 pop-os kernel: [drm] GART: num cpu pages 131072, num gpu pages 131072 Feb 15 08:59:51 pop-os kernel: amdgpu 0000:03:00.0: amdgpu: Will use PSP to load VCN firmware Feb 15 08:59:51 pop-os kernel: amdgpu 0000:03:00.0: amdgpu: reserve 0x1300000 from 0x83fc000000 for PSP TMR Feb 15 08:59:51 pop-os kernel: amdgpu 0000:03:00.0: amdgpu: RAP: optional rap ta ucode is not available Feb 15 08:59:51 pop-os kernel: amdgpu 0000:03:00.0: amdgpu: SECUREDISPLAY: securedisplay ta ucode is not available Feb 15 08:59:51 pop-os kernel: amdgpu 0000:03:00.0: amdgpu: smu driver if version = 0x0000003d, smu fw if version = 0x00000040, smu fw program = 0, smu fw version = 0x004e7e00 (78.126.0) Feb 15 08:59:51 pop-os kernel: amdgpu 0000:03:00.0: amdgpu: SMU driver if version not matched Feb 15 08:59:51 pop-os kernel: amdgpu 0000:03:00.0: amdgpu: SMU is initialized successfully! Feb 15 08:59:51 pop-os kernel: amdgpu 0000:03:00.0: [drm:jpeg_v4_0_hw_init [amdgpu]] JPEG decode initialized successfully. Feb 15 08:59:51 pop-os kernel: amdgpu: HMM registered 16368MB device memory Feb 15 08:59:51 pop-os kernel: kfd kfd: amdgpu: Allocated 3969056 bytes on gart Feb 15 08:59:51 pop-os kernel: kfd kfd: amdgpu: Total number of KFD nodes to be created: 1 Feb 15 08:59:51 pop-os kernel: amdgpu: Virtual CRAT table created for GPU Feb 15 08:59:51 pop-os kernel: amdgpu: Topology: Add dGPU node [0x744c:0x1002] Feb 15 08:59:51 pop-os kernel: kfd kfd: amdgpu: added device 1002:744c Feb 15 08:59:51 pop-os kernel: amdgpu 0000:03:00.0: amdgpu: SE 6, SH per SE 2, CU per SH 8, active_cu_number 80 Feb 15 08:59:51 pop-os kernel: amdgpu 0000:03:00.0: amdgpu: ring gfx_0.0.0 uses VM inv eng 0 on hub 0 Feb 15 08:59:51 pop-os kernel: amdgpu 0000:03:00.0: amdgpu: ring comp_1.0.0 uses VM inv eng 1 on hub 0 Feb 15 08:59:51 pop-os kernel: amdgpu 0000:03:00.0: amdgpu: ring comp_1.1.0 uses VM inv eng 4 on hub 0 Feb 15 08:59:51 pop-os kernel: amdgpu 0000:03:00.0: amdgpu: ring comp_1.2.0 uses VM inv eng 6 on hub 0 Feb 15 08:59:51 pop-os kernel: amdgpu 0000:03:00.0: amdgpu: ring comp_1.3.0 uses VM inv eng 7 on hub 0 Feb 15 08:59:51 pop-os kernel: amdgpu 0000:03:00.0: amdgpu: ring comp_1.0.1 uses VM inv eng 8 on hub 0 Feb 15 08:59:51 pop-os kernel: amdgpu 0000:03:00.0: amdgpu: ring comp_1.1.1 uses VM inv eng 9 on hub 0 Feb 15 08:59:51 pop-os kernel: amdgpu 0000:03:00.0: amdgpu: ring comp_1.2.1 uses VM inv eng 10 on hub 0 Feb 15 08:59:51 pop-os kernel: amdgpu 0000:03:00.0: amdgpu: ring comp_1.3.1 uses VM inv eng 11 on hub 0 Feb 15 08:59:51 pop-os kernel: amdgpu 0000:03:00.0: amdgpu: ring sdma0 uses VM inv eng 12 on hub 0 Feb 15 08:59:51 pop-os kernel: amdgpu 0000:03:00.0: amdgpu: ring sdma1 uses VM inv eng 13 on hub 0 Feb 15 08:59:51 pop-os kernel: amdgpu 0000:03:00.0: amdgpu: ring vcn_unified_0 uses VM inv eng 0 on hub 8 Feb 15 08:59:51 pop-os kernel: amdgpu 0000:03:00.0: amdgpu: ring vcn_unified_1 uses VM inv eng 1 on hub 8 Feb 15 08:59:51 pop-os kernel: amdgpu 0000:03:00.0: amdgpu: ring jpeg_dec uses VM inv eng 4 on hub 8 Feb 15 08:59:51 pop-os kernel: amdgpu 0000:03:00.0: amdgpu: ring mes_kiq_3.1.0 uses VM inv eng 14 on hub 0 Feb 15 08:59:51 pop-os kernel: amdgpu 0000:03:00.0: amdgpu: Using BACO for runtime pm Feb 15 08:59:51 pop-os kernel: [drm] Initialized amdgpu 3.57.0 20150101 for 0000:03:00.0 on minor 2 Feb 15 08:59:51 pop-os kernel: fbcon: amdgpudrmfb (fb0) is primary device Feb 15 08:59:51 pop-os kernel: amdgpu 0000:03:00.0: [drm] fb0: amdgpudrmfb frame buffer device Feb 15 08:59:52 pop-os kernel: RAPL PMU: hw unit of domain pp1-gpu 2^-14 Joules Feb 15 08:59:52 pop-os kernel: snd_hda_intel 0000:03:00.1: bound 0000:03:00.0 (ops amdgpu_dm_audio_component_bind_ops [amdgpu]) ...
uname -r
I think this is the mesa version?
OpenGL version string: 4.5 (Compatibility Profile) Mesa 24.1.0-devel
cat /etc/os-release
NAME="Pop!_OS" VERSION="22.04 LTS" ID=pop ID_LIKE="ubuntu debian" PRETTY_NAME="Pop!_OS 22.04 LTS" VERSION_ID="22.04" HOME_URL="https://pop.system76.com/" SUPPORT_URL="https://support.system76.com/" BUG_REPORT_URL="https://github.com/pop-os/pop/issues" PRIVACY_POLICY_URL="https://system76.com/privacy" VERSION_CODENAME=jammy UBUNTU_CODENAME=jammy LOGO=distributor-logo-pop-os
Those are the kernel and Mesa versions, and at least assuming that the thing I linked above is correct as to minimum versions, you should be okay as to versions of those.
And if this is the out-of-box preinstalled OS from System76, I’d think that it’d be set up out of box for hardware acceleration. Hmm.