You are not logged in.
Hello everyone,
I've been using Arch Linux for a few years now, but always on AMD hardware. Recently, I got a laptop with Intel UHD Graphics and an NVIDIA GTX 1650, and I'm having trouble getting games to run on the dedicated NVIDIA GPU.
I believe I installed all the necessary drivers correctly, but when I run games, they always seem to use the integrated graphics. I installed MangoHud to check, and it confirms that the Intel GPU is being used.
I'm not sure if I missed any step in the setup. I would really appreciate it if someone could help me figure out:
1. How can I check if my hybrid graphics setup is correct?
2. How do I launch games using the dedicated NVIDIA GPU?
Last edited by PauLuke (2025-04-05 18:00:02)
Offline
Offline
I’ve already read the Arch Wiki articles about PRIME and Nouveau. I’m currently using the Nouveau drivers and followed the instructions on the PRIME page, but without success.
Offline
Offline
I'm using Hyprland and TLP (don't know if this is relevant)
The output of:
$ lspci -k | grep -A 2 -E "(VGA|3D)"is:
0000:00:02.0 VGA compatible controller: Intel Corporation TigerLake-H GT1 [UHD Graphics] (rev 01)
Subsystem: Acer Incorporated [ALI] Device 153b
Kernel driver in use: i915
--
0000:01:00.0 VGA compatible controller: NVIDIA Corporation TU117M [GeForce GTX 1650 Mobile / Max-Q] (rev a1)
Subsystem: Acer Incorporated [ALI] Device 1544
Kernel modules: nouveauThe output of:
$ DRI_PRIME=1 glxinfo | grep "OpenGL renderer"is:
OpenGL renderer string: Mesa Intel(R) UHD Graphics (TGL GT1)The output of:
$ prime-run glxinfo | grep "OpenGL renderer"is:
X Error of failed request: BadValue (integer parameter out of range for operation)
Major opcode of failed request: 150 (GLX)
Minor opcode of failed request: 24 (X_GLXCreateNewContext)
Value in failed request: 0x0
Serial number of failed request: 70
Current serial number in output stream: 71The output of:
$ cat /sys/class/drm/card*/device/power_stateis:
D0I've tried:
$ prime-run steambut this didn't work (game was still using integrated graphics). I thought this was an incorrect approach, so I tried using the following launcher command on Steam game:
__NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia %command%But that didn't work either.
Offline
This is what I have installed:
lib32-vulkan-nouveau 1:25.0.3-1
xf86-video-nouveau 1.0.18-1
vulkan-nouveau 1:25.0.3-1
mesa 1:25.0.3-1
glu 9.0.3-2
vulkan-mesa-layers 1:25.0.3-1
mesa-utils 9.0.0-5
lib32-mesa-utils 9.0.0-2
lib32-glu 9.0.3-2
lib32-vulkan-mesa-layers 1:25.0.3-1
vulkan-headers 1:1.4.309.0-1
vulkan-tools 1.4.309.0-1
vulkan-intel 1:25.0.3-1
vulkan-nouveau 1:25.0.3-1
vulkan-icd-loader 1.4.309.0-1
vulkan-radeon 1:25.0.3-1
nvidia-utils 570.133.07-1
Offline
nvidia-utils? WTF?!? Why would you install that if you're using nouveau?
Offline
I also noticed this. I don't know how I ended up installing it. I'll uninstall both nvidia-utils and vulkan-radeon.
Offline
And after a reboot, does anything change?
Offline
After rebooting, I was able to use the NVIDIA GPU in a game.
Now the output of
$ DRI_PRIME=1 glxinfo | grep "OpenGL renderer"is
OpenGL renderer string: NV167And the output of
$ cat /sys/class/drm/card*/device/power_stateis
D0
D0Thank you for your attention and help.
Last edited by PauLuke (2025-04-05 17:58:16)
Offline