How to run desktop background with dedicated GPU?

Hello CachyOS forum,
I’ve installed Smart Video Wallpaper Reborn for Plasma 6 but my old computers integrated Intel graphics seems to be too weak to handle it, slows down the computer.

I’ve followed

and my question is, how do I run a desktop video background with dedicated GPU? In my case, I have nvidia, it’s an older GeForce GT 650M but I do have the option to switcheroo CachyBrowser for instance.

Is there a prime-run for the desktop background?

I don’t know where ‘Smart Video Wallpaper Reborn’ is installed, if I know its program name I could try to prime-run the wallpaper plugin?

The same question is for the Shader Wallpaper plugin, how can I prime-run the Shader Wallpaper plugin, or switcheroo it?

Or do I need to __NV_PRIME_RENDER_OFFLOAD=1 __VK_LAYER_NV_optimus=NVIDIA_only __GLX_VENDOR_LIBRARY_NAME=nvidia

Please note, I don’t know if my old nvidia GeForce GT 650M supports Optimus, as far as I have read it doesn’t. Still possible to use prime-run? I do have managed to get the switcheroo-control to work!

Br, Totte

I think you GPU is too old for that. Normally you could make it dedicated only, but not with these old GPUs.

Yes, everything, which you offload will be used with your nvidia gpu

Do you know how to run the desktop background service / wallpaper plugin with dedicated GPU? How do I accomplish that?

The only thing I can think of would be to set some environment variables for the application in mind. Should be possible to do it if you use an opengl driver override and gallium driver over ride on the specific application properties.

Could it be that CachyOS is so great that it actually automatically activates my nvidia discrete card while running the video wallpaper?

Here’s the output BEFORE setting my desktop background to video wallpaper:
sudo lsof /dev/nvidia*
[sudo] password for totte:
lsof: WARNING: can’t stat() fuse.portal file system /run/user/1000/doc
Output information may be incomplete.
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
Xorg 685 root mem CHR 195,255 564 /dev/nvidiactl
Xorg 685 root mem CHR 195,0 613 /dev/nvidia0
Xorg 685 root 9u CHR 195,255 0t0 564 /dev/nvidiactl
Xorg 685 root 16u CHR 195,254 0t0 563 /dev/nvidia-modeset
Xorg 685 root 17u CHR 195,255 0t0 564 /dev/nvidiactl
Xorg 685 root 24u CHR 195,0 0t0 613 /dev/nvidia0
Xorg 685 root 25u CHR 195,0 0t0 613 /dev/nvidia0
Xorg 685 root 26u CHR 195,0 0t0 613 /dev/nvidia0
Xorg 685 root 27u CHR 195,254 0t0 563 /dev/nvidia-modeset
Xorg 685 root 31u CHR 195,0 0t0 613 /dev/nvidia0
Xorg 685 root 32u CHR 195,0 0t0 613 /dev/nvidia0
Xorg 685 root 36u CHR 195,0 0t0 613 /dev/nvidia0
Xorg 685 root 57u CHR 195,0 0t0 613 /dev/nvidia0
Xorg 685 root 58u CHR 195,0 0t0 613 /dev/nvidia0

Here’s the output AFTER setting my desktop background to video wallpaper:
sudo lsof /dev/nvidia*
lsof: WARNING: can’t stat() fuse.portal file system /run/user/1000/doc
Output information may be incomplete.
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
Xorg 685 root mem CHR 195,255 564 /dev/nvidiactl
Xorg 685 root mem CHR 195,0 613 /dev/nvidia0
Xorg 685 root 9u CHR 195,255 0t0 564 /dev/nvidiactl
Xorg 685 root 16u CHR 195,254 0t0 563 /dev/nvidia-modeset
Xorg 685 root 17u CHR 195,255 0t0 564 /dev/nvidiactl
Xorg 685 root 24u CHR 195,0 0t0 613 /dev/nvidia0
Xorg 685 root 25u CHR 195,0 0t0 613 /dev/nvidia0
Xorg 685 root 26u CHR 195,0 0t0 613 /dev/nvidia0
Xorg 685 root 27u CHR 195,254 0t0 563 /dev/nvidia-modeset
Xorg 685 root 31u CHR 195,0 0t0 613 /dev/nvidia0
Xorg 685 root 32u CHR 195,0 0t0 613 /dev/nvidia0
Xorg 685 root 36u CHR 195,0 0t0 613 /dev/nvidia0
Xorg 685 root 57u CHR 195,0 0t0 613 /dev/nvidia0
Xorg 685 root 58u CHR 195,0 0t0 613 /dev/nvidia0
plasmashe 887 totte mem CHR 195,255 564 /dev/nvidiactl
plasmashe 887 totte mem CHR 195,0 613 /dev/nvidia0
plasmashe 887 totte 96u CHR 195,255 0t0 564 /dev/nvidiactl
plasmashe 887 totte 97u CHR 239,0 0t0 566 /dev/nvidia-uvm
plasmashe 887 totte 98u CHR 195,0 0t0 613 /dev/nvidia0
plasmashe 887 totte 99u CHR 195,0 0t0 613 /dev/nvidia0
plasmashe 887 totte 116u CHR 195,0 0t0 613 /dev/nvidia0
plasmashe 887 totte 131u CHR 195,255 0t0 564 /dev/nvidiactl
plasmashe 887 totte 132u CHR 195,0 0t0 613 /dev/nvidia0
plasmashe 887 totte 133u CHR 195,0 0t0 613 /dev/nvidia0
plasmashe 887 totte 134u CHR 195,0 0t0 613 /dev/nvidia0
plasmashe 887 totte 135u CHR 195,0 0t0 613 /dev/nvidia0
plasmashe 887 totte 136u CHR 195,0 0t0 613 /dev/nvidia0
plasmashe 887 totte 137u CHR 195,0 0t0 613 /dev/nvidia0
plasmashe 887 totte 139u CHR 195,0 0t0 613 /dev/nvidia0
plasmashe 887 totte 152u CHR 195,255 0t0 564 /dev/nvidiactl
plasmashe 887 totte 153u CHR 195,0 0t0 613 /dev/nvidia0
plasmashe 887 totte 154u CHR 195,0 0t0 613 /dev/nvidia0
plasmashe 887 totte 155u CHR 195,0 0t0 613 /dev/nvidia0

Am I interpreting CachyOS correctly?

When looking at glxinfo | grep “OpenGL renderer”
OpenGL renderer string: Mesa Intel(R) HD Graphics 4000 (IVB GT2)

As I’ve shown in my previous post in this thread, the process that activates when I set my desktop background to video wallpaper is the process plasmashe 887.

Is it for the plasmashell process that I need to set opengl driver override and gallium driver over ride? How do I do that?

Based on your output, it looks like it is already selecting nvidia as the default. In this case I don’t think there is any point in modifying variables since nvidia is already chosen as the handler.

Yeah, I guess it is fair to say that CachyOS is handling this very well and it is my computer that is too old! :laughing: