You are not logged in.
Hello. I have an NVidia Optimus laptop with a second monitor attached to it.
When the NVidia drivers are not installed, everything works, but of course the NVidia card is not used.
When the NVidia drivers are installed and I follow this guide to only use the NVidia card, it works.
When the NVidia drivers are installed and I don't follow that guide, only the laptop main monitor works, with the Intel driver. If I then install nvidia-prime, the prime-run script included in that package successfully runs programs using the NVidia card.
I would like to achieve the last configuration, but with also the second monitor working. Running xrandr in that state returns:
eDP-1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 344mm x 193mm
1920x1080 60.01 + 60.01* 59.97 59.96 59.93 40.00
1680x1050 59.95 59.88
1400x1050 59.98
1600x900 59.99 59.94 59.95 59.82
1280x1024 60.02
1400x900 59.96 59.88
1280x960 60.00
1440x810 60.00 59.97
1368x768 59.88 59.85
1280x800 59.99 59.97 59.81 59.91
1280x720 60.00 59.99 59.86 59.74
1024x768 60.04 60.00
960x720 60.00
928x696 60.05
896x672 60.01
1024x576 59.95 59.96 59.90 59.82
960x600 59.93 60.00
960x540 59.96 59.99 59.63 59.82
800x600 60.00 60.32 56.25
840x525 60.01 59.88
864x486 59.92 59.57
700x525 59.98
800x450 59.95 59.82
640x512 60.02
700x450 59.96 59.88
640x480 60.00 59.94
720x405 59.51 58.99
684x384 59.88 59.85
640x400 59.88 59.98
640x360 59.86 59.83 59.84 59.32
512x384 60.00
512x288 60.00 59.92
480x270 59.63 59.82
400x300 60.32 56.34
432x243 59.92 59.57
320x240 60.05
360x202 59.51 59.13
320x180 59.84 59.32
HDMI-1 disconnected (normal left inverted right x axis y axis)Even though I am sure the HDMI cable is connected.
Offline
I have an optimus laptop with external monitor attached. I got it working by following this guide: https://wiki.archlinux.org/index.php/PR … er_offload
But I had to also install xf86-video-intel and additionally remove the first section (about intel) from /usr/share/X11/xorg.conf.d/10-nvidia-drm-outputclass.conf
Sometimes I need to reconnect the HDMI cable after logging in or launching games, but apart from that it's working well.
Offline
Nope, still seems to not be working. The xrandr output has changed a bit (it has a "VIRTUAL" provider now):
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) 340mm x 190mm
1920x1080 60.01*+ 59.93 40.00
1680x1050 59.95 59.88
1400x1050 59.98
1600x900 60.00 59.95 59.82
1280x1024 60.02
1400x900 59.96 59.88
1280x960 60.00
1368x768 60.00 59.88 59.85
1280x800 59.81 59.91
1280x720 59.86 60.00 59.74
1024x768 60.00
1024x576 60.00 59.90 59.82
960x540 60.00 59.63 59.82
800x600 60.32 56.25
864x486 60.00 59.92 59.57
640x480 59.94
720x405 59.51 60.00 58.99
640x360 59.84 59.32 60.00
HDMI1 disconnected (normal left inverted right x axis y axis)
VIRTUAL1 disconnected (normal left inverted right x axis y axis)This is my current /usr/share/X11/xorg.conf.d/10-nvidia-drm-outputclass.conf:
Section "OutputClass"
Identifier "nvidia"
MatchDriver "nvidia-drm"
Driver "nvidia"
Option "AllowEmptyInitialConfiguration"
ModulePath "/usr/lib/nvidia/xorg"
ModulePath "/usr/lib/xorg/modules"
EndSectionxf86-video-intel, nvidia and nvidia-prime are all installed.
Last edited by altermetax (2019-12-18 12:12:37)
Offline
@altermetax you cannot have the last configuration working since the nvidia driver still does not support offloading graphics (or Source Output capability as it is called, i.e. to be used as an output sink) see here (check the third bullet on the caveats section). The only way to have the external screen running at the moment is either by using only the nvidia driver or by setting up the nvidia graphics as primary which is also described in the link that I have attached. I guess this is what @Scorpick has done.
Offline
If you don't insist in prime you can use https://wiki.archlinux.org/index.php/Bu … VIDIA_chip - also see the linked https://github.com/Bumblebee-Project/Bu … itor-setup
nb. that however you want to use the output wired to the nvidia chip, this implies that the chip cannot be powered down - not even through prime (and w/ a Turing chip or newer)
Offline
the only way you get external display functionality when using render offload is if the external hdmi/dp/usbc ports are wired to the intel integrated graphics, this however is the exception and not the rule. most optimus laptops have video outputs wired to the nvidia gpu.
Offline
https://bbs.archlinux.org/viewtopic.php?id=251491 i wrote a guide about this.
Offline
If you don't insist in prime you can use https://wiki.archlinux.org/index.php/Bu … VIDIA_chip - also see the linked https://github.com/Bumblebee-Project/Bu … itor-setup
nb. that however you want to use the output wired to the nvidia chip, this implies that the chip cannot be powered down - not even through prime (and w/ a Turing chip or newer)
I used to use Bumblebee, but that has performance issues and it's not compatible with DXVK, which I'd like to be able to use.
https://bbs.archlinux.org/viewtopic.php?id=251491 i wrote a guide about this.
That's the second configuration among the three I listed in the original post. I'm fully able to achieve it, but I'd like to use Intel by default and NVidia for certain applications.
the only way you get external display functionality when using render offload is if the external hdmi/dp/usbc ports are wired to the intel integrated graphics, this however is the exception and not the rule. most optimus laptops have video outputs wired to the nvidia gpu.
That's unfortunate. It bugs me, though, because if I only use the Intel card and I fully uninstall the NVidia drivers, the second monitor will work with Intel. Maybe there's something I don't understand.
Offline
because if I only use the Intel card and I fully uninstall the NVidia drivers, the second monitor will work with Intel. Maybe there's something I don't understand.
The nvidia chip likely is used, but through nouveau & prime? (logs, lspci)
Offline
because if I only use the Intel card and I fully uninstall the NVidia drivers, the second monitor will work with Intel. Maybe there's something I don't understand.
The nvidia chip likely is used, but through nouveau & prime? (logs, lspci)
So you mean the Intel chip does the rendering, and the NVidia chip sends it over to the external monitor (glxinfo says Intel is being used)? That kind of makes sense. But then, can't I just achieve the same thing, but with the additional ability to render a specific application with NVidia itself?
Last edited by altermetax (2019-12-18 20:55:12)
Offline
Yes of course, that's what bumblebee and prime (render offload) do, just the prime graphics offload as by theodores link doesn't provide an output sink (yet?!)
If the purpose is to play Super Turbo Turkey Puncher 3™ on nvidia and the HDMI output, you can also run a dedicated X11 server on that GPU and output (while checking the cheatcodes on the intel chip and the internal display)
Offline
(Sorry for the late response)
I read somewhere about something called "intel-virtual-output" included in xf86-video-intel which is supposed to do what I'm trying to do, but in my case it just outputs:
No VIRTUAL outputs on ":0".And I don't understand how to fix it.
you can also run a dedicated X11 server on that GPU and output (while checking the cheatcodes on the intel chip and the internal display)
Well, since there's really no way to have Intel as default & Nvidia for certain programs, I guess this is the only solution. Could you explain me how to do it? I've tried nvidia-xrun but it fails saying it can't find the nvidia module, although nvidia is installed and it works if I modprobe -r it.
Offline
I read somewhere about something called "intel-virtual-output"
That's https://wiki.archlinux.org/index.php/Bu … VIDIA_chip
there's really no way to have Intel as default & Nvidia for certain programs
There's nothing to indicate that statement would be true. As a matter of fact, you actually stated that
I used to use Bumblebee
I've tried nvidia-xrun
Did you follow https://wiki.archlinux.org/index.php/Nvidia-xrun
saying it can't find the nvidia module
Leaving aside that you should probably not be calling nvidia-xrun while the module is already loaded (and likely in use), please post the actual I/O, no paraphrases.
Offline
I managed to make nvidia-xrun work. Now I have KDE Plasma on the first display (:0) with Intel and Openbox on the fourth with NVidia, because I ran nvidia-xrun from there. When I'm on the fourth display, both monitors are running, but when I'm on the first, only the laptop one does. That's for the same reason as specified in the original post: if nvidia is installed but not configured in xorg.conf, the external monitor won't work.
Offline
Yes, of course not…
If you want an actual multiscreen setup (I was speculating on the purpose of this task)you will HAVE to use both GPUs on the same server.
a) https://wiki.archlinux.org/index.php/NV … phics_only
b) bumblebee and virtual output
c) configure two screens on the same X11 server, one for the intel, one for the nvidia device (though I assume that's hardly better than "a")
Pick your poison.
Offline
If you want an actual multiscreen setup (I was speculating on the purpose of this task)
I don't necessarily want a multiscreen setup, just having the external monitor working with the laptop one off would be enough.
Anyway, then I guess I'll have to choose A (B has limitations and C is not what I want), but the NVidia driver is kind of laggy with my graphics card and I'd prefer to only use it for graphically intensive applications, so that makes me sad.
Still, thank you for your support!
Offline