libX11 and xcb

Jamey Sharp jamey at minilop.net
Fri Apr 9 11:36:55 PDT 2010


On Fri, Apr 9, 2010 at 10:58 AM, Jeremy Huddleston
<jeremyhu at freedesktop.org> wrote:
> So what is the general recommendation at this point for how to ship
> libX11?  I'm still shipping a build --without-xcb mainly because we
> wanted to play it safe during xcb's infancy.

I'm curious to hear from packagers myself. I think most packagers are
building --with-xcb at this point, on Linux, BSD, and Solaris? I don't
know though.

> Has anyone did performance comparisons recently?

I re-ran performance tests when we switched to the "socket handoff" API,
and my results showed very little difference between libX11 built with
and without XCB. I think that testing was with a simple application that
sends NoOperation requests as fast as it can, which is a worst-case for
X protocol marshalling performance.

It's expected that throughput and latency are basically unchanged in the
"socket handoff" implementation, because in that version libX11 mostly
works just the way it always did, and then calls writev(2) just like it
always did, except now through a trivial XCB wrapper that tracks the
number of requests issued.

> Are there any bugs or support issues with the switch that I should be
> aware of?  I've been using it locally without any problem, but I'd like
> to check in before shipping it.

As far as I can tell, very few users have any trouble. When I do see a
bug report, it's almost always triggered by some piece of closed-source
software, so the reports we get at this point are usually tricky or
impossible to track down. That's frustrating for everybody...

I may not have a complete picture of support issues, though. Ubuntu
apparently fails to send XCB-related bug reports upstream, for example,
and naturally I can't tell if other distros are failing the same way.

So again, I'd like to learn the answers to your questions, too. :-)

Jamey


More information about the xorg-devel mailing list