[cairo] recursive quad-tree, or bounding box of changed area during drawing?

Soeren Sandmann sandmann at daimi.au.dk
Sat Jun 3 15:37:52 PDT 2006


Carl Worth <cworth at cworth.org> writes:

> Those results are aberrant. There is no good reason that the xlib
> backend should ever be significantly slower than the image backend,
> (since the X server has access to the same software rendering code
> that cairo's image backend has). So the cases where xlib is
> under-performing the image backend by 10x are truly broken
> somewhere.

One thing that will cause the exact same code to run much slower in
the X server, is if the destination ends up in video memory. Reading
from video memory happens at speeds like 13 MB/s.

As an example, in such a scenario filling three alpha rectangles of
size 1000 x 1000 x 32 bit will take more than a second to render.


Soren


More information about the cairo mailing list