You are not logged in.
Hello, I'm installing arch on a new machine I am using with an external 4k monitor, and I'm struggling to get my nvidia graphics card to work.
---
Output for lspci:
00:02.0 VGA compatible controller: Intel Corporation Alder Lake-P Integrated Graphics Controller (rev 0c)
DeviceName: Onboard - Video
Subsystem: Tongfang Hongkong Limited Device 1173
--
01:00.0 3D controller: NVIDIA Corporation GA107M [GeForce RTX 3050 Ti Mobile] (rev a1)
Subsystem: Tongfang Hongkong Limited Device 1173
Kernel driver in use: nouveau
With pacman I installed xorg sddm plasma kde-applcations -- GUI works fine but its not using my graphics card.
-------------
I tried a number of things outlined below and all results in:
Failed to start Load Kernel Modules error
....
EDAC MC0: Giving out device to module igen6_edac controller
>>>> Intel_client_SoC MC#0: DEV 0000:00:00.0 (INTERRUPT)
...
igen6 MC0: HANDLING IBECC MEMORY ERROR
------
I no longer have access to tty and only way to get into OS again is to boot from USB, mount the disk and reverse the changes via arch-chroot.
------
Tried:
1) Following instructions here https://howto.lintel.in/install-nvidia-arch-linux/
2) Install nvidia, nvidia-utils,nvidia-settings,opencl-nvidia and follow instructions here for Nvidia only : https://wiki.archlinux.org/title/NVIDIA … phics_only && SDDM /usr/share/sddm/scripts/Xsetup
Same result as above.
Any ideas please?
Thanks
Offline
GUI works fine but its not using my graphics card
1:00.0 3D controller: NVIDIA Corporation GA107M [GeForce RTX 3050 Ti Mobile] (rev a1)
Unless you can deactivate the IGP in the BIOS and elevate the nvidia chip to a VGA dedvice this way, you cannot run on the nvidia chip (only)
xrandr --listprovidersWhat's the point of this? Why don't you run the session on the IGP and "prime-run superturboturkeypuncher3" to use the GPU w/ eg. games?
https://archlinux.org/packages/extra/any/nvidia-prime/
Offline
Thanks for the response.
I wanted to primarily use the GPU because I intend to use the machine as a daily driver for trading (external display, multiple tradingview charts open etc) and assumed utilizing the GPU constantly would outperform on demand. Not sure if my thinking is wrong.
As things stand, I'm not sure the GPU is being used at all, I can't even watch 4k videos on youtube as everything is blurry, so my priority is ensuring that at the very least I can watch 4k videos and have multiple charts open without latency.
Any guides/steps I could follow to set that up as anything I am trying seems to lead to out of memory.
Offline
HW accelerated browser videos are a complete mess beyond any question of what GPU you're using.
Use youtube-viewer
Post your present xorg log and the output of "glxinfo -B" and "prime-run glxinfo -B"
Offline
Appreciate the help Seth, thank you.
Pasting xorg.log (note there are messages for the USB keyboard + mouse that are due to my using of a USB switch so those can be ignored):
xorg.log: https://pastebin.com/sRqeGAmg
xorg.log.old: https://pastebin.com/NeYk297X
glxinfo:
name of display: :0
display: :0 screen: 0
direct rendering: Yes
Extended renderer info (GLX_MESA_query_renderer):
Vendor: Intel (0x8086)
Device: Mesa Intel(R) Graphics (ADL GT2) (0x46a6)
Version: 22.3.1
Accelerated: yes
Video memory: 31841MB
Unified memory: yes
Preferred profile: core (0x1)
Max core profile version: 4.6
Max compat profile version: 4.6
Max GLES1 profile version: 1.1
Max GLES[23] profile version: 3.2
OpenGL vendor string: Intel
OpenGL renderer string: Mesa Intel(R) Graphics (ADL GT2)
OpenGL core profile version string: 4.6 (Core Profile) Mesa 22.3.1
OpenGL core profile shading language version string: 4.60
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL version string: 4.6 (Compatibility Profile) Mesa 22.3.1
OpenGL shading language version string: 4.60
OpenGL context flags: (none)
OpenGL profile mask: compatibility profile
OpenGL ES profile version string: OpenGL ES 3.2 Mesa 22.3.1
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
prime-run no command found (I had to uninstall nvidia driver/utils etc so I assume this is why.
Offline
Please use code tags for file contents and shell I/O and readability, https://bbs.archlinux.org/help.php#bbcode
prime-run no command found (I had to uninstall nvidia driver/utils etc so I assume this is why.
installing the nvidia driver (AND kernel module!) and nvidia-prime should pose absolutely no problem.
You're supposed to end up running on the intel chip and the nvidia one being available on demand.
Just don't create a config file using nvidia-settings
This is gonna be required to check on the GPU situation.
In the meantime
vainfoand you want to take a look at https://wiki.archlinux.org/title/Hardwa … celeration (it might be required to set the LIBVA_DRIVER_NAME on your system)
Offline
Tried using the nvidia installer on their website which also builds the kernel module. It was missing the pre-reqs to build the kernel module so I pacman -S linux-headers, re-ran the installation and it ran successfuly until ~ 96% at which point the nvidia installer was spamming the below errors:
mp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia-modeset.o: warning: objtool: _nv000091kms+0x5: 'naked' return found in RETHUNK build
/tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia-modeset.o: warning: objtool: _nv000092kms+0xa: 'naked' return found in RETHUNK build
/tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia-modeset.o: warning: objtool: _nv000094kms+0x4f: 'naked' return found in RETHUNK build
/tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia-modeset.o: warning: objtool: _nv000101kms+0x67: 'naked' return found in RETHUNK build
/tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia-modeset.o: warning: objtool: _nv000101kms+0xb8: 'naked' return found in RETHUNK build
/tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia-modeset.o: warning: objtool: _nv000702kms+0x1c: 'naked' return found in RETHUNK build
/tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia-modeset.o: warning: objtool: _nv000705kms+0x63: 'naked' return found in RETHUNK build
/tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia-modeset.o: warning: objtool: _nv000023kms+0x81: 'naked' return found in RETHUNK build
/tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia-modeset.o: warning: objtool: _nv000666kms+0xcc: 'naked' return found in RETHUNK build
/tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia-modeset.o: warning: objtool: _nv000666kms+0x100: 'naked' return found in RETHUNK build
...
..
..
/tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia-modeset.o: warning: objtool: _nv002156kms+0x6f: missing int3 after ret
/tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia-modeset.o: warning: objtool: _nv000599kms+0x15: missing int3 after ret
/tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia-modeset.o: warning: objtool: _nv002751kms+0xa: missing int3 after ret
/tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia-modeset.o: warning: objtool: _nv002751kms+0x32f: missing int3 after ret
/tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia-modeset.o: warning: objtool: _nv002036kms+0xb3: missing int3 after ret
/tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia-modeset.o: warning: objtool: _nv000606kms+0x15: missing int3 after ret
/tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia-modeset.o: warning: objtool: _nv000594kms+0xf0: missing int3 after ret
/tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia-modeset.o: warning: objtool: _nv000594kms+0xf8: missing int3 after ret
/tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia-modeset.o: warning: objtool: _nv000605kms+0x16b: missing int3 after ret
/tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia-modeset.o: warning: objtool: _nv002947kms+0xd9: missing int3 after ret.
...
...
/tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia.o: warning: objtool: _nv003347rm+0xd47: relocation to !ENDBR: _nv025914rm+0x0
/tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia.o: warning: objtool: _nv003347rm+0xd69: relocation to !ENDBR: _nv025908rm+0x0
/tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia.o: warning: objtool: _nv003347rm+0xd90: relocation to !ENDBR: _nv025922rm+0x0
/tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia.o: warning: objtool: _nv003347rm+0xdd9: relocation to !ENDBR: _nv026008rm+0x0
/tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia.o: warning: objtool: _nv003347rm+0xe06: relocation to !ENDBR: _nv026029rm+0x0
/tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia.o: warning: objtool: _nv003347rm+0xe83: relocation to !ENDBR: _nv025995rm+0x0
/tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia.o: warning: objtool: _nv003347rm+0xea5: relocation to !ENDBR: _nv025944rm+0x0
/tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia.o: warning: objtool: _nv003347rm+0xec1: relocation to !ENDBR: _nv025940rm+0x0
/tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia.o: warning: objtool: _nv003347rm+0xee3: relocation to !ENDBR: _nv025958rm+0x0
/tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia.o: warning: objtool: _nv003347rm+0xf05: relocation to !ENDBR: _nv025955rm+0x0
/tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia.o: warning: objtool: _nv003347rm+0xf27: relocation to !ENDBR: _nv025952rm+0x0
/tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia.o: warning: objtool: _nv003347rm+0xf49: relocation to !ENDBR: _nv026025rm+0x0
....
...
/tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia.o: warning: objtool: _nv035321rm+0x74: missing int3 after ret
/tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia.o: warning: objtool: _nv011480rm+0x5e: missing int3 after ret
/tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia.o: warning: objtool: _nv035625rm+0x131: missing int3 after ret
/tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia.o: warning: objtool: _nv035625rm+0x13e: missing int3 after ret
MODPOST /tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/Module.symvers
CC [M] /tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia-drm.mod.o
CC [M] /tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia-modeset.mod.o
CC [M] /tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia-peermem.mod.o
CC [M] /tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia-uvm.mod.o
CC [M] /tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia.mod.o
LD [M] /tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia-modeset.ko
LD [M] /tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia-peermem.ko
LD [M] /tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia-uvm.ko
LD [M] /tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia.ko
BTF [M] /tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia-peermem.ko
BTF [M] /tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia-modeset.ko
LD [M] /tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia-drm.ko
BTF [M] /tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia-drm.ko
BTF [M] /tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia-uvm.ko
BTF [M] /tmp/selfgz2040/NVIDIA-Linux-x86_64-525.60.11/kernel/nvidia.ko
make[1]: Leaving directory '/usr/lib/modules/6.1.1-arch1-1/build'
-> done.
-> Kernel module compilation complete.On rebooting there appears to be no changes to any of the outputs I sent above / and 4k video still lagging/blurry.
Last edited by archt0kx (2023-01-01 15:49:19)
Offline
Tried using the nvidia installer
NO! Where did you get that idea?
Use the repo packages, https://wiki.archlinux.org/title/NVIDIA
Also see the note that says "ibt=off"
Offline
Appreciate your patience.
Back to the drawing board:
pacman -S --needed nvidia nvidia-utils nvidia-settings
I then edited /etc/modprobe.d adding file nvidia-installer-disable-nouveau.conf:
blacklist nouveau
options nouveau modeset=0
edited /etc/default/grub to GRUB_CMDLINE_LINUX="ibt=off"
grub-mkconfig -o /boot/grub/grub.cfg
Edited /etc/mkinitcpio.conf removing kms from HOOKS
mkinitcpio -POn rebooting I can run nvidia-smi but it shows GPU-Util 0% and Xorg using 4Mib of memory
lspci -k | grep -A 2 -E "(VGA|3D)"
00:02.0 VGA compatible controller: Intel Corporation Alder Lake-P Integrated Graphics Controller (rev 0c)
DeviceName: Onboard - Video
Subsystem: Tongfang Hongkong Limited Device 1173
--
01:00.0 3D controller: NVIDIA Corporation GA107M [GeForce RTX 3050 Ti Mobile] (rev a1)
Subsystem: Tongfang Hongkong Limited Device 1173
Kernel driver in use: nvidiaI've tired opening multiple videos to strain the GPU but it doesn't appear to be in use(and 4k video still blurry). I have not ran nvidia-settings yet as you mentioned it might create a config.
Offline
On rebooting I can run nvidia-smi but it shows GPU-Util 0% and Xorg using 4Mib of memory
That's fine, the server will run on the intel chip.
Try
prime-run glxinfo -Bor
prime-run glxgearsI've tired opening multiple videos to strain the GPU but it doesn't appear to be in use(and 4k video still blurry).
The IGP DSP should be sufficient to decode h264, possibly h265 (vainfo?), but again: the browser situation is more complicated.
Starting with: which browser do you want to use?
Offline
Thanks again Seth, ill add the outputs below but tldr it looks like the GPU is working when required through prime-run but otherwise its idle. I have a couple of questions:
1) Is an xorg.conf required? I thought perhaps the GPU isn't being utilised for this reason so I tried a few examples of xorg.conf from the wiki as well as default (nvidia-xconfig) but any time I had an xorg.conf my system would hang on a black screen before login. I tried appending my xinitrc after following instructions here https://wiki.archlinux.org/title/NVIDIA … X_shutdown -- but this also did not work. At the moment I'm not using any xorg.conf
2) In continuing tests I tried adding the GPU to SDDM config and editing /etc/mkinitcpio.conf:
systemctl status display-manager
● sddm.service - Simple Desktop Display Managerxrandr --listproviders
Providers: number : 2
Provider 0: id: 0x48 cap: 0xf, Source Output, Sink Output, Source Offload, Sink Offload crtcs: 4 outputs: 6 associated providers: 0 name:modesetting
Provider 1: id: 0x29f cap: 0x0 crtcs: 0 outputs: 0 associated providers: 0 name:NVIDIA-G0Edit /usr/share/sddm/scripts/Xsetup
xrandr --setprovideroutputsource modesetting NVIDIA-G0
xrandr --autoEdit /etc/mkinitcpio.conf & mkinitcpio -P linux
MODULES=(nvidia nvidia_modeset nvidia_uvm nvidia_drm)3) Assuming I am missing something above, is there any way to push the OS to assign more of the load to the GPU other than via nvidia-settings performance mode? I've been trying to open multiple windows to push the system but the GPU is still idling.
4) I tested manually running chromium through prime-select to force the GPU to be used however I am getting errors:
$ prime-run chromium
[5774:5774:0101/203232.935272:ERROR:angle_platform_impl.cc(43)] Display.cpp:1004 (initialize): ANGLE Display::initialize error 12289: Invalid visual ID requested.
ERR: Display.cpp:1004 (initialize): ANGLE Display::initialize error 12289: Invalid visual ID requested.
[5774:5774:0101/203232.935480:ERROR:gl_display.cc(508)] EGL Driver message (Critical) eglInitialize: Invalid visual ID requested.
[5774:5774:0101/203232.935552:ERROR:gl_display.cc(920)] eglInitialize OpenGL failed with error EGL_NOT_INITIALIZED, trying next display type
[5774:5774:0101/203232.935931:ERROR:angle_platform_impl.cc(43)] Display.cpp:1004 (initialize): ANGLE Display::initialize error 12289: Invalid visual ID requested.
ERR: Display.cpp:1004 (initialize): ANGLE Display::initialize error 12289: Invalid visual ID requested.
[5774:5774:0101/203232.936055:ERROR:gl_display.cc(508)] EGL Driver message (Critical) eglInitialize: Invalid visual ID requested.
[5774:5774:0101/203232.936150:ERROR:gl_display.cc(920)] eglInitialize OpenGLES failed with error EGL_NOT_INITIALIZED
[5774:5774:0101/203232.936176:ERROR:gl_ozone_egl.cc(23)] GLDisplayEGL::Initialize failed.
[5774:5774:0101/203232.937432:ERROR:viz_main_impl.cc(186)] Exiting GPU process due to errors during initialization
[5841:5841:0101/203233.040869:ERROR:angle_platform_impl.cc(43)] Display.cpp:1004 (initialize): ANGLE Display::initialize error 12289: Invalid visual ID requested.
ERR: Display.cpp:1004 (initialize): ANGLE Display::initialize error 12289: Invalid visual ID requested.
[5841:5841:0101/203233.041001:ERROR:gl_display.cc(508)] EGL Driver message (Critical) eglInitialize: Invalid visual ID requested.
[5841:5841:0101/203233.041032:ERROR:gl_display.cc(920)] eglInitialize OpenGL failed with error EGL_NOT_INITIALIZED, trying next display type
[5841:5841:0101/203233.041525:ERROR:angle_platform_impl.cc(43)] Display.cpp:1004 (initialize): ANGLE Display::initialize error 12289: Invalid visual ID requested.
ERR: Display.cpp:1004 (initialize): ANGLE Display::initialize error 12289: Invalid visual ID requested.
[5841:5841:0101/203233.041588:ERROR:gl_display.cc(508)] EGL Driver message (Critical) eglInitialize: Invalid visual ID requested.
[5841:5841:0101/203233.041620:ERROR:gl_display.cc(920)] eglInitialize OpenGLES failed with error EGL_NOT_INITIALIZED
[5841:5841:0101/203233.041651:ERROR:gl_ozone_egl.cc(23)] GLDisplayEGL::Initialize failed.
[5841:5841:0101/203233.043426:ERROR:viz_main_impl.cc(186)] Exiting GPU process due to errors during initialization
[5877:5877:0101/203233.061638:ERROR:angle_platform_impl.cc(43)] Display.cpp:1004 (initialize): ANGLE Display::initialize error 0: Internal Vulkan error (-3): Initialization of an object could not be completed for implementation-specific reasons, in ../../third_party/angle/src/libANGLE/renderer/vulkan/RendererVk.cpp, initialize:1430.
ERR: Display.cpp:1004 (initialize): ANGLE Display::initialize error 0: Internal Vulkan error (-3): Initialization of an object could not be completed for implementation-specific reasons, in ../../third_party/angle/src/libANGLE/renderer/vulkan/RendererVk.cpp, initialize:1430.
[5877:5877:0101/203233.061788:ERROR:gl_display.cc(508)] EGL Driver message (Critical) eglInitialize: Internal Vulkan error (-3): Initialization of an object could not be completed for implementation-specific reasons, in ../../third_party/angle/src/libANGLE/renderer/vulkan/RendererVk.cpp, initialize:1430.
[5877:5877:0101/203233.061906:ERROR:gl_display.cc(920)] eglInitialize SwANGLE failed with error EGL_NOT_INITIALIZED
[5877:5877:0101/203233.061951:ERROR:gl_ozone_egl.cc(23)] GLDisplayEGL::Initialize failed.
[5877:5877:0101/203233.063916:ERROR:viz_main_impl.cc(186)] Exiting GPU process due to errors during initialization
[5886:5886:0101/203233.075599:ERROR:gpu_init.cc(523)] Passthrough is not supported, GL is disabled, ANGLE is $ prime-run glxinfo -B
name of display: :0
display: :0 screen: 0
direct rendering: Yes
Memory info (GL_NVX_gpu_memory_info):
Dedicated video memory: 4096 MB
Total available memory: 4096 MB
Currently available dedicated video memory: 3897 MB
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: NVIDIA GeForce RTX 3050 Ti Laptop GPU/PCIe/SSE2
OpenGL core profile version string: 4.6.0 NVIDIA 525.60.11
OpenGL core profile shading language version string: 4.60 NVIDIA
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL version string: 4.6.0 NVIDIA 525.60.11
OpenGL shading language version string: 4.60 NVIDIA
OpenGL context flags: (none)
OpenGL profile mask: (none)
OpenGL ES profile version string: OpenGL ES 3.2 NVIDIA 525.60.11
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20$ prime-run glxgears
Running synchronized to the vertical refresh. The framerate should be
approximately the same as the monitor refresh rate.
453 frames in 5.0 seconds = 90.558 FPS
450 frames in 5.0 seconds = 89.990 FPS
450 frames in 5.0 seconds = 89.998 FPS
451 frames in 5.0 seconds = 89.998 FPSLast edited by archt0kx (2023-01-01 18:59:14)
Offline
Is an xorg.conf required?
No.
xrandr --setprovideroutputsource modesetting NVIDIA-G0
Is not going to work because of
Provider 1: id: 0x29f cap: 0x0 crtcs: 0 outputs: 0 associated providers: 0 name:NVIDIA-G0This is a pure 3D controller and from an earlier thread, you'll likely not be able to use it for HW accelerated video playback either.
prime-run glxinfo -B
This works, the setup is correct and you can likely also run superturbo… eg. https://archlinux.org/packages/community/x86_64/warsow/ on that (though the game should not be all that demanding on the GPU)
I tested manually running chromium through prime-select to force the GPU to be used however I am getting errors:
Abandon that idea.
If you want HW accelerated video playback you should first establish that it works at all, then move on to trying to convince your browser to use it (to give you a rough idea: there's a perpetual thread on that topic, https://bbs.archlinux.org/viewtopic.php?id=244031&p=29 - tl;dr: it sucks)
vainfo
mpv -v video.mp4Offline