You are not logged in.
Pages: 1
Hi
My laptop has two GPUs: an intel haswell and a nvidia geforce. I've been trying to work out how to change the default OpenGL renderer to the more powerful nvidia chip. if i run:
glxinfo | grep "OpenGL renderer"
it shows that its the intel integrated chip being used at the moment.
I've investigated pages such as the arch wiki page on Hybrid GPUs, which led me to https://wiki.archlinux.org/title/PRIME
this recommended making sure i have both intel and nvidia drivers (i do) and then checking my xrandr providers using
xrandr --listproviders
this should return two providers, nvidia and intel, but for me it is empty. Why is this?
i have xf86-video-nouveau and xf86-video-intel installed
Thank you
Last edited by Sue_Perb (2022-03-20 16:07:19)
Offline
Please post your xorg log, see https://wiki.archlinux.org/title/Xorg#General for where to find it.
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
clean chroot building not flexible enough ?
Try clean chroot manager by graysky
Offline
Hi
I'm not sure what you mean - for what time/event should I post the log for? When I run xrandr --listproviders there is no extra log entry added.
I'm looking in /var/log/Xorg.0.log (there is no xorg directory for me in .local/share)
Offline
You should post the entirety of the file so we can take a look at it.
Offline
I'd like to see the entire xorg log for your current graphical session boot.
The start of the log should look similar to these from my system :
X.Org X Server 1.21.1.3
X Protocol Version 11, Revision 0
[ 168.421] Current Operating System: Linux silverbolt 5.16.15-arch1-1 #1 SMP PREEMPT Thu, 17 Mar 2022 00:30:09 +0000 x86_64
[ 168.421] Kernel command line: \\boot\vmlinuz-linux root=UUID=c05eefba-c885-41ff-94a7-c4e6394b5e86 rw initrd=\boot\amd-ucode.img initrd=\boot\initramfs-linux.img audit=0 pcie_aspm=off
[ 168.421]
[ 168.421] Current version of pixman: 0.40.0
Some display managers (including gdm) don't create xorg log but send the log messages to the journal .
How are you starting the graphics environment ?
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
clean chroot building not flexible enough ?
Try clean chroot manager by graysky
Offline
Hi
I use GNOME so gdm, so here is the journal: (i used journalctl to get this, not sure if that's right)
i can use a different file share site if you want; i was going to use hastebin but the file is quite big.
Also, while looking through journalctl, i found this, is it of interest?
Mar 20 09:17:11 billy gnome-shell[786]: Running GNOME Shell (using mutter 41.4) as a Wayland display server
Mar 20 09:17:11 billy gnome-shell[786]: Device '/dev/dri/card0' prefers shadow buffer
Mar 20 09:17:11 billy gnome-shell[786]: Added device '/dev/dri/card0' (i915) using atomic mode setting.
Mar 20 09:17:12 billy gnome-shell[786]: Created gbm renderer for '/dev/dri/card0'
Mar 20 09:17:12 billy gnome-shell[786]: Boot VGA GPU /dev/dri/card0 selected as primary
Thank you
Offline
You are running a wayland session, which changes most of these things and I'm not sure how well dual GPU works on wayland in any capacity. If you are indeed still on the noveau driver the way to switch woulld be e.g.
DRI_PRIME=1 glxinfo -B
If you wanted to look at "proper" listproviders and the like you'd have to switch to login to Gnome on xorg rather than wayland.
Last edited by V1del (2022-03-20 13:29:39)
Offline
ok thank you I will investigate using Xorg instead
Offline
Hi
After switching to Xorg (i'm now on i3), I've tried the steps to switch my opengl renderer again.
xrandr --listproviders
now shows 1 provider: the intel card. I definitely have the nvidia card: I've checked lspci and that shows
3D controller: Nvidia Corporation GF177M...
However to change my OpenGL renderer string i need to use xrandr --setprovideroffloadsink with the name/index of the provider, but the nvidia card simply won't show up as a provider.
How can I fix this?
Thank you
Offline
Post your xorg.log which should now exist. FWIW there's no inherent need to run that xrandr command if you only want to change the renderer, doing it with the environment variable I mentioned is normally sufficient, but if it doesn't show up then you have a deviating configuration than what would happen by default which might set up things incorrectly.
Last edited by V1del (2022-03-20 16:46:29)
Offline
However to change my OpenGL renderer string i need to use xrandr --setprovideroffloadsink
3D controller: Nvidia Corporation GF177M...
There's no offloading since this isn't a VGA device and there's no CRT.
Offline
nvidia-prime wouldn't work on that HW, and afaik listproviders should still list something in case xorg is properly started and aware of the secondary GPU regardless.
Offline
Fermi… and while the journal is kinda filtered, there's no trace of either nvidia nor nouveau.
=> So please post
pacman -Qs nvidia
(next to the xorg log)
Offline
Hi
here is the xorg log: (/var/log/Xorg.0.log): https://www.toptal.com/developers/haste … adomu.yaml
here is the output of pacman -Qs nvidia
local/egl-wayland 2:1.1.9+r3+g582b2d3-1
EGLStream-based Wayland external platform
local/libvdpau 1.4-2
Nvidia VDPAU library
local/nvidia 510.54-5
NVIDIA drivers for linux
local/nvidia-prime 1.0-4
NVIDIA Prime Render Offload configuration and utilities
local/nvidia-utils 510.54-1
NVIDIA drivers utilities
local/xf86-video-nouveau 1.0.17-2 (xorg-drivers)
Open Source 3D acceleration driver for nVidia cards
Thank you
Offline
Well yes. Remove all of these nvidia packages and use nouveau or if you intend to use the proprietary driver install: https://aur.archlinux.org/packages?O=0&K=nvidia-390xx and from that list nvidia-390xx-dkms, {lib32-}nvidia-390xx-utils . Since you won't be able to use the modern PRIME offloading with that, your other options for using it will be outlined in: https://wiki.archlinux.org/title/NVIDIA_Optimus
Make sure linux-headers is installed so the module can be built for your kernel.
Last edited by V1del (2022-03-20 20:21:07)
Offline
ok thank you I will try that
Offline
Pages: 1