EXA and MigrationHeuristic

Michel Dänzer michel at tungstengraphics.com
Thu May 29 03:06:29 PDT 2008

On Wed, 2008-05-28 at 20:46 +0200, Juliusz Chroboczek wrote:
> After my recent adventures with Radeon, XAA and EXA, I've come to the
> conclusion that setting MigrationHeuristic to greedy drastically helps
> performance of Firefox redraws on both Radeon and i965GM hardware.
> By drastically, I mean it -- a redraw of a full-screen Firefox goes
> from 3 to 5 seconds (!) down to a fraction of a second.

Is this Firefox 2 or 3? And what exactly do you mean by 'redraw'?

> Now I haven't read the sources of Firefox (let him who has cast me the
> first stone), but I believe that Firefox performs client-side backing
> store using absolutely humonguous pixmaps.  While we may argue that
> what Firefox does is stupid, I think we should try to support this
> kind of usage.

EXA is all about pixmaps, so that shouldn't be a problem per se.

> Isn't the default value of MigrationHeuristic incorrect ?  Should we
> switch to greedy as default ?

I don't think so, the key point being Stéphane's.


"greedy" is faster than "always" in some cases because it's quite
conservative about migrating pixmaps offscreen. Any single low level
operation can only be accelerated if all pixmaps involved are offscreen,
so this results in fewer operations being accelerated, thereby avoiding
migration overhead for operations that can't be accelerated for other

Moreover, IME "greedy" tends to be inconsistent due to how it migrates
pixmaps over time - the same high level operation can be fast or slow at
different times.

Earthling Michel Dänzer           |          http://tungstengraphics.com
Libre software enthusiast         |          Debian, X and DRI developer

More information about the xorg mailing list