Intel graphic chipset and NVIDIA Geforce GTX560

6,133

finally i got it working, the main issue was the configuration of the BIOS where i need to force the Nvidia card to be the first one to initialize.

here is my xorg.conf with some comments :

# two X servers, one on nvidia GPU with 2x1920x1080 @ 60Hz video beamer and one with a full HD monitor on Intel GPU
Section "ServerLayout"
    Identifier     "Layout0"
    Screen      0  "Screen1" 0 0 
    Screen  1  "Screen0" 1920 0
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"
    Option         "Xinerama" "0"
EndSection

Section "Files"
EndSection

Section "InputDevice"
    # generated from default
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "Protocol" "auto"
    Option         "Device" "/dev/psaux"
    Option         "Emulate3Buttons" "no"
    Option         "ZAxisMapping" "4 5"
EndSection

Section "InputDevice"
    # generated from default
    Identifier     "Keyboard0"
    Driver         "kbd"
EndSection

Section "Monitor"
    # HorizSync source: edid, VertRefresh source: edid
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "Idek Iiyama PLE2607WS"
    HorizSync       29.0 - 81.0
    VertRefresh     55.0 - 76.0
    Option         "DPMS"
EndSection

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce GTX 560"
    BusID      "PCI:1:0:0"
    Option     "CustomEDID" "CRT-0:/etc/X11/InFocus-IN5316.bin; CRT-1:/etc/X11/InFocus-IN5316.bin"
EndSection

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

Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "TwinView" "1"
    Option         "TwinViewXineramaInfoOrder" "CRT-0"
    Option         "metamodes" "CRT-0: 1920x1080_60_0 +0+0, CRT-1: 1920x1080_60_0 +1920+0; nvidia-auto-select +0+0"
# here I'm using specific EDID file to force resolution/refresh rate because i got some EDID error with 20m VGA cables.
    Option     "CustomEDID" "CRT-0:/etc/X11/InFocus-IN5316.bin; CRT-1:/etc/X11/InFocus-IN5316.bin"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Section "Screen"
    Identifier     "Screen1"
    Device         "Device1"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "metamodes" "1920x1080_60_0 +0+0"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

with this configuration I'm able to use GPU acceleration on Nvidia's server but not on Intel's one, I don't know why yet. GLX extension is not present on Intel's server. For my configuration this is not a big issue because Intel server is just for monitoring video tracking information and control and setting up the video projection. But if someone knows how to enable GLX both on Intel and Nvidia, I would appreciate some tips. Notice that there is no error in the Xorg.0.log related to GLX or something else, so I'm guessing I'll need to force GLX to be loaded both on Nvidia and on Intel servers.

Moreover, i have a another small issue with this configuration. As I have two computers with the same configuration, I'm using a KVM switch plugged to the monitor to control one and the other computer alternatively. But when computer starts, if the KVM is displaying the other one, the resolution drops down to 1024x768. I need to force it to 1920x1080 even if there is no connected monitor. But I don't know how yet.

Hopes this helps.

A.

Share:
6,133

Related videos on Youtube

antoine
Author by

antoine

Work as a freelancer on many computer vision project. Mainly focusing on people interaction with intermedia art installation but not only. Good knowledge of OpenCV library, OpenFrameworks, Qt, git, CMake, CI tool (Travis & Appveyor)

Updated on September 18, 2022

Comments

  • antoine
    antoine over 1 year

    I have an NVIDIA Geforce GTX560 with two video projectors and I would like to use the onboard Intel Graphic Chipset to plug an additional monitor.

    I saw the question : How can I use both Intel onboard and Nvidia graphics at the same time? but the answer is so short that I was not convinced.

    My motherboard (GIGABYTE GA-H61M-D2P-B3 (rev. 1.0)) equipped with Intel H61 Chipset allow shared memory between onboard and PCIe cards. And Windows 7 allow me to use the three outputs thanks to Intel's driver.

    I'm able to use the onboard graphic card but without graphical interface for now. I think i need intel driver for that.

    But I would like to know if I can setup my displays in xorg.conf with something like :

    Section "Device"
        Identifier "Device0"
        Driver "intel"
    EndSection
    
    Section "Device"
        Identifier "Device1"
        Driver "nvidia"
    EndSection
    
    Section "Device"
        Identifier "Device2"
        Driver "nvidia"
    EndSection
    

    Does anyone have successfully setup something like that ? Or should I burn my head experimenting it by myself ? Or is there any good reasons to discouraged me to try ?

    Thanks for your help.

    Antoine

    PS : i'm using Ubuntu 10.10 for now, but I could switch to another version.

    PS2 : i also read this : Use 3 monitors w/built-in intel adapter + two old nvidia PCI cards on 10.10? which doesn't tell me more about the possibilities to use Intel Graphic and Nvidia at the same time

    EDIT : according to that : Can't get Dual Monitors to work on different GPUs, I should be able to run two Xserver one on Intel the other on Nvidia. I will try and post the result here.

  • Alberto
    Alberto over 11 years
    Observation 1: you are not using Xinerama. This is probably not what you want (you have separated DISPLAYs, meaning you cannot drag&drop between monitors). But if you activate Xinerama, no OpenGL rendering will appear on the screens driven by the intel GPU.
  • Alberto
    Alberto over 11 years
    Observation 2: If you don't want to clone your two CRT monitors on the nvidia, you can specify the monitors relative position with TwinViewOrientation
  • Alberto
    Alberto over 11 years
    Observation 3: If you activate Xinerama, you also will sacrifice RandR (from the logs, Xinerama is enabled, so RandR has likely been disabled by the X server) and Composite (sorry, I cannot remember where I read it, but unfortunately it is still not supported)... I had to say goodbye to gnome-shell
  • antoine
    antoine over 9 years
    this thread also contains lots of good informations