Wayland For Very Large Wall of Screens

Linux Luser linuxluser at gmail.com
Thu Oct 2 16:20:29 PDT 2014


Thanks, all.

I think that answers the question. Really, Wayland is not an appropriate
place for proper multi-GPU processing (which would be invisible to an
application). So, if it were to be done "the right way", it would be in the
compositor, and the compositor needs better support from DRM and other
underpinnings.

One thing that I was interested in was this kind of thing at the level of
the driver. The only mention of it I could find on the entire Internet was
an experiment that ATI had done called "Partial Surface Rendering". There's
a video that talks about it for about 10 minutes and that's about all:

https://www.youtube.com/watch?v=u4mOIn8jgp8#t=15m55s


If multi-GPU support happened inside of the driver, would this all be
transparent to Wayland then? And would that solve the whole issue?

On Thu, Oct 2, 2014 at 3:21 PM, Daniel Stone <daniel at fooishbar.org> wrote:

> Hi,
>
> On 2 October 2014 23:13, Dave Airlie <airlied at gmail.com> wrote:
>
>> On 1 October 2014 03:15, Daniel Stone <daniel at fooishbar.org> wrote:
>> > On 30 September 2014 16:44, Jasper St. Pierre <jstpierre at mecheye.net>
>> wrote:
>> >> It's a great question, with a complicated answer. Part of this is the
>> >> fault of the DRM kernel interface, which is being improved. Part of it
>> is
>> >> the fault of GL/EGL, which really doesn't have proper multi-GPU
>> support.
>>
>> Also there is a good reason Windows doesn't work with multiple
>> graphics cards anymore that aren't from the same vendor and in the
>> same general class of chip.
>>
>> For running a wall of lots of monitors or you need multiple ATI or
>> multiple NVIDIA cards, getting anything else to function in a rational
>> manner isn't supported or at least wasn't last I look.
>>
>> Since you have a compositor running you no longer have the knowledge
>> of on-screen clipping to say where to direct rendering,
>>
>> There is unfortunately no "nice" solution to this problem, under X or
>> wayland, except making apps that are aware of the problem and use
>> interface provided to solve it.
>>
>> You also have the optimus style solutions, which is run everything on
>> one GPU and just use the other GPUs as slave outputs.
>>
>
> Yeah, actually exploding them is a very difficult problem. Especially in a
> system like Wayland rather than X11, where we don't hand out global
> co-ordinates, so we can't just say 'this chunk is on this GPU, that chunk
> on that GPU, ...'. We'd need a way to explode the surfaces in such a way
> that you could atomically attach multiple buffers, plus compositor support
> for ensuring coherent presentation of all those buffers, and then try to
> keep the display controller side of things as tight as possible, which if
> you're doing media or moving anything around between outputs, really means
> cross-device genlock.
>
> Long short short, there's nothing in Wayland that precludes it, but it
> really is the very very least of your problems.
>
> Cheers,
> Dan
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/wayland-devel/attachments/20141002/0a26d22f/attachment-0001.html>


More information about the wayland-devel mailing list