Yes, that seems to be the right configuration. Unfortunate that it doesn’t work, but I have no other ideas. It seems you need to stick with the other configuration.
Using the earlier configuration of Option "PrimaryGPU" "yes"
for the dGPU gives a somewhat low refresh rate on my primary display (inbuilt). I’m not sure if I’m using the right terms, but it does not feel right and is jagged and not smooth as normal.
Is there a fix for this issue?
I’d suggest trying optimus-manager
as it provides a more flexible way to configure this all.
@pobrn
Thank you very much for all your help!
Can only agree with @pobrn on trying optimus-manager. You should definitely give it a go.
Using optimus-manager
gives the exact same problem.
I’m not sure if I’m using the right terms, but it does not feel right and is jagged and not smooth as normal.
It does make it easier to switch between modes though.
An interesting thing is that this scheme of going “dGPU only for getting the HDMI to work” is present in Pop-OS’s system76-power
package which gives it in a way very similar to optimus-manager
(I susupect system76-power to be playing with the conf files as well).
Upon using that mode in Pop-OS, HDMI works fine and also there is no jagged-ness.
I have both Manjaro and Pop-OS installed right now and I prefer to run Manjaro full-time. Which are the config files I must compare/copy over and reproduce the desired behavior in Manjaro as well.
Which mode? “nvidia”? Can you post the output of inxi -Gazy
and xrandr -q
on both Pop!_OS and Manjaro?
I do not have access to my monitor as of the time being. But I guess that would not be important for these logs, as the primary display is the one in question.
Pop!_OS
inxi -Gazy
Graphics:
Device-1: NVIDIA TU117M [GeForce GTX 1650 Mobile / Max-Q] vendor: ASUSTeK
driver: nvidia v: 460.67 alternate: nvidiafb,nouveau,nvidia_drm
bus ID: 01:00.0 chip ID: 10de:1f91
Device-2: AMD Picasso vendor: ASUSTeK driver: amdgpu v: kernel
bus ID: 05:00.0 chip ID: 1002:15d8
Device-3: IMC Networks USB2.0 HD UVC WebCam type: USB driver: uvcvideo
bus ID: 3-1:2 chip ID: 13d3:56a2 serial: <filter>
Display: x11 server: X.Org 1.20.9 compositor: gnome-shell v: 3.38.3
driver: amdgpu,ati,nvidia unloaded: fbdev,modesetting,nouveau,vesa
display ID: :1 screens: 1
Screen-1: 0 s-res: 1920x1080 s-dpi: 96 s-size: 508x286mm (20.0x11.3")
s-diag: 583mm (23")
Monitor-1: eDP-1-0 res: 1920x1080 hz: 120 dpi: 142
size: 344x194mm (13.5x7.6") diag: 395mm (15.5")
OpenGL: renderer: GeForce GTX 1650/PCIe/SSE2 v: 4.6.0 NVIDIA 460.67
direct render: Yes
xrandr -q
Screen 0: minimum 8 x 8, current 1920 x 1080, maximum 32767 x 32767
HDMI-0 disconnected (normal left inverted right x axis y axis)
eDP-1-0 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 344mm x 194mm
1920x1080 120.04*+ 48.01
1680x1050 120.04
1280x1024 120.04
1440x900 120.04
1280x800 120.04
1280x720 120.04
1024x768 120.04
800x600 120.04
640x480 120.04
Manjaro
inxi -Gazy
Graphics:
Device-1: NVIDIA TU117M [GeForce GTX 1650 Mobile / Max-Q] vendor: ASUSTeK
driver: nvidia v: 460.56 alternate: nouveau,nvidia_drm bus-ID: 01:00.0
chip-ID: 10de:1f91 class-ID: 0300
Device-2: AMD Picasso vendor: ASUSTeK driver: amdgpu v: kernel
bus-ID: 05:00.0 chip-ID: 1002:15d8 class-ID: 0300
Device-3: IMC Networks USB2.0 HD UVC WebCam type: USB driver: uvcvideo
bus-ID: 3-1:2 chip-ID: 13d3:56a2 class-ID: 0e02 serial: <filter>
Display: x11 server: X.org 1.20.10 compositor: gnome-shell v: 3.38.4 driver:
loaded: modesetting,nvidia resolution: <missing: xdpyinfo>
OpenGL: renderer: GeForce GTX 1650/PCIe/SSE2 v: 4.6.0 NVIDIA 460.56
direct render: Yes
xrandr -q
Screen 0: minimum 8 x 8, current 1920 x 1080, maximum 32767 x 32767
HDMI-0 disconnected (normal left inverted right x axis y axis)
eDP-1-1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 344mm x 194mm
1920x1080 120.04*+ 48.01 59.97 59.96 59.93
1680x1050 120.04 59.95 59.88
1400x1050 74.76 59.98
1600x900 59.99 59.94 59.95 59.82
1280x1024 120.04 85.02 75.02 60.02
1440x900 120.04
1400x900 59.96 59.88
1280x960 85.00 60.00
1440x810 60.00 59.97
1368x768 59.88 59.85
1280x800 120.04 59.99 59.97 59.81 59.91
1152x864 75.00
1280x720 120.04 60.00 59.99 59.86 59.74
1024x768 120.04 85.00 75.05 60.04 85.00 75.03 70.07 60.00
1024x768i 86.96
960x720 85.00 75.00 60.00
928x696 75.00 60.05
896x672 75.05 60.01
1024x576 59.95 59.96 59.90 59.82
960x600 59.93 60.00
832x624 74.55
960x540 59.96 59.99 59.63 59.82
800x600 120.04 85.00 75.00 70.00 65.00 60.00 85.14 72.19 75.00 60.32 56.25
840x525 60.01 59.88
864x486 59.92 59.57
700x525 74.76 59.98
800x450 59.95 59.82
640x512 85.02 75.02 60.02
700x450 59.96 59.88
640x480 120.04 85.09 60.00 85.01 72.81 75.00 59.94
720x405 59.51 58.99
720x400 85.04
684x384 59.88 59.85
640x400 59.88 59.98 85.08
576x432 75.00
640x360 59.86 59.83 59.84 59.32
640x350 85.08
512x384 85.00 75.03 70.07 60.00
512x384i 87.06
512x288 60.00 59.92
416x312 74.66
480x270 59.63 59.82
400x300 85.27 72.19 75.12 60.32 56.34
432x243 59.92 59.57
320x240 85.18 72.81 75.00 60.05
360x202 59.51 59.13
360x200 85.04
320x200 85.27
320x180 59.84 59.32
320x175 85.27
I think it is. This is the output of optimus-manager --status
:
Optimus Manager (Client) version 1.4
Current GPU mode : nvidia
GPU mode requested for next login : no change
GPU at startup : integrated
Temporary config path: no
Can you also post the output of xrandr --verbose | grep PRIME
and cat /etc/X11/xorg.conf.d/10-optimus-manager.conf
on Manjaro?
xrandr --verbose | grep PRIME
PRIME Synchronization: 0
cat /etc/X11/xorg.conf.d/10-optimus-manager.conf
Section "Files"
ModulePath "/usr/lib/nvidia"
ModulePath "/usr/lib32/nvidia"
ModulePath "/usr/lib32/nvidia/xorg/modules"
ModulePath "/usr/lib32/xorg/modules"
ModulePath "/usr/lib64/nvidia/xorg/modules"
ModulePath "/usr/lib64/nvidia/xorg"
ModulePath "/usr/lib64/xorg/modules"
EndSection
Section "ServerLayout"
Identifier "layout"
Screen 0 "nvidia"
Inactive "integrated"
EndSection
Section "Device"
Identifier "nvidia"
Driver "nvidia"
BusID "PCI:1:0:0"
Option "Coolbits" "28"
EndSection
Section "Screen"
Identifier "nvidia"
Device "nvidia"
Option "AllowEmptyInitialConfiguration"
EndSection
Section "Device"
Identifier "integrated"
Driver "modesetting"
BusID "PCI:5:0:0"
EndSection
Section "Screen"
Identifier "integrated"
Device "integrated"
EndSection
What’s in /etc/optimus-manager/optimus-manager.conf
?
cat /etc/optimus-manager/optimus-manager.conf
[amd]
DRI=3
driver=modesetting
tearfree=
[intel]
DRI=3
accel=
driver=modesetting
modeset=yes
tearfree=
[nvidia]
DPI=96
PAT=yes
allow_external_gpus=no
dynamic_power_management=no
ignore_abi=no
modeset=yes
options=overclocking
[optimus]
auto_logout=yes
pci_power_control=no
pci_remove=no
pci_reset=no
startup_auto_battery_mode=integrated
startup_auto_extpower_mode=nvidia
startup_mode=nvidia
switching=none
I think I have managed to solve it!!
Here it says we need to enable Prime Sync by enabling the DRM Kernel Modesetting (‘e’ in the grub menu and adding nvidia-drm.modeset=1
before boot).
After logging in, following from here, running xrandr --output eDP-1-1 --set "PRIME Synchronization" 1
solves the issue.
Although, xrandr --verbose | grep PRIME
still reports PRIME Synchronization: 0
even after enabling it.
If I recall correctly, this is a known issue, that is, xrandr --verbose
still reports 0 even though it is enabled.
Now that the screen tearing issue is solved too, I’d like to summarize this thread into a single post and have it at the bottom/at the “how-to” section to help anyone facing similar issues.
Please let me know if there are any “best practices/methods” to follow related to laptops/hybrid GPUs with HDMIs so that I can put it up in that as well.
This topic was automatically closed 15 days after the last reply. New replies are no longer allowed.