Profiling redraws with Xorg

Peter Clifton pcjc2 at
Fri Dec 26 10:34:40 PST 2008

On Fri, 2008-12-26 at 17:48 +0100, Clemens Eisserer wrote:
> > Could be. Shame the new optimised implementation of the private lookup
> > had to be reverted on the 1.5 branch.
> Its not shame, its just that ABI changes don't fit in minor releases.
> > I'm running 1.5.99, and it would appear that the patch is applied. It is
> > a shame dixLookupPrivate is consuming so many cycles still.
> I doubt the new implementation could consume 13% of total cycles.
> Its _very_ quick and should consume only a few cycles.

Ok - so I found my own bug.. I was dividing by 256, rather than 255 when
computing colours, and getting a non 1.0 alpha in cairo - hence was
drawing translucent lines rather than solid ones, hence a huge cost in
pixmap migration for each line I drew. (Almost every other column, and
almost every other row on the screen).

With that fixed, the dixLookupPrivate only consumes 4.5% of the total
system time. I say "only", but that is still about 4% or so too many ;).

Peter Clifton

Electrical Engineering Division,
Engineering Department,
University of Cambridge,
9, JJ Thomson Avenue,

Tel: +44 (0)7729 980173 - (No signal in the lab!)

More information about the xorg mailing list