You are not logged in.
Hi!
I just bought an Asus ROG Strix G513RW_G513RW recently. It has a Ryzen 9 6900HX CPU and a Nvidia Geforce RTX 3070 Ti GPU.
I've installed Arch Linux + KDE but I'm facing some trouble with the GPUs.
I've been trying to make the hybrid graphics cards work, but I can't find any decent configuration for the settings of this laptop, especially the external display, which is proving to be a headache to make it "work".
I tried at first to use the external display, but I couldn't make it work with the integrated GPU in the Ryzen processor.
I tried to use optimus-manager as I have used before on older laptops, but it seemed to not work for me, even trying to play with the different options of the QT version. In fact, it didn't even load the Nvidia GPU as the primary one when I tried to switch between both of the GPUs.
I kept reading about this around the ArchWiki and I've read about how Nvidia implemented PRIME in their drivers for Linux, so I tried to follow the guidelines in the Wiki in another attempt to make it work, but even if I can run Steam games and other software with the Nvidia GPU, I still can't use the HDMI display.
After messing around with PRIME, I gave up and tried to use the Nvidia GPU as the primary one. I was able to start the laptop using the Nvidia GPU, but it attempted to start in the HDMI display, displaying the login in the HDMI display if I connected it and maintaining a black screen in the laptop display during the SDDM login screen. After logging in, I could experience the laptop working with a lot of lag, and the experience was a bit awful.
So I could see that with the Ryzen graphics and the HDMI display connected, it seems the laptop can detect the external display is connected but I can't make it work. Even if I enable it in the system settings of KDE and I try to set it as primary, it doesn't seem to work. On the other hand, if I use the Nvidia graphics as the primary ones, it seems to be laggy and it tries to use the external display by default, even if it's not connected.
The drivers I installed for the integrated graphics are the xf86-video-amdgpu at the moment. I tried with the amdgpu -pro but I couldn't find any improvement, so I decided to come back to the xf86-vide-amdgpu ones.
I installed the proprietary drivers for the Nvidia graphics.
The output of some commands:
xrandr --listproviders
Providers: number : 2
Provider 0: id: 0x58 cap: 0xf, Source Output, Sink Output, Source Offload, Sink Offload crtcs: 4 outputs: 6 associated providers: 1 name:Unknown AMD Radeon GPU @ pci:0000:06:00.0
Provider 1: id: 0x203 cap: 0x2, Sink Output crtcs: 4 outputs: 4 associated providers: 1 name:NVIDIA-G0
glxinfo | grep "OpenGL renderer"
OpenGL renderer string: AMD YELLOW_CARP (LLVM 14.0.6, DRM 3.46, 5.18.11-arch1-1)
prime-run glxinfo | grep "OpenGL renderer"
OpenGL renderer string: NVIDIA GeForce RTX 3070 Ti Laptop GPU/PCIe/SSE2
xrandr
Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 16384 x 16384
eDP connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 344mm x 193mm
2560x1440 165.00 + 60.00 + 120.04 96.02 72.02 60.00 50.01 48.00
1920x1200 165.00
1920x1080 165.00*
1600x1200 165.00
1680x1050 165.00
1280x1024 165.00
1440x900 165.00
1280x800 165.00
1280x720 165.00
1024x768 165.00
800x600 165.00
640x480 165.00
DisplayPort-0 disconnected (normal left inverted right x axis y axis)
DisplayPort-1 disconnected (normal left inverted right x axis y axis)
DisplayPort-2 disconnected (normal left inverted right x axis y axis)
DisplayPort-3 disconnected (normal left inverted right x axis y axis)
DisplayPort-4 disconnected (normal left inverted right x axis y axis)
DP-1-0 disconnected (normal left inverted right x axis y axis)
DP-1-1 disconnected (normal left inverted right x axis y axis)
DP-1-2 disconnected (normal left inverted right x axis y axis)
HDMI-1-0 disconnected (normal left inverted right x axis y axis)
xrandr with the HDMI display connected but not working:
Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 16384 x 16384
eDP connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 344mm x 193mm
2560x1440 165.00 + 60.00 + 120.04 96.02 72.02 60.00 50.01 48.00
1920x1200 165.00
1920x1080 165.00*
1600x1200 165.00
1680x1050 165.00
1280x1024 165.00
1440x900 165.00
1280x800 165.00
1280x720 165.00
1024x768 165.00
800x600 165.00
640x480 165.00
DisplayPort-0 disconnected (normal left inverted right x axis y axis)
DisplayPort-1 disconnected (normal left inverted right x axis y axis)
DisplayPort-2 disconnected (normal left inverted right x axis y axis)
DisplayPort-3 disconnected (normal left inverted right x axis y axis)
DisplayPort-4 disconnected (normal left inverted right x axis y axis)
DP-1-0 disconnected (normal left inverted right x axis y axis)
DP-1-1 disconnected (normal left inverted right x axis y axis)
DP-1-2 disconnected (normal left inverted right x axis y axis)
HDMI-1-0 connected (normal left inverted right x axis y axis)
1920x1080 60.00 + 59.94 50.00
1680x1050 59.95
1440x900 59.89
1280x1024 75.02 60.02
1280x960 60.00
1280x720 60.00 59.94 50.00
1024x768 75.03 70.07 60.00
800x600 75.00 72.19 60.32 56.25
720x576 50.00
720x480 59.94
640x480 75.00 72.81 59.94 59.93
xrandr --auto --verbose with the HDMI display connected but not working:
crtc 4: 1920x1080 60.00 +0+0 "HDMI-1-0"
xrandr: Configure crtc 4 failed
crtc 0: disable
crtc 1: disable
crtc 2: disable
crtc 3: disable
crtc 4: disable
crtc 5: disable
crtc 6: disable
crtc 7: disable
screen 0: revert
crtc 0: revert
crtc 1: revert
crtc 2: revert
crtc 3: revert
crtc 4: revert
crtc 5: revert
crtc 6: revert
crtc 7: revert
Can anyone help me to make both of the displays work normally and, if possible, use the Nvidia graphics when they are required?
If more output of commands is required or any configuration, ask and I'll share it. These are the commands I saw almost all the time while searching for this problem, so that's why I've shared these ones, but if any other ones are needed, just let me know.
Cheers!!
Last edited by surrealistic (2022-07-15 14:26:35)
Offline
Try removing xf86-video-amdgpu and testing the built in modesetting driver instead. FWIW for "setting the nvidia as primary" what did you follow to try and do that? If you followed: https://wiki.archlinux.org/title/NVIDIA … phics_only did you also see and pay attention to https://wiki.archlinux.org/title/NVIDIA_Optimus#SDDM ?
You'll also want to enable modesetting to allow PRIME sync to work properly: https://wiki.archlinux.org/title/NVIDIA … de_setting note that if you opt for adjusting the initramfs for early loading in addition to just adding the kernel parameter, you also need to add amdgpu to the list of modules so that both drivers are set up early.
Offline
Thank you, V1del! I followed that guide to use the Nvidia graphics only, but it seems like I didn't pay attention to the settings for SDDM you mentioned.
The two displays, the laptop's one and the external one, are working properly now, but I noticed the performance is not the same as before when using prime-run.
I tried to run glxspheres64 to check if it's running with the Nvidia by default, and it does, but the output shows an average of 60 FPS instead of the average of over 1000 FPS I had before with prime-run.
glxspheres64
Polygons in scene: 62464 (61 spheres * 1024 polys/spheres)
GLX FB config ID of window: 0xad (8/8/8/0)
Visual ID of window: 0x27
Context is Direct
OpenGL Renderer: NVIDIA GeForce RTX 3070 Ti Laptop GPU/PCIe/SSE2
59.981709 frames/sec - 66.939588 Mpixels/sec
60.001355 frames/sec - 66.961513 Mpixels/sec
59.958865 frames/sec - 66.914094 Mpixels/sec
60.061749 frames/sec - 67.028911 Mpixels/sec
I've tried with __NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia and prime-run glxspheres64, getting the same result: an average of 60 FPS.It makes sense that the result is the same because it's working under Nvidia graphics only, but I'm wondering why that decrease in performance.
Is this decrease in performance normal or could it be because of my settings?
I also removed xf86-video-amdgpu as you mentioned.
I copied the exact same configuration for /etc/X11/xorg.conf.d/10-nvidia-drm-outputclass.conf as it says in the Wiki for Nvidia graphics only.
Would it be better to use the hybrid drivers if there's a way to make them work properly, or is this normal and they'll have better performance when it's required?
I'll try later to run a game on Steam and see if the decrease in performance is also noticeable in games.
EDIT:
I had to use the laptop without the secondary monitor, and I realized I only had the FPS drop while using the secondary monitor.
I've had some free time to try a couple of games on Steam and I can confirm the poorest performance is only when using the secondary monitor. The performance is alright while using only the laptop's display.
Is it normal or could it be because of my current settings? Is there something I could do to improve the performance while using the secondary display?
I also noticed I can't change the resolution of the display at the same scale.
For example, my current settings are 2560x1440(16:9). If I try to change to 1920x1080(16:9) all the screen glitches. The same if a game works in that resolution and it changes the resolution when loading the game.
Last edited by surrealistic (2022-07-18 11:52:52)
Offline
I have the same problem as you. And I figure it out with
$ sudo gedit /etc/default/grub
change
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash "
into
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash i915.enable_psr=0"
$ sudo update-grub
$sudo reboot
Offline