[PATCH] Ensure blitter quiescience before reading pixels from the framebuffer

Bernardo Innocenti bernie at codewiz.org
Mon Jul 30 05:02:29 PDT 2007

Michel Dänzer wrote:

> Not sure there's still anyone around who cares about XAA...

afaik, as of today XAA is still the default on all mayor Linux
distros.  Simple bug fixes are probably still wanted.

>> Moreover, we're just scratching the surface of serious performance
>> bottlenecks in both EXA and XAA.  Is anyone interested in discussing
>> possible solutions?
> I certainly am for EXA.

I'm unsure how we could eliminate those 1x1 pixmaps used for solid fills,
but they're certainly a big performance hit.  In some cases, we even upload
them to the framebuffer by *dma*, then read the pixel with CPU :-)

As Carl Worth noted in his recent performance analysis, we need to reduce
the overhead of simple and frequent operations.

A radical solution would be adding the concept of solid colors as sources
for RENDER operations.  This would eliminate the creation of Picture objects
and their transfer over the wire-protocol, but it's more work and requires
changes in client-side libraries such as Cairo.

A half-way solution would involve teaching the server-side to recognize these
degenerate cases early and throw away the picture.  This would still require
changes in the interface between EXA and the drivers.

Thoughts?  I'm willing to dedicate some of my time to help here, but I need
some guidance and general consensus on the path we want to follow.

   // Bernardo Innocenti
 \X/  http://www.codewiz.org/

More information about the xorg mailing list