Benchmark of Wayland

Russell Shaw rjshaw at netspace.net.au
Wed Nov 17 19:25:34 PST 2010


On 18/11/10 13:56, Justin Lee wrote:
> 2010/11/18 microcai<microcai at fedoraproject.org>:
>>
>>
>> 2010/11/18 Justin Lee<justinlee5455 at gmail.com>
>>>
>>> This kind of latency due to OS scheduling could be eliminated by
>>> direct-procedure call. That is, the client passes the GEM buffer to
>>> the server just like it passes the GEM buffer as an argument to a
>>> function. In this approach, the compositor is not a process. Rather,
>>> the compositor is just a function live in the client program. So there
>>> will be no context switches.
>>
>> So ? Move wayland entirely into the kernel ? Then there will be no delay.
>
> No, I don't think so. The necessary infrastructure have been there in
> the kernel (i.e. DRM, GEM, KMS). I don't think we should bother
> writing kernel code which is error-prone and need specific care to
> avoid bugs and instability. Besides, I don't think moving Wayland into
> the kernel will be any beneficial if we could do all the same thing in
> user space.
>
> I pointed out the latency because I don't want to see any lag when I
> scroll down a web page in my browser. I have noticed that in X when I
> dragged down the scroll bar in browser, the scroll bar wasn't tied to
> the mouse pointer and the scroll bar fell behind the mouse pointer.
> When the scroll bar was dragged down, the web page wasn't updated
> immediately. Instead, the page got updated until a small period of
> time was passed after the drag happened.

Laggy user interfaces are usually due to crappy inefficient
drawing libraries doing software rendering. A lot of the blame
can be on GPU vendors for not releasing detailed programming
specs to enable decent drivers.

If the widget toolkit isn't designed well, round-trip X11
requests between server and client can have a large impact.

Also, the kernel itself can be a bottleneck.

http://www.techworld.com.au/article/368448/tiny_linux_kernel_patch_delivers_huge_speed_boost/

> This kind of issue would be solved in direct-procedure call approach,
> because  function call is synchronized. The function get executed
> right away after the caller calls it. It is the most *direct* manner I
> can think of.
>
>> And that's probably what MacOSX and Windows NT does. As far as I know,
>> Darwin uses quantz (AGL?)  as basis of their GUI system , but WIndows NT
>> uses bullshit GDI .....
>
> <<<bullsh*t>>>  GDI?????
> Sounds like you are radical Microsoft hater. Yeah, many Linux users
> hate MS, but there is no need to be so radical in a mailing list which
> is unrelated to MS. ...I mean there are many MS forums on the net, you
> know.


More information about the wayland-devel mailing list