You are not logged in.

#1 2021-06-28 20:56:08

NinCollin
Member
Registered: 2021-06-28
Posts: 3

Stuttery/Jittery scrolling with PRIME/prime-run

I recently purchased a hybrid gaming laptop with Intel graphics and an NVIDIA GTX 1660ti.


I'm using "Dynamic" graphics (as listed in bios,) so my display is controlled by xf86-video-intel with prime-run offloading to the NVIDIA card (with driver version 465.31-12) when running games.

Both cards are detected successfully

[collin@ranma ~]$ xrandr --listproviders

Providers: number : 2
Provider 0: id: 0x45 cap: 0xb, Source Output, Sink Output, Sink Offload crtcs: 4 outputs: 2 associated providers: 1 name:Intel
Provider 1: id: 0x220 cap: 0x2, Sink Output crtcs: 4 outputs: 3 associated providers: 1 name:NVIDIA-G0

I have enabled DRM enabled through a grub kernel parameter, and it's on.

[collin@ranma ~]$ sudo cat /sys/module/nvidia_drm/parameters/modeset
Y

However, in certain 2D games, there's noticeable jitter/stuttering when graphics are scrolling when using prime-run (which is not there when rendering using the Intel card.)
Additionally, PRIME synchronization is not available on my laptop display, but it's listed on other inactive displays.

[collin@ranma ~]$ xrandr --props

Screen 0: minimum 8 x 8, current 1920 x 1080, maximum 32767 x 32767
eDP1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 380mm x 210mm
	EDID: 
		00ffffffffffff0009e5380800000000
		011c0104a526157803c810a457519b27
		0e505400000001010101010101010101
		010101010101c23680cc703814406c30
		aa007ed71000001a0000000000000000
		00000000000000000000000000fe0042
		4f452048460a202020202020000000fe
		004e5631373346484d2d4e34370a005a
	BACKLIGHT: 1778 
		range: (0, 26666)
	Backlight: 1778 
		range: (0, 26666)
	scaling mode: Full aspect 
		supported: Full, Center, Full aspect
	Colorspace: Default 
		supported: Default, RGB_Wide_Gamut_Fixed_Point, RGB_Wide_Gamut_Floating_Point, opRGB, DCI-P3_RGB_D65, BT2020_RGB, BT601_YCC, BT709_YCC, XVYCC_601, XVYCC_709, SYCC_601, opYCC_601, BT2020_CYCC, BT2020_YCC
	max bpc: 12 
		range: (6, 12)
	Broadcast RGB: Automatic 
		supported: Automatic, Full, Limited 16:235
	panel orientation: Normal 
		supported: Normal, Upside Down, Left Side Up, Right Side Up
	link-status: Good 
		supported: Good, Bad
	non-desktop: 0 
		range: (0, 1)
   1920x1080     60.00*+
VIRTUAL1 disconnected (normal left inverted right x axis y axis)
	non-desktop: 0 
		supported: 0, 1
DP-1-0 disconnected (normal left inverted right x axis y axis)
	PRIME Synchronization: 1 
		supported: 0, 1
	CTM: 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 
		0 1 
	CscMatrix: 65536 0 0 0 0 65536 0 0 0 0 65536 0 
	BorderDimensions: 4 
		supported: 4
	Border: 0 0 0 0 
		range: (0, 65535)
	SignalFormat: DisplayPort 
		supported: DisplayPort
	ConnectorType: DisplayPort 
	ConnectorNumber: 0 
	_ConnectorLocation: 0 
	non-desktop: 0 
		supported: 0, 1
DP-1-1 disconnected (normal left inverted right x axis y axis)
	PRIME Synchronization: 1 
		supported: 0, 1
	CTM: 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 
		0 1 
	CscMatrix: 65536 0 0 0 0 65536 0 0 0 0 65536 0 
	BorderDimensions: 4 
		supported: 4
	Border: 0 0 0 0 
		range: (0, 65535)
	SignalFormat: TMDS 
		supported: TMDS
	ConnectorType: DisplayPort 
	ConnectorNumber: 0 
	_ConnectorLocation: 0 
	non-desktop: 0 
		supported: 0, 1
HDMI-1-0 disconnected (normal left inverted right x axis y axis)
	PRIME Synchronization: 1 
		supported: 0, 1
	CTM: 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 
		0 1 
	CscMatrix: 65536 0 0 0 0 65536 0 0 0 0 65536 0 
	BorderDimensions: 4 
		supported: 4
	Border: 0 0 0 0 
		range: (0, 65535)
	SignalFormat: TMDS 
		supported: TMDS
	ConnectorType: HDMI 
	ConnectorNumber: 1 
	_ConnectorLocation: 1 
	non-desktop: 0 
		supported: 0, 1

Notice how eDP1 is the only output without PRIME synchronization listed. Attempting to set it anyway throws an error.

[collin@ranma ~]$ xrandr --output eDP1 --set 'PRIME Synchronization' '1'
X Error of failed request:  BadName (named color or font does not exist)
  Major opcode of failed request:  140 (RANDR)
  Minor opcode of failed request:  11 (RRQueryOutputProperty)
  Serial number of failed request:  51
  Current serial number in output stream:  51

I'm a bit confused on how PRIME Synchronization is supposed to work, but regardless, 2D games have jittery scrolling with prime-run. Is there any way to fix this?

Offline

#2 2021-06-29 00:55:51

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 21,428

Re: Stuttery/Jittery scrolling with PRIME/prime-run

Remove xf86-video-intel it's generally buggy/in development limbo and the modesetting driver better tested with PRIME setups

Online

#3 2021-07-16 22:00:20

NinCollin
Member
Registered: 2021-06-28
Posts: 3

Re: Stuttery/Jittery scrolling with PRIME/prime-run

I'm still having some issues; I've removed the Intel driver, but PRIME Synchronization still cannot be enabled. I'm not sure what could be causing it to not work.

Offline

Board footer

Powered by FluxBB