You are not logged in.
I have a laptop with an AMD Ryzen 5800h CPU and NVidia RTX 3060 dGPU. Thanks to driver updates in the 5.16 kernel, this now supports external displays in "Advanced Optimus" mode using the amdgpu driver and reverse PRIME. However, I am having a problem with VSync (I think) and I'm not sure which part of the software stack is at issue here.
The symptom is that certain pieces of software slow down to one refresh every second or two when they are not running on the built-in display. I have observed this with xfwm4 (uses a compositor), EasyEffects (uses GTK4), and the non-snap distribution of Spotify.
All the connected external monitors show "PRIME Synchronization: 0" in xrandr. I have tried turning on PRIME synchronization, but it just blanks the display for a few seconds and comes back on with no change to the setting.
xrandr --output DP-1-0.2 --set "PRIME Synchronization" 1I have also tried disabling vsync settings in $HOME/.drirc but nothing seemed to make a difference.
I am running Arch Linux using XOrg with the amdgpu and proprietary nvidia drivers. Would this be an issue with the amdgpu or nvidia driver? Are there any other things I can try to fix this?
Offline
A basic requirement of PRIME sync is enabling modesetting on the nvidia driver, is that the case? https://wiki.archlinux.org/title/NVIDIA … de_setting
Note that if you opt for the early loading approach for any reason you need to list the nvidia kernel modules and amdgpu to ensure that both are ready soon enough.
Offline
The nvidia_drm module is loaded at boot in the initramfs, and it has the modeset=1 parameter (set through a modprobe.d config file and confirmed in /sys/modules), so I think so, yes. Both amdgpu and the nvidia modules are listed in mkinitcpio.conf MODULES, and both are loaded at boot, with amdgpu landing first according to dmesg.
Offline