[cairo] XShm when?

Carl Worth cworth at cworth.org
Thu Jan 24 05:31:02 PST 2008

On Thu, 24 Jan 2008 11:42:56 +0100, Theo Veenker wrote:
> to use XShm to speed things up a bit. As I understand from the
> the XShm thread of last october this is being worked on. Is there
> a schedule for it? It is not on the roadmap.

Not really any schedule yet. We're hoping to make our 1.6 release
quite soon, and since that's a chance to get API additions in,
something would have to happen very soon on this front if the XShm
work will make it in. Otherwise, it couldn't happen sooner that 1.8
which is likely to be about 9 months away, (judging by past history of
cairo releases).

Meanwhile, I don't think anybody has demonstrate a clear performance
win from the XShm work done so far.

> In the mean-time, would I gain anything by using a Pixmap created
> with XShmCreatePixmap() as a rendering surface and then copy
> to the window with XCopyArea()?

One question here is what cases of cairo XPutImage are hurting you? Is
it doing things like:

	cairo_set_source_surface (cr, image_surface);
	cairo_paint (cr);

That is, uploading image data through cairo API? In this case, then
yes you could manually do an XShm upload instead, (with a rather
marked lack of convenience). This is the case I'd really like to see
the XShm work address.

Or is it something else? Such as XPutImage calls from rendering due to
cairo having to fallback to image-based rendering. If something like
that, then perhaps there's something more significant you can do to
address the performance problems. So let us know.

> BTW, what is pixman? Do I explicitly need it with cairo,
> or is it something under the hood?

It's the library that does all the software rendering for cairo, (the
image backend and the fallbacks for the other backends). For all cairo
releases from 1.0 through 1.4 it was an under-the-hood thing inside of
cairo itself. Starting with the 1.5 development snapshots, and in the
upcoming 1.6 release, it's now a separate library that needs to be
compiled before cairo. The various download instructions and README
files should have good pointers to it. But if we missed some
instructions somewhere, please let us know.

> PS. is the search thingy on http://lists.cairographics.org/archives/cairo/
> up to date? Entering xshm for example yields no results.

Thanks for pointing this out. It looks like this got changed to search
for "lists.freedesktop.org" at some point instead of the correct
"lists.cairographics.org". I've fixed that now and I now get 51
results with a search for "xshm".

Have fun with cairo!

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://lists.cairographics.org/archives/cairo/attachments/20080124/626f28d0/attachment.pgp 

More information about the cairo mailing list