SYSTEM INFO:
- endeavourOS 6.10.3-1-cachyos
- Kernel parameters:
- nvidia_uvm nvidia_drm.modeset=1 nvidia_drm.fbdev=1 nvidia.NVreg_PreserveVideoMemoryAllocations=1
- KDE Plasma 6.1.4 on Wayland
- AMD Ryzen 7 7800X3D with iGPU enabled on BIOS
- NVIDIA RTX 3080 with nvidia-beta-dkms 560.31.02-1
- Main display plugged on NVIDIA GPU (display port)
- Secondary display plugged on motherboard (display port)
I want to be able to make use of my iGPU (AMD Raphael on a Ryzen 7 7800X3D) to render everything, and run my games on my NVIDIA RTX 3080. It's a desktop PC, I have 2 monitors, my main one is plugged to my 3080 and the secondary is plugged to the motherboard, and by doing so, VRR/Gsync works on my main display (the only workaround to get VRR working with a NVIDIA card and multiple monitors). The second thing I would like to do is for Firefox on my second screen to render/decode with my iGPU, so I can watch videos and streams there without sacrificing my frames on my games (losing about 20 frames playing Helldivers 2 if a video is playing on the background because it uses my dGPU to decode).
I've installed nvidia-prime
from AUR and added the udev rules as written on arch wiki, however it seems that my iGPU isn't being used at all
❯ lspci | grep VGA
01:00.0 VGA compatible controller: NVIDIA Corporation GA102 [GeForce RTX 3080 Lite Hash Rate] (rev a1)
11:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Raphael (rev cb)
❯ glxinfo | grep "OpenGL renderer"
OpenGL renderer string: NVIDIA GeForce RTX 3080/PCIe/SSE2
I've noticed that moving my cursor and windows on my desktop is now slower/laggier (check notes below), and my turing smart monitor can't detect my NVIDIA GPU, but that's the extent of the changes. When I open Firefox directly on my second screen and play a video, with nvtop
I can see that my NVIDIA GPU is the one doing the work with my iGPU not being utilised at all: https://i.imgur.com/CPPICUk.png (notice how there is no usage at all on my iGPU)
I've got a screenshot while I was playing Helldivers 2 and playing a video at the same time, and if I paused the video I'd get my frames back. Using prime-run
to run my games has no difference since everything is being handled by the dGPU anyways.
Is there anything I'm missing here? I'm happy to provide more info but I'm a bit clueless on how to troubleshoot this more so any help is much appreciated.
NOTE: Regarding the choppy cursor, it is not because of GSP firmware. I've tested the proprietary drivers with and without GSP firmware, and the open drivers since 550 and I haven't noticed a single difference in my setup, they all perform exactly the same. Besides, I'm using the beta 560 drivers which are open modules only, which needs GSP firmware enabled.
I'm running Wayland. I do feel that Plasma is using my iGPU to render the desktop since it's quite noticeable some stutters and lower performance compared to disabling the iGPU and having both monitors on my dGPU, but unfortunately I can't really chose what gets rendered by what. On Windows, this setup works fine, I can chose Firefox to use the "power saving" or whatever and it runs on my iGPU, videos get decoded by it.
I tried plugging my monitors on my motherboard (I have a HDMI and DP outputs) and it works as expected, everything renders on the iGPU and I'd need prime-run for my games, though this is far from ideal since I lose VRR and HDR.