You are not logged in.

#1 2009-11-16 15:49:25

nogoma
Member
From: Cranston, RI
Registered: 2006-03-01
Posts: 217

randr 1.3/xrandr/multi-GPU status?

I last looked at the status of multi-head & multi-GPU xorg configuration in March, when I came to the conclusion that randr 1.2 wouldn't support multiple video cards. Today, I decided to revisit the issue, since xrandr now reports supporting randr 1.3... and am now thoroughly confused.

Essentially, I have 2 nvidia cards and would like to drive 3 monitors. Up until now, I've had to stick with running one card w/ multi-head output running 2 monitors using TwinView (nvidia drivers). Some sources indicate that randr 1.3 should support multi-gpu again, and I've seen some encouraging posts such as this, but other google hits indicate that multi-GPU doesn't work... So, does anybody have a multi-gpu setup working w/ current xorg/xrandr? Is there more to this equation than I'm realizing, such as video driver support, etc.? Or is there some other less painful route I should be looking at?

If somebody even had a link to a simple set of randr 1.3 documentation, that would be great; everything google turns up is for randr 1.2. Typically, I would just give it a shot to see if it works, but I don't even have a reliable source on documentation to even know if I'm trying the right steps!


-nogoma
---
Code Happy, Code Ruby!
http://www.last.fm/user/nogoma/

Offline

#2 2009-11-18 13:48:38

d_d
Member
Registered: 2009-11-18
Posts: 12

Re: randr 1.3/xrandr/multi-GPU status?

Hey, I had a working triple head setup using xinerama (openbox is lovely about screens). however I recently got really weird problems: http://bbs.archlinux.org/viewtopic.php?id=85023

heres my xorg.conf, hope it helps a little and that you dont get the weird behaviour

Section "ServerLayout"
    Identifier     "X.org Configured"
    Option        "Clone"     "off"
    Option        "Xinerama"    "on"
    Screen      0  "Screen0"
    Screen      1  "Screen1" RightOf "Screen0"
    Screen      2  "Screen2" LeftOf "Screen0"
    InputDevice    "Mouse0" "CorePointer"
    InputDevice    "Keyboard0" "CoreKeyboard"
EndSection

Section "ServerFlags"
#    Option        "AutoDetectDevices"    "False"
#    Option        "AllowEmptyinput"    "False"
    Option        "DontZap"        "false"
EndSection

Section "Files"
    ModulePath   "/usr/lib/xorg/modules"
    FontPath     "/usr/share/fonts/misc"
    FontPath     "/usr/share/fonts/100dpi:unscaled"
    FontPath     "/usr/share/fonts/75dpi:unscaled"
    FontPath     "/usr/share/fonts/TTF"
    FontPath     "/usr/share/fonts/Type1"
EndSection

Section "Module"
    Load  "record"
    Load  "extmod"
    Load  "dbe"
    Load  "dri2"
    Load  "dri"
    Load  "glx"
EndSection

Section "InputDevice"
    Identifier  "Keyboard0"
    Driver      "kbd"
    Option      "XkbLayout" "gb"
    Option      "XkbOptions" "terminate:ctrl_alt_bksp" 
EndSection

Section "InputDevice"
    Identifier  "Mouse0"
    Driver      "mouse"
    Option        "Protocol" "auto"
    Option        "Device" "/dev/input/mice"
    Option        "ZAxisMapping" "4 5 6 7"
EndSection

Section "Monitor"
    Identifier   "Monitor0"
    VendorName   "Monitor Vendor"
    ModelName    "Monitor Model"
    Option       "DPMS"
EndSection

Section "Monitor"
    Identifier   "Monitor1"
    VendorName   "Monitor Vendor"
    ModelName    "Monitor Model"
    Option       "DPMS"
EndSection

Section "Monitor"
    Identifier   "Monitor2"
    VendorName   "Monitor Vendor"
    ModelName    "Monitor Model"
    Option       "DPMS"
EndSection



Section "Device"
    Identifier  "Card0"
    Driver      "nvidia"
    VendorName  "nVidia Corporation"
    BoardName   "G80 [GeForce 8800 GTS]"
    BusID       "PCI:1:0:0"
    Option        "NoLogo"    "1"
    Option        "RenderAccel"    "True"
    Screen        0
EndSection

Section "Device"
    Identifier    "Card1"
    Driver        "nvidia"
    VendorName    "nVidia Corporation"
    BoardName    "G80 [GeForce 8800 GTS]"
    BusID        "PCI:1:0:0"
    Option        "NoLogo"    "1"
    Option        "RenderAccel"    "True"
    Screen        1
EndSection

Section "Device"
    Identifier  "Card2"
    Driver      "nvidia"
    VendorName  "nVidia Corporation"
    BoardName   "G92 [GeForce 8800 GTS 512]"
    BusID       "PCI:4:0:0"
    Option        "NoLogo"    "1"
    Option        "RenderAccel"    "True"
    Screen         0
EndSection

Section "Screen"
    Identifier "Screen0"
    Device     "Card0"
    Monitor    "Monitor0"
    Option     "Metamodes" "1680x1050"
    SubSection "Display"
        Depth     24
        Modes     "1680x1050"
    EndSubSection
EndSection

Section "Screen"
    Identifier "Screen1"
    Device     "Card1"
    Monitor    "Monitor1"
    Option     "Metamodes" "1680x1050"
    SubSection "Display"
        Depth     24
        Modes     "1680x1050"
    EndSubSection
EndSection

Section "Screen"
    Identifier "Screen2"
    Device     "Card2"
    Monitor    "Monitor2"
    Option     "Metamodes" "1680x1050"
    SubSection "Display"
        Depth     24
        Modes     "1680x1050"
    EndSubSection
EndSection

Section "DRI"
    Mode 0666
EndSection

Offline

#3 2009-11-18 16:31:49

llcawthorne
Member
From: Columbia, SC
Registered: 2009-10-16
Posts: 142

Re: randr 1.3/xrandr/multi-GPU status?

As far as I know xrandr doesn't support that type of config yet.  I tried playing with a little and couldn't get it working, so stuck with my triple-head non-xrandr sometimes Xinerama, sometimes not setup.  Here's some of my xorg.conf (I am omitting the uninteresting Font config/module config/IO Device parts of the setup):

  1                                                                             
  2 Section "ServerLayout"
  3     Identifier     "Layout0"
  4     Screen      0  "Screen0" 3600 0
  5     Screen      1  "Screen1" LeftOf "Screen0"
  6     Screen      2  "Screen2" LeftOf "Screen1"
  7     InputDevice    "Keyboard0" "CoreKeyboard"
  8     InputDevice    "Mouse0" "CorePointer"
  9     Option         "Xinerama" "1"
 10 EndSection
 11 
 53 Section "Monitor"
 54     Identifier     "Monitor0"
 55     VendorName     "Unknown"
 56     ModelName      "HSD Hanns.G HG281"
 57     HorizSync       24.0 - 80.0
 58     VertRefresh     56.0 - 75.0
 59     Option         "DPMS"
 60 EndSection
 61 
 62 Section "Monitor"
 63     Identifier     "Monitor1"
 64     VendorName     "Unknown"
 65     ModelName      "Samsung SyncMaster"
 66     HorizSync       30.0 - 81.0
 67     VertRefresh     56.0 - 75.0
 68     Option         "DPMS"
 69 EndSection
 70 
 71 Section "Monitor"
 72     Identifier     "Monitor2"
 73     VendorName     "Unknown"
 74     ModelName      "SONY TV"
 75     HorizSync       30.0 - 80.0
 76     VertRefresh     55.0 - 65.0
 77     Option         "DPMS"
 78 EndSection
 79 
 80 Section "Device"
 81     Identifier     "Device0"
 82     Driver         "nvidia"
 83     VendorName     "NVIDIA Corporation"
 84     BoardName      "GeForce 8800 GT"
 85     Option         "NoLogo" "True"
 86     Option         "TripleBuffer" "True"
 87     Option         "RenderAccel" "True"
 88     Option         "AGPFastWrite" "True"
 89     Option         "EnablePageFlip" "True"
 90     Option         "OnDemandVBlankinterrupts" "True"
 91     # Option            "SLI" "True"
 92     Option         "UseEdidDpi" "false"
 93     Option         "DPI" "96 x 96"
 94     BusID          "PCI:2:0:0"
 95     Screen         0
 96 EndSection
 97 
 98 Section "Device"
 99     Identifier     "Device1"
100     Driver         "nvidia"
101     VendorName     "NVIDIA Corporation"
102     BoardName      "GeForce 8800 GT"
103     Option         "NoLogo" "True"
104     Option         "RenderAccel" "True"
105     Option         "AGPFastWrite" "True"
106     Option         "EnablePageFlip" "True"
107     Option         "TripleBuffer" "True"
108     Option         "OnDemandVBlankinterrupts" "True"
109     # Option       "SLI" "False"
110     Option         "UseEdidDpi" "false"
111     Option         "DPI" "96 x 96"
112     BusID          "PCI:2:0:0"
111     Option         "DPI" "96 x 96"                                          
112     BusID          "PCI:2:0:0"
113     Screen          1
114 EndSection
115 
116 Section "Device"
117     Identifier     "Device2"
118     Driver         "nvidia"
119     VendorName     "NVIDIA Corporation"
120     BoardName      "GeForce 8400 GS"
121     Option         "NoLogo" "True"
122     Option         "RenderAccel" "True"
123     Option         "AGPFastWrite" "True"
124     Option         "EnablePageFlip" "True"
125     Option         "TripleBuffer" "True"
126     Option         "OnDemandVBlankinterrupts" "True"
127     # Option       "SLI" "False"
128     Option         "UseEdidDpi" "false"
129     Option         "DPI" "96 x 96"
130     BusID          "PCI:1:0:0"
131 EndSection
132                                                                             
133 Section "Screen"
134     Identifier     "Screen0"
135     Device         "Device0"
136     Monitor        "Monitor0"
137     DefaultDepth    24
138     Option         "TwinView" "0"
139     Option         "metamodes" "1920x1200_60 +0+0"
140     SubSection     "Display"
141         Depth       24
142     EndSubSection
143 EndSection
144 
145 Section "Screen"
146     Identifier     "Screen1"
147     Device         "Device1"
148     Monitor        "Monitor1"
149     DefaultDepth    24
150     Option         "TwinView" "0"
151     Option         "metamodes" "DFP: 1680x1050_60 +0+0"
152     SubSection     "Display"
153         Depth       24
154     EndSubSection
155 EndSection
156 
157 Section "Screen"
158     Identifier     "Screen2"
159     Device         "Device2"
160     Monitor        "Monitor2"
161     DefaultDepth    24
162     Option         "TwinView" "0"
163     Option         "metamodes" "CRT: 1920x1080_60 +0+0"
164     SubSection     "Display"
165         Depth       24
166     EndSubSection
167 EndSection

I'll be the first to say that I am sure there are parts I could simplify in that though, but it works.  I am sure I don't need like NoLogo in four places though (but I don't want to see that logo!), or specifically disabling TwinView is probably unnecessary, etc.

It's funny.  I have a simplified version I made, but forgot to ever start using.  Maybe I'll swap those out when I am at the house.  This one is loaded up and working on my machine right now though, so it's what I am posting.


To understand recursion, you must understand recursion.

Offline

#4 2010-10-07 01:39:17

4internetanonymity
Member
Registered: 2009-07-09
Posts: 56

Re: randr 1.3/xrandr/multi-GPU status?

Any updates?

The only way I've found to run a useful 3 screen rig is Xinerama (I also have two nvidia cards). The new RANDR seems to not play well with Xinerama, so now some of my beloved programs are not working (but I have three pretty screens).

Offline

#5 2010-10-14 21:57:42

resi
Member
Registered: 2009-12-15
Posts: 44

Re: randr 1.3/xrandr/multi-GPU status?

I also have a triple-head setup, 1 nvidia card with 2 heads and another USB driven head (displaylink), but still running xorg 1.8 (no luck with 1.9 so far).

AFAIK Xinerama is the only way to get that running, at least as a single X server (spanning all 3 heads).
I had some problems with the nvidia driver (using nvidia-173xx) and Xinerama, but nothing a little patch to libxinerama wouldn't fix.

Offline

#6 2010-10-15 04:06:46

BurntSushi
Member
From: Massachusetts
Registered: 2009-06-28
Posts: 362
Website

Re: randr 1.3/xrandr/multi-GPU status?

resi wrote:

I also have a triple-head setup, 1 nvidia card with 2 heads and another USB driven head (displaylink), but still running xorg 1.8 (no luck with 1.9 so far).

Which device are you using?


Education is favorable to liberty. Freedom can exist only in a society of knowledge. Without learning, men are incapable of knowing their rights, and where learning is confined to a few people, liberty can be neither equal nor universal.

Tu ne cede malis sed contra audentior ito

Offline

#7 2010-10-15 07:41:35

resi
Member
Registered: 2009-12-15
Posts: 44

Re: randr 1.3/xrandr/multi-GPU status?

BurntSushi wrote:
resi wrote:

I also have a triple-head setup, 1 nvidia card with 2 heads and another USB driven head (displaylink), but still running xorg 1.8 (no luck with 1.9 so far).

Which device are you using?

% lspci | grep VGA
01:00.0 VGA compatible controller: nVidia Corporation NV37GL [Quadro PCI-E Series] (rev a2)

Offline

#8 2010-10-15 14:51:58

BurntSushi
Member
From: Massachusetts
Registered: 2009-06-28
Posts: 362
Website

Re: randr 1.3/xrandr/multi-GPU status?

resi wrote:
BurntSushi wrote:
resi wrote:

I also have a triple-head setup, 1 nvidia card with 2 heads and another USB driven head (displaylink), but still running xorg 1.8 (no luck with 1.9 so far).

Which device are you using?

% lspci | grep VGA
01:00.0 VGA compatible controller: nVidia Corporation NV37GL [Quadro PCI-E Series] (rev a2)

Errmm... Sorry, I meant, which displaylink device are you using? Their web site has several to choose from--I'd like to get one that someone else has had success with smile


Education is favorable to liberty. Freedom can exist only in a society of knowledge. Without learning, men are incapable of knowing their rights, and where learning is confined to a few people, liberty can be neither equal nor universal.

Tu ne cede malis sed contra audentior ito

Offline

#9 2010-10-18 09:49:00

resi
Member
Registered: 2009-12-15
Posts: 44

Re: randr 1.3/xrandr/multi-GPU status?

BurntSushi wrote:

Errmm... Sorry, I meant, which displaylink device are you using? Their web site has several to choose from--I'd like to get one that someone else has had success with smile

I have a USB->DVI device from a local electronics store that, I assume, is DL 125 based, but its not labeled and I don't want to unscrew it. It works with xorg 1.8 and my nvidia card using Xinerama (latest udlfb and displaylink drivers). The only problem is that this device doesn't read/report EDID data from the connected DFP, but in the meantime the udlfb driver offers a /sys interface to overcome this.

You might want to ask the guys on http://lists.freedesktop.org/mailman/listinfo/libdlo, there are a couple of comments/questions and success stories.

Offline

#10 2013-01-17 00:49:27

4internetanonymity
Member
Registered: 2009-07-09
Posts: 56

Re: randr 1.3/xrandr/multi-GPU status?

Any updates on this? I'm so ready to dump xinerama like everyone else has. Until I can move windows around (how isn't this low-hanging fruit in 2013?), and have my 3 displays - then I'll move.

Are there any recommendations in the meanwhile? Isn't there a cheap card now that can do 3 displays at high resolution? I still have two nvidia cards - which can drive 2 monitors each - so I'm stuck doing 2 monitors on GPU0 and 1 monitor on GPU1. I've not been able to drag screens around without Xinerama. I've not tried running multiple X servers, but I'm guessing this will be too much of a hastle for many reasons.

Offline

#11 2013-01-17 01:40:16

anonymous_user
Member
Registered: 2009-08-28
Posts: 3,059

Re: randr 1.3/xrandr/multi-GPU status?

Maybe this card:

http://www.newegg.com/Product/Product.a … 6814162114

It says it can drive four monitors.

Offline

#12 2013-01-17 03:24:45

BurntSushi
Member
From: Massachusetts
Registered: 2009-06-28
Posts: 362
Website

Re: randr 1.3/xrandr/multi-GPU status?

4internetanonymity wrote:

Any updates on this? I'm so ready to dump xinerama like everyone else has. Until I can move windows around (how isn't this low-hanging fruit in 2013?), and have my 3 displays - then I'll move.

Are there any recommendations in the meanwhile? Isn't there a cheap card now that can do 3 displays at high resolution? I still have two nvidia cards - which can drive 2 monitors each - so I'm stuck doing 2 monitors on GPU0 and 1 monitor on GPU1. I've not been able to drag screens around without Xinerama. I've not tried running multiple X servers, but I'm guessing this will be too much of a hastle for many reasons.

Yes. This has been available with Eyefinity cards for years. (More recently, I believe some of the 600 series nvidia cards now support it.)

This topic is about multi-GPU support, which is still non-existent in RandR. But multiple GPUs haven't been necessary to drive 3+ displays for a long time.

You can get a pretty cheap Eyefinity card to drive 3 displays. More expensive cards can drive 6.

You may be interested Wingo, which is a floating/tiling window manager I developed with good multi-head support by using per-monitor workspaces.

Last edited by BurntSushi (2013-01-17 03:25:14)


Education is favorable to liberty. Freedom can exist only in a society of knowledge. Without learning, men are incapable of knowing their rights, and where learning is confined to a few people, liberty can be neither equal nor universal.

Tu ne cede malis sed contra audentior ito

Offline

#13 2013-01-17 08:58:08

resi
Member
Registered: 2009-12-15
Posts: 44

Re: randr 1.3/xrandr/multi-GPU status?

I'm running a ATI FirePro V4800 here, it drives 3 monitors (1 DVI + 2 DisplayPort) without any problems.

Offline

Board footer

Powered by FluxBB