# 3 Monitore an 2 ATI-Grafikkarten

## Falmer

Hallo Leute,

ich habe folgendes Problem: ich möchte gern meine drei gleichen Monitore an den beiden ebenfalls gleichen ATI-Grafikkarten so betreiben, daß jeder Monitor einzeln einen Desktop anzeigt.

Nachdem ich schon recht viel rumprobiert habe, ist das einzige, was ich erreicht habe, daß zwei Monitore geclont sind und einer einen eigenen Desktop anzeigt.

Leider hat auch die Suche im Forum nicht viel ergeben. Die meisten nutzen Nvidia-Karten - da scheint das einfacher zu sein.

Der Rechner hier steht aber an meinem Arbeitsplatz und ich hatte leider keinen Einfluß auf den Hardwarekauf. Konkret handelt es sich um einen DELL Precision T5500  mit zwei ATI FirePro V5700 und drei DELL 2007 FPb Monitoren.

Ich benutze die radeon-Treiber mit xorg-Server 1.8.2 und habe keine Lust meinen Kernel und den X-Server 'downzugraden' um die proprietären ATI-Treiber nutzen zu können (zumal ich 3D-Beschleunigung hier eher weniger brauche).

Es wäre sehr schön, wenn mir jemand helfen könnte, am Besten mit einer konkreten xorg.conf.

----------

## Falmer

Vielleicht kann ja jemand Hinweise geben, wenn ich meine aktuelle xorg.conf poste?

```

Section "ServerLayout"

   Identifier     "X.org Configured"

   Screen      0  "Screen0" 0 0

   Screen      1  "Screen1" LeftOf "Screen0"

   Screen      2  "Screen2" RightOf "Screen1"

EndSection

Section "Files"

   ModulePath   "/usr/lib64/xorg/modules"

   FontPath     "/usr/share/consolefonts/"

   FontPath     "/usr/share/fonts/corefonts/"

   FontPath     "/usr/share/fonts/default/"

   FontPath     "/usr/share/fonts/encodings/"

   FontPath     "/usr/share/fonts/freefonts/"

   FontPath     "/usr/share/fonts/ttf-bitstream-vera/"

   FontPath     "/usr/share/fonts/util/"

   FontPath     "/usr/share/fonts/misc/"

   FontPath     "/usr/share/fonts/TTF/"

   FontPath     "/usr/share/fonts/OTF/"

   FontPath     "/usr/share/fonts/Type1/"

   FontPath     "/usr/share/fonts/100dpi/"

   FontPath     "/usr/share/fonts/75dpi/"

EndSection

Section "Module"

   Load  "dri"

   Load  "dri2"

   Load  "record"

   Load  "glx"

   Load  "extmod"

   Load  "dbe"

   Load  "type1"

   Load  "freetype"

EndSection

Section "ServerFlags"

   Option   "DRI2"      "True"

#   Option   "Xinerama"   "True"

EndSection

Section "Extensions"

   Option  "RANDR"      "Enabled"

EndSection

Section "InputClass"

   Identifier  "keyboard-all"

   Driver      "evdev"

   Option      "XkbLayout"   "de"

   Option      "XkbVariant"   "deadgraveacute"

   MatchIsKeyboard   "on"

EndSection

Section "InputClass"

   Identifier  "mouse-all"

   Driver      "evdev"

   MatchIsPointer   "on"

EndSection

Section "Monitor"

   #DisplaySize     410   310   # mm

   Identifier   "Monitor0"

   VendorName   "DEL"

   ModelName    "DELL 2007FP"

   HorizSync    30.0 - 83.0

   VertRefresh  56.0 - 76.0

   Option       "DPMS"

EndSection

Section "Monitor"

   #DisplaySize     410   310   # mm

   Identifier   "Monitor1"

   VendorName   "DEL"

   ModelName    "DELL 2007FP"

   HorizSync    30.0 - 83.0

   VertRefresh  56.0 - 76.0

   Option       "DPMS"

EndSection

Section "Monitor"

   #DisplaySize     410   310   # mm

   Identifier   "Monitor2"

   VendorName   "DEL"

   ModelName    "DELL 2007FP"

   HorizSync    30.0 - 83.0

   VertRefresh  56.0 - 76.0

   Option       "DPMS"

EndSection

Section "Device"

   Identifier  "Card0"

   Driver      "radeon"

   VendorName  "ATI Technologies Inc"

   BoardName   "RV370 [FirePro V5700]"

   BusID       "PCI:3:0:0"

   Option       "RenderAccel"   "True"

   Option       "DRI"      "True"

EndSection

Section "Device"

   Identifier  "Card1"

   Driver      "radeon"

   VendorName  "ATI Technologies Inc"

   BoardName   "RV370 [FirePro V5700]"

   BusID       "PCI:4:0:0"

   Option       "RenderAccel"   "True"

   Option       "DRI"      "True"

EndSection

Section "Device"

   Identifier  "Card2"

   Driver      "radeon"

   VendorName  "ATI Technologies Inc"

   BoardName   "RV370 [FirePro V5700]"

   BusID       "PCI:3:0:0"

   Option       "RenderAccel"   "True"

   Option       "DRI"      "True"

EndSection

Section "Screen"

   Identifier "Screen0"

   Device     "Card0"

   Monitor    "Monitor0"

   SubSection "Display"

      Viewport   0 0

      Depth     24

   EndSubSection

EndSection

Section "Screen"

   Identifier "Screen1"

   Device     "Card1"

   Monitor    "Monitor1"

   SubSection "Display"

      Viewport   0 0

      Depth     24

   EndSubSection

EndSection

Section "Screen"

   Identifier "Screen2"

   Device     "Card2"

   Monitor    "Monitor2"

   SubSection "Display"

      Viewport   0 0

      Depth     24

   EndSubSection

EndSection

```

----------

## mokia

```
Screen      0  "Screen0" 0 0

Screen      1  "Screen1" LeftOf "Screen0"

Screen      2  "Screen2" RightOf "Screen1" 
```

Ich glaube das ist eine überlappung.

```
|Screen 1|<-[Links davon]- |Screen 0|

          -[Rechts davon]->|Screen 2|
```

Screen 0 und Screen 2 sind in gleiche stelle.

----------

## Falmer

Zuerst mal danke für den Hinweis.

Leider hat eine Änderung auf

```

Section "ServerLayout"

   Identifier     "X.org Configured"

   Screen      0  "Screen0" 1600 0

   Screen      1  "Screen1" LeftOf "Screen0"

   Screen      2  "Screen2" RightOf "Screen0"

EndSection

```

keine Änderung gebracht.

Mit der jetzigen Einstellung sollte Screen0 um 1600 Pixel nach rechts verschoben sein, womit Platz für Screen1 links davon ist, und Screen2 rechts von Screen0 ist.

Leider zeigen Screen1 und Screen2 weiterhin denselben Desktop an.

----------

## Max Steel

Du kannst den Screen0 weiterhin mit 0 0 (Verschiebung) initialisieren, aber die beiden anderen Screen solltest du wenn möglich auf den gleichen Bezug setzen (also beide Right-/LeftOf Screen0)

Oder aber dein Problem sind die gleichen PCI-Device Einträge in Card0 und Card2, das du für Card2 möglicherweiße sowas wie PCI:3:0:1 oder sowas nehmen musst (was gibt denn lspci aus. Gibt der evtl sogar die "Doppelkarte" 2 mal aus?)

(Hab schon so lang keine ATI-Karte mehr in den Händen gehalten.)

----------

## Falmer

Der Eintrag der 'dritten' Karte ist nur dem dritten Monitor geschuldet.

```

03:00.0 VGA compatible controller: ATI Technologies Inc RV370 [FirePro V5700]

04:00.0 VGA compatible controller: ATI Technologies Inc RV370 [FirePro V5700]

```

Das sind die beiden 'echten' Grafikkarten in der Ausgabe von lspci.

Die Anleitungen zum Thema, die ich bisher abgearbeitet habe, sagten alle man soll eine virtuelle Karte in der xorg.conf erstellen.

An der realen Karte sind die beiden äußeren Monitore angeschlossen.

Der einzelne Monitor in der Mitte, der auch BIOS und Systemstart anzeigt, ist an der zweiten realen Karte angeschlossen.

----------

## Max Steel

Okay verstehe, und welche Desktops zeigen jetzt das gleiche an? Der in der Mitte und der erste an der Doppelkarte?

----------

## Falmer

Der Monitor in der Mitte, der allein an der realen Karte an PCI:4:0:0 hängt, zeigt einen eigenen Desktop.

Die beiden äußeren Monitore, an der anderen realen Karte an PCI:3:0:0, zeigen einen anderen Desktop, der aber auf beiden gleich ist - also cloned.

Also ist das Problem eigentlich die Entflechtung der beiden Monitore, die an einer realen Karte hängen, die per xorg.conf verdoppelt wurde.

Übrigens haben auch Versuche mit xrandr nicht zum Erfolg geführt. Möglicherweise müsste ich die Anschlüsse an der Karte getrennt ansprechen (?). Leider weiß ich nicht wie.

----------

## Max Steel

Hmmm also ich hätte tatsächlich vermutet das die Karte sozusagen für beide Anschlüsse verschiedenen BUS-IDs bekommt. Oder aber das die Monitore bei ihrer initialisation sowas wie CRT-0 und CRT-1 erwarten. Irgendwas. Allerdings weiß ich das selbst nicht, wie gesagt, nutze NVidia.

----------

## Falmer

Bin jetzt aus dem Urlaub zurück und habe leider wieder das Problem mit den Monitoren.

Hat jemand eine Idee wie das mit der getrennten Ansteuerung der Anschlüsse der Grafikkarte funktioniert?

Grüße

Falmer

----------

## MaDDeePee

Hi, Xinerama ist aus, absicht?

Ansonsten: Mein tripple Setup: (Nvidia aber...):

```
cat /etc/X11/xorg.conf 

Section "ServerLayout"

    Identifier     "Layout0"

    Screen      0  "Screen0"

    Screen      1  "Screen1" LeftOf "Screen0"

    Screen      2  "Screen2" RightOf "Screen0"

    InputDevice    "Keyboard0" "CoreKeyboard"

    InputDevice    "Mouse0" "CorePointer"

EndSection

Section "ServerLayout"

    Identifier     "Layout1"

    Screen     0   "Screen0"

    InputDevice    "Keyboard0" "CoreKeyboard"

    InputDevice    "Mouse0" "CorePointer"

EndSection

Section "Module"

    Load           "dbe"

    #Load           "dri"

    Load           "extmod"

    #Load           "type1"

    #Load           "freetype"

    Load           "glx"

EndSection

Section "Extensions"

    #Option         "Composite" "1"

EndSection

Section "ServerFlags"

    Option         "Xinerama" "1"

    Option         "AllowEmptyInput" "false"

    Option         "AutoAddDevices" "true"

    Option "DontZap" "False"

EndSection

Section "InputDevice"

    Identifier     "Mouse0"

    Driver         "mouse"

    Option         "Protocol"

    Option         "Device" "/dev/input/mice"

    Option         "Emulate3Buttons" "no"

    Option         "ZAxisMapping" "4 5"

EndSection

Section "InputDevice"

    Identifier     "Keyboard0"

    Driver         "kbd"

    Option         "Protocol" "Standard"

    Option         "AutoRepeat" "500 30"

    #Option         "AutoRepeat" "disabled"

    Option         "XkbRules" "xorg"

    Option         "XkbModel" "pc105"

    Option         "XkbLayout" "de"

    Option         "XkbVariant" "nodeadkeys"

EndSection

Section "Monitor"

    Identifier     "Monitor0"

    VendorName     "Samsung"

    ModelName      "Samsung SyncMaster"

    HorizSync       30.0 - 81.0

    VertRefresh     56.0 - 75.0

    Option         "DPMS"

EndSection

Section "Monitor"

    Identifier     "Monitor1"

    VendorName     "Samsung"

    ModelName      "Samsung SyncMaster"

    HorizSync       30.0 - 81.0

    VertRefresh     56.0 - 75.0

    Option         "DPMS"

EndSection

Section "Monitor"

    Identifier     "Monitor2"

    VendorName     "Samsung"

    ModelName      "Samsung SyncMaster"

    HorizSync       30.0 - 81.0

    VertRefresh     56.0 - 75.0

    Option         "DPMS"

EndSection

Section "Device"

    Identifier     "Videocard0"

    Driver         "nvidia"

    VendorName     "NVIDIA Corporation"

    BoardName      "GeForce 9800 gx2 Teil eins"

    BusID          "PCI:10:0:0"

    Driver         "nvidia"

    #Driver         "nouveau"

    #Option         "NVAgp"         "3"

    #Option         "RenderAccel" "true"

    #Option         "AllowGLXWithComposite" "true"

    #Option         "AddARGBGLXVisuals" "true"

    #Option         "TripleBuffer" "true"

    Option         "NoLogo" "0"

    #Option         "DPMS" "true"

    #Option        "MultiGPU" "auto"

    #Option        "SLI" "0"

    #Screen         1

EndSection

Section "Device"

   Identifier     "Videocard1"

   Driver         "nvidia"

   #Driver         "nouveau"

   VendorName     "NVIDIA Corporation"

   BoardName      "GeForce 9800 gx2 Teil zwei"

   BusID          "PCI:9:0:0"

    #Option         "NVAgp"         "3"

   #Option         "RenderAccel" "true"

   #Option         "Coolbits" "1" 

   #Option         "AllowGLXWithComposite" "true"

   #Option         "AddARGBGLXVisuals" "true"

   #Option         "TripleBuffer" "true"

   Option         "NoLogo" "0"

    #Option         "DPMS" "TRUE"

   #Option         "MultiGPU" "auto"

    #option         "SLI" "0"

    #Screen        0

EndSection

Section "Device"

    Identifier     "Videocard2"

    Driver         "nvidia"

    #Driver         "nouveau"

    VendorName     "NVIDIA Corporation"

    BoardName      "GeForce 9400GT"

    BusID          "PCI:1:0:0"

    #Option         "NVAgp"         "3"

    #Option         "RenderAccel" "true"

    #Option         "Coolbits" "1" 

    #Option         "AllowGLXWithComposite" "true"

    #Option         "AddARGBGLXVisuals" "true"

    #Option         "TripleBuffer" "true"

    Option         "NoLogo" "0"

    #Option         "DPMS" "TRUE"

    #Screen         0

EndSection

Section "Screen"

    Identifier     "Screen0"

    Device         "Videocard0"

    Monitor        "Monitor0"

    DefaultDepth    24

    Option         "TwinView" "0"

EndSection

Section "Screen"

    Identifier     "Screen1"

    Device         "Videocard1"

    Monitor        "Monitor1"

    DefaultDepth    24

    Option         "TwinView" "0"

EndSection

Section "Screen"

    Identifier     "Screen2"

    Device         "Videocard2"

    Monitor        "Monitor2"

    DefaultDepth    24

    Option         "TwinView" "0"

EndSection

```

...oder hab ich was falsch verstanden? Willst du EINEN großen Desktop oder drei nebeneinander, wobei jeder seinen eigenen Kicker usw hat und du NICHT windows drüber verschieben kannst?

Zum Thema "Hat jemand eine Idee wie das mit der getrennten Ansteuerung der Anschlüsse der Grafikkarte funktioniert?"

-> Mal "Screen        0"  in der Device Section der Graka probiert? Glaub zumindest bei Nvidia gibts diese Option um zu sagen welcher Graka Ausgang relevant ist..... (habs zumindest drin stehen, von vor ewigkeiten - kA obs unsinn ist...)

----------

## Falmer

Hi MadDeePee,

xinerama ist mit Absicht ausgeschaltet. Ich möchte am liebsten drei unabhängige Desktops haben. Fenster hin und her schieben muß ich nicht, da ich ja pro Monitor noch wenigstens 4 virtuelle Desktops habe.

Interessant an Deiner Config sind die für jede 'Videocard' unterschiedlichen PCI-BusIDs.

Ich werde mich nochmal belesen dazu und das probieren.

----------

