Performance change from X in Fedora Core 4 to Fedora Core 5

Clemens Eisserer linuxhippy at gmail.com
Mon Jul 10 10:11:52 PDT 2006


Hello again,

> work well with the open source drivers, and let nVidia optimize for
> GTK+ if their drivers have problems with that.)
Well lets do some benchmarking first, before shifting responsibilities
for something which does not work well "back to the evil" ;-)
I think "optimizing for something" is almost never a good idea, but if
many boxes benefit why not.

I am aware of the memory-consumption problem although I don't think
its that problematic (how many full-screen-sized windows do you have
visible at a time?) thats why I think the implementations should be
exchangeable.
I did not suggest to take my implementation as is, but to do some
further investigation of the topic. Basically what I hacked together
was just to see wether if it changes anything and how other hardware
does behave.

Because expose'es typically happen often after each other (and thats
what the use sees as "slow") I could imagine another much more clever
implementation releasing buffers after some time or whatever. If in
overall a 10% performance improvement would be the result all over the
boards I would thinks about it as a success.

> While it's cool you are trying out different ways to do things, I think
> putting any code in GTK+ in advance of more careful performance
> investigation would be a mistake. Try some micro benchmarks: how long
> does allocating pixmaps take?
I absolutly agree with you - before work on something make sure it
will really change something. However I don't count on
microbenchmarks, I am excited what the results of michal will show (I
guess a 5% better result or so).

Thanks a lot for your attention and for answering, lg Clemens

> - in the composited architecture, there already *are* persistent double
> buffers for all toplevel windows, so investigating using those in some
> way could be interesting. What you have to avoid is the compositing
> manager doing tons of extra work in this case.
I already thought about that (started already a small thread here on
the xorg mailing list), maybe worth another prototype implementation
:-)



More information about the xorg mailing list