[prev in list] [next in list] [prev in thread] [next in thread] 

List:       freedesktop-xorg
Subject:    Multiple Headless X Servers Attached to Graphics Cards
From:       Jonathan Herriott <herriojr () gmail ! com>
Date:       2013-03-30 0:05:21
Message-ID: CAPGnN=+_dnd9kzvTQMASVpK97ufNeQDhb3sPpGhGSHYu6+wQjg () mail ! gmail ! com
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


Hi,

I'm attempting to run an Amazon GPU instance which has access to two Tesla
M2050 GPUs on Ubuntu 12.10 and am having a major issue.

Unlike the usual case of running these things as CUDA servers, I'm actually
attempting to do some OpenGL rendering.  I've set my xconfig to contain two
ServerLayouts, one pointing to one GPU and one pointing to the other.

Section "ServerLayout"
    Identifier     "gpu0"
    Screen      0  "Screen0" 0 0
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"
EndSection

Section "ServerLayout"
    Identifier     "gpu1"
    Screen      0  "Screen1" 0 0
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"
EndSection

Section "Device"
    Identifier     "Card0"
    Driver         "nvidia"
    BusID          "PCI:0:3:0"
EndSection

Section "Device"
    Identifier     "Card1"
    Driver         "nvidia"
    BusID          "PCI:0:4:0"
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Card0"
    Monitor        "Monitor0"
    SubSection     "Display"
        Viewport    0 0
    EndSubSection
    SubSection     "Display"
        Viewport    0 0
        Depth       4
    EndSubSection
    SubSection     "Display"
        Viewport    0 0
        Depth       8
    EndSubSection
    SubSection     "Display"
        Viewport    0 0
        Depth       15
    EndSubSection
    SubSection     "Display"
        Viewport    0 0
        Depth       16
    EndSubSection
    SubSection     "Display"
        Viewport    0 0
        Depth       24
    EndSubSection
EndSection

Section "Screen"
    Identifier     "Screen1"
    Device         "Card1"
    Monitor        "Monitor1"
    SubSection     "Display"
        Viewport    0 0
    EndSubSection
    SubSection     "Display"
        Viewport    0 0
        Depth       4
    EndSubSection
    SubSection     "Display"
        Viewport    0 0
        Depth       8
    EndSubSection
    SubSection     "Display"
        Viewport    0 0
        Depth       15
    EndSubSection
    SubSection     "Display"
        Viewport    0 0
        Depth       16
    EndSubSection
    SubSection     "Display"
        Viewport    0 0
        Depth       24
    EndSubSection
EndSection

Now, when I run a single X server pointing to either of these
ServerLayouts, it works fine.  The issue is when I run two X servers at the
same exact time one pointing to one ServerLayout and one to the other.
 Anything trying to use the first one that was started will always have
issues.

Both x servers are started as so:

openvt -fw -- su -c "startx -- ${DISPLAY} -logverbose 20 -config
xorg.${LAYOUT}.conf -layout ${LAYOUT}" xuser

where for one X server, DISPLAY=:0 LAYOUT=gpu0

and the other is DISPLAY=:1 LAYOUT=gpu1

If the X server is started first for :0 the :1, any rendering using OpenGL
I try to do on :0 will result in either freezing, rendering fuzz, or
rendering a black screen.

If these instances supported SLI, this wouldn't be an issue, but
unfortunately, they don't.  Any help or direction on this matter would be
much appreciated as I haven't found a great way to debug what is going on
or whether the issue lies in X or the nvidia drivers (310.40).

Thanks,
Jonathan Herriott

[Attachment #5 (text/html)]

<div dir="ltr">Hi,<div><br></div><div>I&#39;m attempting to run an Amazon GPU \
instance which has access to two Tesla M2050 GPUs on Ubuntu 12.10 and am having a \
major issue.</div><div><br></div><div style>Unlike the usual case of running these \
things as CUDA servers, I&#39;m actually attempting to do some OpenGL rendering.  \
I&#39;ve set my xconfig to contain two ServerLayouts, one pointing to one GPU and one \
pointing to the other.</div> <div style><br></div><div style><div>Section \
&quot;ServerLayout&quot;</div><div>    Identifier     &quot;gpu0&quot;</div><div>    \
Screen      0  &quot;Screen0&quot; 0 0</div><div>    InputDevice    \
&quot;Keyboard0&quot; &quot;CoreKeyboard&quot;</div> <div>    InputDevice    \
&quot;Mouse0&quot; &quot;CorePointer&quot;</div><div>EndSection</div><div><br></div><div>Section \
&quot;ServerLayout&quot;</div><div>    Identifier     &quot;gpu1&quot;</div><div>    \
Screen      0  &quot;Screen1&quot; 0 0</div> <div>    InputDevice    \
&quot;Keyboard0&quot; &quot;CoreKeyboard&quot;</div><div>    InputDevice    \
&quot;Mouse0&quot; &quot;CorePointer&quot;</div><div>EndSection</div><div><br></div><div><div>Section \
&quot;Device&quot;</div> <div>    Identifier     &quot;Card0&quot;</div><div>    \
Driver         &quot;nvidia&quot;</div><div>    BusID          \
&quot;PCI:0:3:0&quot;</div><div>EndSection</div><div><br></div><div>Section \
&quot;Device&quot;</div><div>  Identifier     &quot;Card1&quot;</div><div>    Driver  \
&quot;nvidia&quot;</div><div>    BusID          \
&quot;PCI:0:4:0&quot;</div><div>EndSection</div></div><div><br></div><div><div>Section \
&quot;Screen&quot;</div> <div>    Identifier     &quot;Screen0&quot;</div><div>    \
Device         &quot;Card0&quot;</div><div>    Monitor        \
&quot;Monitor0&quot;</div><div>    SubSection     &quot;Display&quot;</div><div>      \
Viewport    0 0</div> <div>    EndSubSection</div><div>    SubSection     \
&quot;Display&quot;</div><div>        Viewport    0 0</div><div>        Depth       \
4</div><div>    EndSubSection</div><div>    SubSection     \
&quot;Display&quot;</div><div>  Viewport    0 0</div><div>        Depth       \
8</div><div>    EndSubSection</div><div>    SubSection     \
&quot;Display&quot;</div><div>        Viewport    0 0</div><div>        Depth       \
15</div><div>    EndSubSection</div> <div>    SubSection     \
&quot;Display&quot;</div><div>        Viewport    0 0</div><div>        Depth       \
16</div><div>    EndSubSection</div><div>    SubSection     \
&quot;Display&quot;</div><div>        Viewport    0 0</div> <div>        Depth       \
24</div><div>    EndSubSection</div><div>EndSection</div></div><div><br></div><div><div>Section \
&quot;Screen&quot;</div><div>    Identifier     &quot;Screen1&quot;</div><div>    \
Device         &quot;Card1&quot;</div> <div>    Monitor        \
&quot;Monitor1&quot;</div><div>    SubSection     &quot;Display&quot;</div><div>      \
Viewport    0 0</div><div>    EndSubSection</div><div>    SubSection     \
&quot;Display&quot;</div><div>        Viewport    0 0</div> <div>        Depth       \
4</div><div>    EndSubSection</div><div>    SubSection     \
&quot;Display&quot;</div><div>        Viewport    0 0</div><div>        Depth       \
8</div><div>    EndSubSection</div><div>    SubSection     &quot;Display&quot;</div> \
<div>        Viewport    0 0</div><div>        Depth       15</div><div>    \
EndSubSection</div><div>    SubSection     &quot;Display&quot;</div><div>        \
Viewport    0 0</div><div>        Depth       16</div><div>    EndSubSection</div> \
<div>    SubSection     &quot;Display&quot;</div><div>        Viewport    0 \
0</div><div>        Depth       24</div><div>    \
EndSubSection</div><div>EndSection</div></div><div><br></div><div style>Now, when I \
run a single X server pointing to either of these ServerLayouts, it works fine.  The \
issue is when I run two X servers at the same exact time one pointing to one \
ServerLayout and one to the other.  Anything trying to use the first one that was \
started will always have issues.</div> <div style><br></div><div style>Both x servers \
are started as so:</div><div style><br></div><div style>openvt -fw -- su -c \
&quot;startx -- ${DISPLAY} -logverbose 20 -config xorg.${LAYOUT}.conf -layout \
${LAYOUT}&quot; xuser<br> </div><div style><br></div><div style>where for one X \
server, DISPLAY=:0 LAYOUT=gpu0</div><div style><br></div><div style>and the other is \
DISPLAY=:1 LAYOUT=gpu1</div><div style><br></div><div style>If the X server is \
started first for :0 the :1, any rendering using OpenGL I try to do on :0 will result \
in either freezing, rendering fuzz, or rendering a black screen.</div> <div \
style><br></div><div style>If these instances supported SLI, this wouldn&#39;t be an \
issue, but unfortunately, they don&#39;t.  Any help or direction on this matter would \
be much appreciated as I haven&#39;t found a great way to debug what is going on or \
whether the issue lies in X or the nvidia drivers (310.40).</div> <div \
style><br></div><div style>Thanks,</div><div style>Jonathan \
Herriott</div></div></div>



_______________________________________________
xorg@lists.x.org: X.Org support
Archives: http://lists.freedesktop.org/archives/xorg
Info: http://lists.x.org/mailman/listinfo/xorg
Your subscription address: freedesktop-xorg@progressive-comp.com

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic