Using monitors from two different GPUs (linux)

I have a debian system running on a B560M motherboard with two graphics cards installed, a GT 1030 and a GT 730. The 1030 has a monitor hooked up to it which I have working properly with the nvidia drivers.

The 730 has two monitors plugged in. I enabled these in the xserver settings. They are recognized by the nvidia settings - I can see the monitor details and move my mouse onto them however the linux OS itself doesn’t seem to find them. The debian/xfce display manager doesn’t detect any additional monitors, I can’t drag windows onto them.

I noticed that each monitor has a seperate xscreen whereas this post shows four monitors between two GPUs with a single xscreen. Is having all monitors on one xscreen the way to get my desktop extended to all monitors? If so how do I change the other monitors to use xscreen0? I don’t see an option for the other screens to go to screen 0 in the configuration menu.

Otherwise, how can I get my OS to recognize the additional xscreens?

Please see this:

sanity check for novice user: I set the kernel parameter in grub and reboot?

Should I double check the providers after or before the reboot?

After reboot.

Well after rebooting, running the set output source xrandr command fixes things and I can use both extra monitors. Thanks!
There is the behavior of the monitors not starting detected, so I need to run it on startup and then manually reconfigure my windows every time. Trying to figure out how to make that happen on startup.

Which DE are you using? How are you positioning your monitors?

XFCE. I configured my monitors using the XFCE display GUI.
After I run --setprovideroutputsource all three displays are ‘stacked’ on each other in the same space without being mirrored. This leads to some weird behavior because the monitors are not all the same size. The mouse can be in one position on the 2k monitor and another one on the 4k monitor at the same time.

Once I had things set the way I wanted, I used Arandr to generate a setting script. I added the output source to get this:

xrandr --setprovideroutputsource NVIDIA-G0 NVIDIA-0 && xrandr --auto
xrandr --output DVI-D-0 --off --output HDMI-0 --primary --mode 2560x1440 --pos 0x1080 --rotate normal --output HDMI-1-0 --mode 1920x1080 --pos 2560x600 --rotate left --output HDMI-1-1 --mode 1920x1080 --pos 640x0 --rotate normal --output HDMI-1-2 --off --output HDMI-1-3 --off

If I run this script, it will set everything up the way I want it, minus the lower frame rates on the secondary monitors. Trying to get this script to run on startup now.

With xfce, I guess you’re using lightdm, please see this
on how to add the xrandr commands to autostart.
Of course, with the changed providers.

My first attempt was to put my xrandr script in the xfce session startup commands via the gui tool. That would work for 2-3 seconds after login before some other event overrode those settings and threw off the monitor positioning.

Thus far triggering the script via the lightdm conf file as suggested seems to do the trick - the layout doesn’t get changed after being initially set and actually fires before login so the performance is a bit better - less monitor flashing etc.

Thank you! It’s always a bit exhausting having to sift through the web of forums and wikis to get the right steps for your particular system but I finally have a working linux station.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.