Getting 2 quadro GPUs to work on linux (manjaro)

Hello there.

Having a big issue with my quadro cards.
I have 4 monitors connected on one of them, and two on the other one.
On windows it all works fine.
On linux ( I use manjaro linux ) only the 4 monitors on one GPU work.
I cannot get the other 2 to work.
I tried mosaic and some other things I saw in some other posts, but I always end up stuck on a black screen with a cursor after boot.

Can anyone help on how I can get all the monitors to work?

Some information if it helps:

❯ nvidia-smi
Thu Apr  4 23:00:51 2024
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 550.67                 Driver Version: 550.67         CUDA Version: 12.4     |
|-----------------------------------------+------------------------+----------------------+
| GPU  Name                 Persistence-M | Bus-Id          Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |           Memory-Usage | GPU-Util  Compute M. |
|                                         |                        |               MIG M. |
|=========================================+========================+======================|
|   0  Quadro P620                    Off |   00000000:01:00.0  On |                  N/A |
| 48%   61C    P0             N/A /  N/A  |     363MiB /   2048MiB |      0%      Default |
|                                         |                        |                  N/A |
+-----------------------------------------+------------------------+----------------------+
|   1  Quadro P620                    Off |   00000000:02:00.0 Off |                  N/A |
| 36%   47C    P8             N/A /  N/A  |       7MiB /   2048MiB |      0%      Default |
|                                         |                        |                  N/A |
+-----------------------------------------+------------------------+----------------------+

+-----------------------------------------------------------------------------------------+
| Processes:                                                                              |
|  GPU   GI   CI        PID   Type   Process name                              GPU Memory |
|        ID   ID                                                               Usage      |
|=========================================================================================|
|    0   N/A  N/A       648      G   /usr/lib/Xorg                                 288MiB |
|    0   N/A  N/A      3516      G   picom                                          62MiB |
|    0   N/A  N/A      3991      G   alacritty                                       7MiB |
|    1   N/A  N/A       648      G   /usr/lib/Xorg                                   4MiB |
+-----------------------------------------------------------------------------------------+
WARNING: infoROM is corrupted at gpu 0000:02:00.0
❯ inxi -G
Graphics:
  Device-1: NVIDIA GP107GL [Quadro P620] driver: nvidia v: 550.67
  Device-2: NVIDIA GP107GL [Quadro P620] driver: nvidia v: 550.67
  Display: x11 server: X.org v: 1.21.1.12 driver: X: loaded: nvidia
    gpu: nvidia,nvidia resolution: 1: 1920x1080~60Hz 2: N/A 3: N/A
    4: 1920x1080~60Hz 5: 1920x1080~60Hz 6: 1920x1080~60Hz
  API: EGL v: 1.5 drivers: kms_swrast,nvidia,swrast
    platforms: gbm,x11,surfaceless,device
  API: OpenGL v: 4.6.0 compat-v: 4.5 vendor: nvidia mesa v: 550.67
    renderer: Quadro P620/PCIe/SSE2
❯ xrandr
Screen 0: minimum 8 x 8, current 3840 x 2160, maximum 32767 x 32767
DP-0 disconnected primary (normal left inverted right x axis y axis)
DP-1 connected 1920x1080+0+1080 (normal left inverted right x axis y axis) 527mm x 296mm
   1920x1080     60.00*+  59.94    50.00    60.05    60.00    50.04
   1680x1050     59.95
   1600x900      60.00
   1280x1024     75.02    60.02
   1280x800      59.81
   1280x720      60.00    59.94    50.00
   1024x768      75.03    60.00
   800x600       75.00    60.32
   720x576       50.00
   720x480       59.94
   640x480       75.00    59.94    59.93
DP-2 disconnected (normal left inverted right x axis y axis)
DP-3 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 527mm x 296mm
   1920x1080     60.00*+  59.94    50.00    60.05    60.00    50.04
   1680x1050     59.95
   1600x900      60.00
   1280x1024     75.02    60.02
   1280x800      59.81
   1280x720      60.00    59.94    50.00
   1024x768      75.03    60.00
   800x600       75.00    60.32
   720x576       50.00
   720x480       59.94
   640x480       75.00    59.94    59.93
DP-4 disconnected (normal left inverted right x axis y axis)
DP-5 connected 1920x1080+1920+1080 (normal left inverted right x axis y axis) 527mm x 296mm
   1920x1080     60.00*+  59.94    50.00    60.05    60.00    50.04
   1680x1050     59.95
   1600x900      60.00
   1280x1024     75.02    60.02
   1280x800      59.81
   1280x720      60.00    59.94    50.00
   1024x768      75.03    60.00
   800x600       75.00    60.32
   720x576       50.00
   720x480       59.94
   640x480       75.00    59.94    59.93
DP-6 disconnected (normal left inverted right x axis y axis)
DP-7 connected 1920x1080+1920+0 (normal left inverted right x axis y axis) 527mm x 296mm
   1920x1080     60.00*+  59.94    50.00    60.05    60.00    50.04
   1680x1050     59.95
   1600x900      60.00
   1280x1024     75.02    60.02
   1280x800      59.81
   1280x720      60.00    59.94    50.00
   1024x768      75.03    60.00
   800x600       75.00    60.32
   720x576       50.00
   720x480       59.94
   640x480       75.00    59.94    59.93
DP-1-0 disconnected (normal left inverted right x axis y axis)
DP-1-1 connected (normal left inverted right x axis y axis)
   1920x1080     60.00 +  59.94    50.00    60.05    60.00    50.04
   1680x1050     59.95
   1600x900      60.00
   1280x1024     75.02    60.02
   1280x800      59.81
   1280x720      60.00    59.94    50.00
   1024x768      75.03    60.00
   800x600       75.00    60.32
   720x576       50.00
   720x480       59.94
   640x480       75.00    59.94    59.93
DP-1-2 disconnected (normal left inverted right x axis y axis)
DP-1-3 connected (normal left inverted right x axis y axis)
   1920x1080     60.00 +  59.94    50.00    60.05    60.00    50.04
   1680x1050     59.95
   1600x900      60.00
   1280x1024     75.02    60.02
   1280x800      59.81
   1280x720      60.00    59.94    50.00
   1024x768      75.03    60.00
   800x600       75.00    60.32
   720x576       50.00
   720x480       59.94
   640x480       75.00    59.94    59.93
DP-1-4 disconnected (normal left inverted right x axis y axis)
DP-1-5 disconnected (normal left inverted right x axis y axis)
DP-1-6 disconnected (normal left inverted right x axis y axis)
DP-1-7 disconnected (normal left inverted right x axis y axis)
  1920x1080 (0x21e) 148.500MHz +HSync +VSync
        h: width  1920 start 2008 end 2052 total 2200 skew    0 clock  67.50KHz
        v: height 1080 start 1084 end 1089 total 1125           clock  60.00Hz
  1920x1080 (0x21f) 148.350MHz +HSync +VSync
        h: width  1920 start 2008 end 2052 total 2200 skew    0 clock  67.43KHz
        v: height 1080 start 1084 end 1089 total 1125           clock  59.94Hz
  1920x1080 (0x220) 148.500MHz +HSync +VSync
        h: width  1920 start 2448 end 2492 total 2640 skew    0 clock  56.25KHz
        v: height 1080 start 1084 end 1089 total 1125           clock  50.00Hz
  1920x1080 (0x221) 74.250MHz +HSync +VSync Interlace
        h: width  1920 start 2008 end 2052 total 2200 skew    0 clock  33.75KHz
        v: height 1080 start 1084 end 1094 total 1124           clock  60.05Hz
  1920x1080 (0x222) 74.180MHz +HSync +VSync Interlace
        h: width  1920 start 2008 end 2052 total 2200 skew    0 clock  33.72KHz
        v: height 1080 start 1084 end 1094 total 1124           clock  60.00Hz
  1920x1080 (0x223) 74.250MHz +HSync +VSync Interlace
        h: width  1920 start 2448 end 2492 total 2640 skew    0 clock  28.12KHz
        v: height 1080 start 1084 end 1094 total 1124           clock  50.04Hz
  1680x1050 (0x224) 146.250MHz -HSync +VSync
        h: width  1680 start 1784 end 1960 total 2240 skew    0 clock  65.29KHz
        v: height 1050 start 1053 end 1059 total 1089           clock  59.95Hz
  1600x900 (0x225) 108.000MHz +HSync +VSync
        h: width  1600 start 1624 end 1704 total 1800 skew    0 clock  60.00KHz
        v: height  900 start  901 end  904 total 1000           clock  60.00Hz
  1280x1024 (0x226) 135.000MHz +HSync +VSync
        h: width  1280 start 1296 end 1440 total 1688 skew    0 clock  79.98KHz
        v: height 1024 start 1025 end 1028 total 1066           clock  75.02Hz
  1280x1024 (0x227) 108.000MHz +HSync +VSync
        h: width  1280 start 1328 end 1440 total 1688 skew    0 clock  63.98KHz
        v: height 1024 start 1025 end 1028 total 1066           clock  60.02Hz
  1280x800 (0x228) 83.500MHz -HSync +VSync
        h: width  1280 start 1352 end 1480 total 1680 skew    0 clock  49.70KHz
        v: height  800 start  803 end  809 total  831           clock  59.81Hz
  1280x720 (0x229) 74.250MHz +HSync +VSync
        h: width  1280 start 1390 end 1430 total 1650 skew    0 clock  45.00KHz
        v: height  720 start  725 end  730 total  750           clock  60.00Hz
  1280x720 (0x22a) 74.180MHz +HSync +VSync
        h: width  1280 start 1390 end 1430 total 1650 skew    0 clock  44.96KHz
        v: height  720 start  725 end  730 total  750           clock  59.94Hz
  1280x720 (0x22b) 74.250MHz +HSync +VSync
        h: width  1280 start 1720 end 1760 total 1980 skew    0 clock  37.50KHz
        v: height  720 start  725 end  730 total  750           clock  50.00Hz
  1024x768 (0x22c) 78.750MHz +HSync +VSync
        h: width  1024 start 1040 end 1136 total 1312 skew    0 clock  60.02KHz
        v: height  768 start  769 end  772 total  800           clock  75.03Hz
  1024x768 (0x22d) 65.000MHz -HSync -VSync
        h: width  1024 start 1048 end 1184 total 1344 skew    0 clock  48.36KHz
        v: height  768 start  771 end  777 total  806           clock  60.00Hz
  800x600 (0x22e) 49.500MHz +HSync +VSync
        h: width   800 start  816 end  896 total 1056 skew    0 clock  46.88KHz
        v: height  600 start  601 end  604 total  625           clock  75.00Hz
  800x600 (0x22f) 40.000MHz +HSync +VSync
        h: width   800 start  840 end  968 total 1056 skew    0 clock  37.88KHz
        v: height  600 start  601 end  605 total  628           clock  60.32Hz
  720x576 (0x230) 27.000MHz -HSync -VSync
        h: width   720 start  732 end  796 total  864 skew    0 clock  31.25KHz
        v: height  576 start  581 end  586 total  625           clock  50.00Hz
  720x480 (0x231) 27.000MHz -HSync -VSync
        h: width   720 start  736 end  798 total  858 skew    0 clock  31.47KHz
        v: height  480 start  489 end  495 total  525           clock  59.94Hz
  640x480 (0x232) 31.500MHz -HSync -VSync
        h: width   640 start  656 end  720 total  840 skew    0 clock  37.50KHz
        v: height  480 start  481 end  484 total  500           clock  75.00Hz
  640x480 (0x233) 25.175MHz -HSync -VSync
        h: width   640 start  656 end  752 total  800 skew    0 clock  31.47KHz
        v: height  480 start  490 end  492 total  525           clock  59.94Hz
  640x480 (0x234) 25.170MHz -HSync -VSync
        h: width   640 start  656 end  752 total  800 skew    0 clock  31.46KHz
        v: height  480 start  490 end  492 total  525           clock  59.93Hz
❯ tree /etc/X11
/etc/X11
β”œβ”€β”€ mhwd.d
β”‚   β”œβ”€β”€ nvidia.conf
β”‚   └── nvidia.conf.nvidia-xconfig-original
β”œβ”€β”€ xinit
β”‚   β”œβ”€β”€ xinitrc
β”‚   β”œβ”€β”€ xinitrc.d
β”‚   β”‚   β”œβ”€β”€ 40-libcanberra-gtk-module.sh
β”‚   β”‚   β”œβ”€β”€ 50-systemd-user.sh
β”‚   β”‚   └── 80xapp-gtk3-module.sh
β”‚   └── xserverrc
β”œβ”€β”€ xorg.conf
β”œβ”€β”€ xorg.conf.backup
β”œβ”€β”€ xorg.conf.d
β”‚   β”œβ”€β”€ 00-keyboard.conf
β”‚   β”œβ”€β”€ 30-touchpad.conf
β”‚   └── 90-mhwd.conf -> /etc/X11/mhwd.d/nvidia.conf
└── xorg.conf.nvidia-xconfig-original

5 directories, 13 files

Please run nvidia-bug-report.sh as root and attach the resulting nvidia-bug-report.log.gz file to your post.
Please post the output of

sudo cat /sys/module/nvidia_drm/parameters/modeset

Sure. Done.

nvidia-bug-report.log.gz (554.7 KB)

❯ sudo nvidia-bug-report.sh
[sudo] password for ****:

nvidia-bug-report.sh will now collect information about your
system and create the file 'nvidia-bug-report.log.gz' in the current
directory.  It may take several seconds to run.  In some
cases, it may hang trying to capture data generated dynamically
by the Linux kernel and/or the NVIDIA kernel module.  While
the bug report log file will be incomplete if this happens, it
may still contain enough data to diagnose your problem.

If nvidia-bug-report.sh hangs, consider running with the --safe-mode
and --extra-system-data command line arguments.

Please include the 'nvidia-bug-report.log.gz' log file when reporting
your bug via the NVIDIA Linux forum (see forums.developer.nvidia.com)
or by sending email to 'linux-bugs@nvidia.com'.

By delivering 'nvidia-bug-report.log.gz' to NVIDIA, you acknowledge
and agree that personal information may inadvertently be included in
the output.  Notwithstanding the foregoing, NVIDIA will use the
output only for the purpose of investigating your reported issue.

Running nvidia-bug-report.sh... complete.

❯ sudo cat /sys/module/nvidia_drm/parameters/modeset
N

Please delete
/etc/X11/xorg.conf
/etc/X11/xorg.conf.d/90-mhwd.conf
then follow this:
https://forums.developer.nvidia.com/t/ubuntu-20-04-not-able-to-run-6-7-monitor-setup-with-one-x-screen/200904/2?u=generix

1 Like

Ok, will try now.

this step:

  • check two nvidia providers are avalable

how can we do that? is there a command?

xrandr --listproviders

1 Like
❯ xrandr --listproviders
Providers: number : 2
Provider 0: id: 0x217 cap: 0x1, Source Output crtcs: 4 outputs: 8 associated providers: 1 name:NVIDIA-0
Provider 1: id: 0x432 cap: 0x2, Sink Output crtcs: 4 outputs: 8 associated providers: 1 name:NVIDIA-G0

looks good.

ok, removed the 2 files, added the kernel parameter and I ran sudo update-grub.
do I reboot now before running xrandr --setprovideroutputsource NVIDIA-G0 NVIDIA-0 && xrandr --auto ?

Yes, you need to reboot for the kernel parameter to take effect.

1 Like

amazing, it worked!!!
thank you so much!

one small thing, 3 of the monitors are mirrored, as in they all show the same thing.
how do I undo that?
and what’s the best way to arrange the position of the monitors?
nvidia-settings or xrandr commands?

nvidia-settings is currently missing support for that. Rather use something like arandr, then get the xrandr commands for the positioning from it and put it together with the xrandr setprovider command into a script and set it to be autostarted, either by your DM or in xinitrc.

Thank you so much! It all worked great.
If you are ever in Madrid in Spain, you have churros and porras on me :D

@generix At random times we get those artifacts on some of the monitors
( 1 or 2 monitors at a time )

Then after a while the whole system gets stuck and needs reboot.

what can cause this?
just running browsers, nothing unusual.

Are those monitor connected to the same gpu?
You might want to check the video memory:
https://github.com/GpuZelenograd/memtest_vulkan

run the tool for both cards ( although it’s confusing if the options are 0 and 1 or 1 and 2 )
we get those results.

no selection (default is card 1 or 0 I guess )

selection 2

the way I’m getting the error now is it starts in 1-2 screens and as I move the mouse to the others, it spreads to those; so when it starts happening I try to quickly open a terminal and reboot (because after a few seconds it all gets stuck and unresponsive so I need to hard reboot)

So the second P620 seems to be broken. Still under warranty? Please create a new nvidia-bug-report.log.

it’s pretty old, there’s no chance I can find a receipt anyway.

If I want to drive 6 monitors, what’s the best choice of new GPU?
( I mean, do I need models after a certain year or so, to have easier compatibility with linux? )

And is there any with 6 outputs? Or do I need 2 GPUs again?

Thank you.

All current gpus whether it be amd, intel or nvidia have only 4 heads max, can only drive 4 monitors or less. So you need a second gpu. Since you have a i7 9700K, you should also be able to just use the on-board connectors for this, if you can enable it in bios.

1 Like

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