You are not logged in.

#1 2024-01-19 15:19:26

TheRobotFox
Member
Registered: 2024-01-19
Posts: 3

intel + nvidia X11 PRIME Sync

Hi,
After installing a second NVME SSD yesterday i noticed that my second monitor (connected to intel APU) lags, whenever it updates and pulls my GPU (NVIDIA GTX 1080TI) to 100% usage.
My primary Monitor (connected to the GPU) doesn't have that issue.
There has been a driver update since, but i didn't fix the Problem.
I've actually found, that manually activating PRIME Synchronization completely fixes the issue:

$ xrandr --output DP-1-4 --set "PRIME Synchronization" 1

But putting it into my ".xinitrc" does not do anything, so there seems to be a issue on a deeper level here.
I don't know where to look i have(always had) a minimal X11 config so that shouldn't be a problem right

Section "InputClass"
	Identifier "system-keyboard"
	MatchIsKeyboard "on"
	#Option "XkbLayout" "de"
	Option "XkbVariant" "altgr-intl"
EndSection

 Section "Device"
         Identifier "nvidia"
	 #MatchDriver "nvidia-drm"
         Driver "nvidia"
 EndSection

Section "Device"
        Identifier "intel"
        Driver "modesetting"
        BusID "PCI:0:2:0"
EndSection
[new@ArchLinux X11]$ lspci
00:00.0 Host bridge: Intel Corporation 8th/9th Gen Core 8-core Desktop Processor Host Bridge/DRAM Registers [Coffee Lake S] (rev 0a)
00:01.0 PCI bridge: Intel Corporation 6th-10th Gen Core Processor PCIe Controller (x16) (rev 0a)
00:02.0 VGA compatible controller: Intel Corporation CoffeeLake-S GT2 [UHD Graphics 630]
00:14.0 USB controller: Intel Corporation Cannon Lake PCH USB 3.1 xHCI Host Controller (rev 10)
00:14.2 RAM memory: Intel Corporation Cannon Lake PCH Shared SRAM (rev 10)
00:16.0 Communication controller: Intel Corporation Cannon Lake PCH HECI Controller (rev 10)
00:17.0 SATA controller: Intel Corporation Cannon Lake PCH SATA AHCI Controller (rev 10)
00:1b.0 PCI bridge: Intel Corporation Cannon Lake PCH PCI Express Root Port #17 (rev f0)
00:1b.4 PCI bridge: Intel Corporation Cannon Lake PCH PCI Express Root Port #21 (rev f0)
00:1c.0 PCI bridge: Intel Corporation Cannon Lake PCH PCI Express Root Port #1 (rev f0)
00:1d.0 PCI bridge: Intel Corporation Cannon Lake PCH PCI Express Root Port #9 (rev f0)
00:1f.0 ISA bridge: Intel Corporation Z390 Chipset LPC/eSPI Controller (rev 10)
00:1f.3 Audio device: Intel Corporation Cannon Lake PCH cAVS (rev 10)
00:1f.4 SMBus: Intel Corporation Cannon Lake PCH SMBus Controller (rev 10)
00:1f.5 Serial bus controller: Intel Corporation Cannon Lake PCH SPI Controller (rev 10)
00:1f.6 Ethernet controller: Intel Corporation Ethernet Connection (7) I219-V (rev 10)
01:00.0 VGA compatible controller: NVIDIA Corporation GP102 [GeForce GTX 1080 Ti] (rev a1)
01:00.1 Audio device: NVIDIA Corporation GP102 HDMI Audio Controller (rev a1)
03:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller SM981/PM981/PM983
05:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller SM981/PM981/PM983

Here is my ".xinitrc"

#!/bin/sh

userresources=$HOME/.Xresources
usermodmap=$HOME/.Xmodmap
sysresources=/etc/X11/xinit/.Xresources
sysmodmap=/etc/X11/xinit/.Xmodmap

# merge in defaults and keymaps

if [ -f $sysresources ]; then

    xrdb -merge $sysresources

fi

if [ -f $sysmodmap ]; then
    xmodmap $sysmodmap
fi

if [ -f "$userresources" ]; then



    xrdb -merge "$userresources"

fi

if [ -f "$usermodmap" ]; then
    xmodmap "$usermodmap"
fi

# start some nice programs

if [ -d /etc/X11/xinit/xinitrc.d ] ; then
 for f in /etc/X11/xinit/xinitrc.d/?*.sh ; do
  [ -x "$f" ] && . "$f"
 done
 unset f
fi


# configure Moniors
xrandr --output DP-1-4 --auto --right-of DP-2  --set "PRIME Synchronization" 1

nitrogen --restore
udiskie &
#picom &
i3

Also my "Xorg.0.log"
https://pastebin.com/WLkgmQEc

I'd be really grateful for any advise!
Thank you in advance,
Tomke

Offline

#2 2024-01-20 20:58:52

cgb_spender
Member
Registered: 2024-01-15
Posts: 48
Website

Re: intel + nvidia X11 PRIME Sync

Hi, are you sure that the issue is caused by the new SSD? Did you try removing it? Perhaps the issue was caused by an update? You could try a different video driver for NVidia, e.g., nouveau, and you can try different Arch kernels and fallback versions.


Only one thing is certain: nothing is certain.

Offline

#3 2024-01-22 12:58:46

TheRobotFox
Member
Registered: 2024-01-19
Posts: 3

Re: intel + nvidia X11 PRIME Sync

I still don't understand, why i have to now, but executing

xrandr --output DP-1-4 --set "PRIME Synchronization" 1

in my "i3/config" seems to work (also when waking from suspense).
Not happy with this incident, but this workaround does it's job.

Offline

#4 2024-01-22 14:56:41

seth
Member
From: Won't reply 2 private help req
Registered: 2012-09-03
Posts: 76,045

Re: intel + nvidia X11 PRIME Sync

[  4282.189] (II) Loading /usr/lib/xorg/modules/extensions/libglx.so
[  4282.190] (II) Module glx: vendor="X.Org Foundation"
[  4282.267] (II) Loading sub module "glxserver_nvidia"
[  4282.267] (II) LoadModule: "glxserver_nvidia"
[  4282.267] (WW) Warning, couldn't open module glxserver_nvidia
[  4282.268] (EE) NVIDIA: Failed to load module "glxserver_nvidia" (module does not exist, 0)
[  4282.268] (EE) NVIDIA(0): Failed to initialize the GLX module; please check in your X
[  4282.268] (EE) NVIDIA(0):     log file that the GLX module has been loaded in your X
[  4282.268] (EE) NVIDIA(0):     server, and that the module is the NVIDIA GLX module.  If
[  4282.615] (II) Initializing extension GLX
[  4282.615] (II) AIGLX: Screen 0 is not DRI2 capable
[  4282.629] (II) IGLX: Loaded and initialized swrast
[  4282.629] (II) GLX: Initialized DRISWRAST GL provider for screen 0

This is bad.
The ModulePath would be extended to the nvidia location on a driver match, but that match doesn't happen - the nvidia driver loads because

[  4282.183] (==) Using config file: "/etc/X11/xorg.conf"

(looks like optimus-manager)
Get rid of that, post the update of "pacman -Qkk nvidia-utils" and your complete system journal for the boot:

sudo journalctl -b | curl -F 'file=@-' 0x0.st

Might just be a race condition where the X11 server starts before the nvidia GPU is ready because you don't have the modules in the initramfs?

Online

Board footer

Powered by FluxBB