You are not logged in.
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
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
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
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
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
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
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
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
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
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
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
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
Maybe this card:
http://www.newegg.com/Product/Product.a … 6814162114
It says it can drive four monitors.
Offline
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
I'm running a ATI FirePro V4800 here, it drives 3 monitors (1 DVI + 2 DisplayPort) without any problems.
Offline