Dual Monitor with two graphic cards

Hi,

I try to get dual monitor setup working with 2 GPUs (NVidia+Intel). It partially works. I have a working display on both, the mouse pointer moves from one to the other, the background is on both, and the desktop context menu works. But I cannot move a window from one to the other. Instead of moving a window to the other monitor, when it gets moved it to the monitor edge, it gets maximized to the half window, as if the window manager assumes this is a single monitor setup.

This configuration is:

Section "ServerLayout"        Identifier     "X.org Configured"
        Screen      0  "Screen0" 
        Screen      1  "Screen1" RightOf "Screen0" 
EndSection

Section "Device"
        Identifier  "Card0"
        Driver      "nvidia"
        BusID       "PCI:1:0:0"
EndSection

Section "Device"
        Identifier  "Card1"
        Driver      "intel"
        BusID       "PCI:0:2:0"
EndSection

Section "Screen"
        Identifier "Screen0"
        Device     "Card0"
EndSection

Section "Screen"
        Identifier "Screen1"
        Device     "Card1"
EndSection

My understanding is that the recommended, modern configuration leaves the dual monitor configuration to xrandr and doesn’t specify an explicit ServerLayout in xorg.conf. But If I do that than only one of the displays start up.

Questions:

  1. Is the reason that I cannot move a window from one display to the other the explicit ServerLayout? Is this not supported by kdm? Or is it because it doesn’t work with two graphic cards? Is this different with sddm and would it help to upgrade to that?
  2. Is there some way to force X to start up both graphic cards without specifying a ServerLayout?

Setup: MSI Shadow GS30, GTX970 in dock, OpenSUSE 13.2, Xorg 1.17.2 (X11:XOrg.repo), Nvidia 352.21 (binary installer)

$ xrandr --listproviders Providers: number : 1
Provider 0: id: 0x1b9 cap: 0x1, Source Output crtcs: 4 outputs: 6 associated providers: 0 name:NVIDIA-0

Is this an Optimus laptop system? If so you have to set it up different then a desktop system with 2 GPU.

If you installed the normal NVIDIA driver remove it completely first then follow this exactly

https://en.opensuse.org/SDB:NVIDIA_Bumblebee

As soon as I posted it after working on it for 2 days, I got it to work with Xinerama. I wrongly assumed that Xinerama gets automatically enabled with a dual serverlayout. But I needed to add

Option         "Xinerama"      "on"

I would still be interested for any tips of how to get it to work without Xinerama and with Xrandr.

Also GLX only works on the Nvidia driven screen. Thus I need to use Xrender for composition. Do I assume correctly that is unavoidable or is it possible to load more than one glx module?

No this isn’t Optimus. Inside the Laptop it has only a Intel GPU. External to the Laptop, inside a dock, it has a desktop NVidia GPU. I have 2 screen. An external monitor connected to the Nvidia GPU and the laptop monitor connected to the Intel GPU.