Multiple monitors and multiple gpus - can't get all 3 to work

Hi, I'm trying out majaro but I'm having trouble setting up the displays through the xservers etc.

I can get one to work through one gpu but the others won't work even if I configure them in the xconfig files.

Here is my output:

System:
  Host: josh-pc Kernel: 4.19.62-1-MANJARO x86_64 bits: 64 compiler: gcc 
  v: 9.1.0 Desktop: Xfce 4.13.6 Distro: Manjaro Linux 
Machine:
  Type: Desktop Mobo: Gigabyte model: Z97-HD3 v: x.x serial: <filter> 
  BIOS: American Megatrends v: F3 date: 04/24/2014 
CPU:
  Topology: Quad Core model: Intel Core i7-4770K bits: 64 type: MT MCP 
  arch: Haswell rev: 3 L2 cache: 8192 KiB 
  flags: avx avx2 lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx 
  bogomips: 56027 
  Speed: 2300 MHz min/max: 800/3900 MHz Core speeds (MHz): 1: 2301 2: 2300 
  3: 2300 4: 2301 5: 2303 6: 2301 7: 2303 8: 2302 
Graphics:
  Device-1: Intel Xeon E3-1200 v3/4th Gen Core Processor Integrated Graphics 
  vendor: Gigabyte driver: N/A bus ID: 00:02.0 
  Device-2: NVIDIA GK104 [GeForce GTX 760] vendor: Gigabyte driver: nvidia 
  v: 390.116 bus ID: 01:00.0 
  Device-3: NVIDIA GP106 [GeForce GTX 1060 6GB] vendor: Gigabyte 
  driver: nvidia v: 390.116 bus ID: 06:00.0 
  Display: x11 server: X.Org 1.20.5 driver: nouveau,nvidia 
  FAILED: modesetting resolution: 1920x1080~60Hz 
  OpenGL: renderer: GeForce GTX 760/PCIe/SSE2 v: 4.6.0 NVIDIA 390.116 
  direct render: Yes 
Audio:
  Device-1: Intel Xeon E3-1200 v3/4th Gen Core Processor HD Audio 
  driver: snd_hda_intel v: kernel bus ID: 00:03.0 
  Device-2: Intel 9 Series Family HD Audio vendor: Gigabyte 
  driver: snd_hda_intel v: kernel bus ID: 00:1b.0 
  Device-3: NVIDIA GK104 HDMI Audio vendor: Gigabyte driver: snd_hda_intel 
  v: kernel bus ID: 01:00.1 
  Device-4: NVIDIA GP106 High Definition Audio vendor: Gigabyte 
  driver: snd_hda_intel v: kernel bus ID: 06:00.1 
  Sound Server: ALSA v: k4.19.62-1-MANJARO 
Error 45: Error opening file: /sys/bus/usb/devices/2-2/version 
Error: No such file or directory
readline() on closed filehandle $fh at /usr/bin/inxi line 3553.
Network:
  Device-1: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet 
  vendor: Gigabyte driver: r8168 v: 8.047.02-NAPI port: d000 bus ID: 03:00.0 
  IF: enp3s0 state: up speed: 1000 Mbps duplex: full mac: <filter> 
  Device-2: Ralink MT7601U Wireless Adapter type: USB driver: mt7601u 
  bus ID: 2-2:27 
Drives:
  Local Storage: total: 4.78 TiB used: 8.40 GiB (0.2%) 
  ID-1: /dev/sda vendor: A-Data model: SP610 size: 238.47 GiB 
  ID-2: /dev/sdb vendor: Western Digital model: WD30EZRX-00D8PB0 
  size: 2.73 TiB 
  ID-3: /dev/sdc type: USB vendor: Western Digital model: WD20EARX-00PASB0 
  size: 1.82 TiB 
Partition:
  ID-1: / size: 106.28 GiB used: 8.40 GiB (7.9%) fs: ext4 dev: /dev/sda4 
Sensors:
  System Temperatures: cpu: 40.0 C mobo: N/A gpu: nvidia temp: 42 C 
  Fan Speeds (RPM): N/A gpu: nvidia fan: 26% 
Info:
  Processes: 299 Uptime: 5m Memory: 15.51 GiB used: 1.30 GiB (8.4%) 
  Init: systemd Compilers: gcc: 9.1.0 Shell: bash v: 5.0.7 inxi: 3.0.35 

I have gotten this to work somewhat okay in Ubuntu (elementary OS) so I know its possible.

Thanks for your help.


Just adding, I've attempted a variety of methods found online which might explain the original errors above so I will reinstall the drivers and produce another output. I have also disabled the intel gpu which might solve the issue as well.

New output:

System:
  Host: josh-pc Kernel: 4.19.62-1-MANJARO x86_64 bits: 64 compiler: gcc 
  v: 9.1.0 Desktop: Xfce 4.13.6 tk: Gtk 3.24.10 info: xfce4-panel wm: xfwm4 
  dm: LightDM 1.30.0 Distro: Manjaro Linux 
Machine:
  Type: Desktop Mobo: Gigabyte model: Z97-HD3 v: x.x serial: <filter> 
  BIOS: American Megatrends v: F3 date: 04/24/2014 
CPU:
  Topology: Quad Core model: Intel Core i7-4770K bits: 64 type: MT MCP 
  arch: Haswell rev: 3 L2 cache: 8192 KiB 
  flags: avx avx2 lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx 
  bogomips: 56024 
  Speed: 1500 MHz min/max: 800/3900 MHz Core speeds (MHz): 1: 1500 2: 1500 
  3: 1500 4: 1500 5: 1502 6: 1500 7: 1502 8: 1502 
Graphics:
  Device-1: NVIDIA GK104 [GeForce GTX 760] vendor: Gigabyte driver: nvidia 
  v: 390.116 bus ID: 01:00.0 chip ID: 10de:1187 
  Device-2: NVIDIA GP106 [GeForce GTX 1060 6GB] vendor: Gigabyte 
  driver: nvidia v: 390.116 bus ID: 06:00.0 chip ID: 10de:1c03 
  Display: x11 server: X.Org 1.20.5 driver: nvidia 
  resolution: 1920x1080~60Hz 
  OpenGL: renderer: GeForce GTX 760/PCIe/SSE2 v: 4.6.0 NVIDIA 390.116 
  direct render: Yes 
Audio:
  Device-1: Intel 9 Series Family HD Audio vendor: Gigabyte 
  driver: snd_hda_intel v: kernel bus ID: 00:1b.0 chip ID: 8086:8ca0 
  Device-2: NVIDIA GK104 HDMI Audio vendor: Gigabyte driver: snd_hda_intel 
  v: kernel bus ID: 01:00.1 chip ID: 10de:0e0a 
  Device-3: NVIDIA GP106 High Definition Audio vendor: Gigabyte 
  driver: snd_hda_intel v: kernel bus ID: 06:00.1 chip ID: 10de:10f1 
  Sound Server: ALSA v: k4.19.62-1-MANJARO 

Maybe you have to do this

I have tried this suggestion previously, I did it again just in case.

My oither two monitors, instead of being black now just show "_" and are not recognized in the nvidiaxserver settings. This is trying with v430~ atm.

Ok, so, are the monitors connected to the iGPU or the Nvidia GPU? If are connected to the iGPU will never be shown in the dGPU.
Did you check in BIOS settings the part related to iGPU and dGPU ?

The 1 monitor that is working is connected via the 760 and the other two are connected via the 1060.

Yeah I've had a scourged around in the bios and disabled the integrated gpu there.

Ok then, you will have to set up a dualGPU /etc/X11/mhwd.d/nvidia.conf and restore the /etc/X11/xorg.conf.d/90-mhwd.conf that points to it.

Try to reinstall the driver:
sudo mhwd -f -i pci video-nvidia

add this lines to ~/.xinitrc:

nvidia-settings --load-config-only
exec $(get_session)

You will have to identify and add for each dGPU (nvidia) the BusId to the Section "Device"
See the example here
https://wiki.archlinux.org/index.php/NVIDIA#Multiple_GPUs/SLI
but DO NOT create the file /etc/X11/xorg.conf

Once you have done that, further tweaks can be added.

I appreciate the help.

I'm lost at the example you've given, you state not to create the xorg.conf file but it's what is used in the example?

I've gotton all 3 monitors to run off the 760, I'm happy if all 3 could run off the 1060 instead.

Is there an easier way to swap the preferences for the first gpu used or?

Manjaro uses /etc/X11/mhwd.d/nvidia.conf because of the MHWD while arch is using /etc/X11/xorg.conf, yet what is inside them should work the same.
Each GPU has a BusID. You can use only one as a Primary GPU. Monitors will be connected to that particular GPU, just read the content from there downward and you will see examples.

I tried following the examples in the link you've given but it ends up borking the displays and I have to reinstall the drivers again.

Maybe I'm configuring the file incorrectly?

After some more testing, I was able to set the primary GPU by assigning the bus ID over just PCI.

I can run all my monitors off this one so it solves the issue for me.
But if I can run monitors off both that'd be ideal.

Care to elaborate what you mean by that? While in BIOS and while in Grub Boot Menu? Only one display will work there, as is dictated by BIOS > Primary GPU > Primary Port.
If your monitors are working now connected to both GPUs while in the booted system = desktop, and are respecting the layout you defined, then that's about it ...

Sorry, currently, all 3 monitors are connected to my 1060.

Ideally I'd have one connected to the 760 and the last two connected to the 1060

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

Forum kindly sponsored by