PolyRectFill preformance

Ross Vandegrift ross at kallisti.us
Tue Mar 18 18:02:53 PDT 2008

On Tue, Mar 18, 2008 at 04:32:00PM +0100, Michel Dänzer wrote:
> You need to check in exaPolyFillRect why it's falling back - in the case
> of https://bugs.freedesktop.org/show_bug.cgi?id=12671 it's stippled
> fills, though I don't really see what they're used for...

This is exactly the same case that I've been looking at - profiling
the blogger.com newsticker mentioned in the bug gives me exactly the
same callgraph.  I also played with CSS from an internal app from work
until I found a minimal test case.

Compositing transparent images is the root cause.  The app at work uses a
vertically repeated transparent gif as the background for a div.  That
by itself is bad enough to cause some noticable usage, but when the
guy that wrote that app nests the divs, compounds the problem.

The blogger newsticker looks like it uses javascript to fade in the
news on the ticker - basically the same effect, but worse since it
keeps doing it.

http://kallisti.us/~ross/highcpu.html shows the issue on my system.
The random text is just junk to make it so you can scroll - any time
the page renders, Xorg grabs a bunch of CPU.

You can make it worse if you nest a few of those <divs> - four or five
and I have to wait many seconds while Xorg spins at max cpu.

Ross Vandegrift
ross at kallisti.us

"The good Christian should beware of mathematicians, and all those who
make empty prophecies. The danger already exists that the mathematicians
have made a covenant with the devil to darken the spirit and to confine
man in the bonds of Hell."
	--St. Augustine, De Genesi ad Litteram, Book II, xviii, 37

More information about the xorg mailing list