View Single Post
Old 01-09-06, 12:20 PM   #1
erijo254
Registered User
 
Join Date: Jan 2006
Posts: 1
Default TwinView - Xinerama with 2+1 display setup

Hello,

We have been using TwinView to successfully run our application for some time. Now we're trying to add a third, separate screen, to which the mouse/pointer intentionally cant get. We do this by adding a second PCI-E card to the system to which we attatch the third display. Part of the XF86Config looks like this:
Code:
Section "ServerLayout"
	Identifier     "Default Layout"
	Screen         "Screen0" 0 0
	Screen         "Screen1"

Section "Device"
	Identifier  "Videocard0_0"
	Driver      "nvidia"
	VendorName  "Videocard vendor"
	BoardName   "NVIDIA Quadro FX (generic)"
	Option	    "IgnoreEDID" "true"
	BusId	    "PCI:2:0:0"
	Option	    "TwinView" "ON"
	Option	    "TwinViewOrientation" "RightOf"
	Option	    "SecondMonitorHorizSync" "30-121"
	Option	    "SecondMonitorVertRefresh" "48-160"
	Option	    "Metamodes" "1600x1200,1600x1200"
EndSection

Section "Device"
	Identifier  "Videocard1_0"
	Driver      "nvidia"
	VendorName  "Videocard vendor"
	BoardName   "NVIDIA Quadro FX (generic)"
	Option	    "IgnoreEDID" "true"
	BusId	    "PCI:129:0:0"
EndSection

Section "Screen"
        Identifier "Screen0"
        Device     "Videocard0_0"

Section "Screen"
        Identifier "Screen1"
        Device     "Videocard1_0"
See attachments XF86Config.twinview.zip and log.XFree86.twinview.zip

This gives us an extra display (:0.1), and generally does what we want. However, no Xinerama information is available on the TwinView display. Is there a reason why it can't/wont be provided in this scenario? There is a flag to force them 'off', but can they be forced on?

In trying to work around this problem, I used the Xinerama functionality of the X server. However, it turns out that there is a huge (GL?) performance hit using Xinerama rather than TwinView. This can be seen using only two displays on one card.
Code:
Section "ServerLayout"
    Identifier  "Filmlight Baselight"
    Screen      0 "UIScreen" 0 0
    Screen      1 "ImageScreen" RightOf "UIScreen"
    Option      "Xinerama" "on"

Section "Device"
    Option        "ConnectedMonitor" "CRT-0"
    Identifier    "UIDevice"
    Driver        "nvidia"
    VendorName    "Videocard vendor"
    BoardName     "NVIDIA Quadro FX (generic)"
    BusId         "PCI:2:0:0"
    Screen        0
    Option        "IgnoreEDID" "true"
    Option        "NoLogo" "true"
    Option        "NoPowerConnectorCheck" "false"        
EndSection

Section "Device"
    Option        "ConnectedMonitor" "CRT-1"
    Identifier    "ImageDevice"
    Driver        "nvidia"
    VendorName    "Videocard vendor"
    BoardName     "NVIDIA Quadro FX (generic)"
    BusId         "PCI:2:0:0"
    Screen        1
    Option        "IgnoreEDID" "true"
    Option        "NoLogo" "true"
    Option        "NoPowerConnectorCheck" "false"        
EndSection
See attachments XF86Config.xinerama.zip and log.XFree86.xinerama.zip

Notably, glxgears runs equally well using TwinView and Xinerama. Our application, which does 'video' playback, only ever hits 15 fps on the Xinerama setup but easily does 24+ fps using TwinView. I have not put in the effort of narrowing this down to an easily reproducible case... yet. (Tried downgrading from 8178 to 7174, which I believe doesn't do acceleration under Xinerama. 7174 gave only 2 fps)

So basically, there are two problems present
1) No Xinerama extensions using TwinView with 'third' screen
2) Poor performance using Xinerama

Help towards a solution to either one of these would be very helpful. For now we get by using the 'TwinView without Xinerama info' setup.

Attachments are gzip'ed, despite the 'zip' ending.

Thank you,
Erik
Attached Files
File Type: zip XF86Config.twinview.zip (1.9 KB, 139 views)
File Type: zip log.XFree86.twinview.zip (8.2 KB, 129 views)
File Type: zip XF86Config.xinerama.zip (1.6 KB, 139 views)
File Type: zip log.XFree86.xinerama.zip (8.2 KB, 126 views)
File Type: zip nvidia-bug-report.log.zip (20.4 KB, 125 views)
erijo254 is offline   Reply With Quote