Horrible Xrender performance in Xorg 1.6.2

Michael macallan at netbsd.org
Wed Jul 1 11:11:25 PDT 2009


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hello,

we ( that's NetBSD ) are in the process of updating our in-tree  
Xserver from Xorg 1.4.2 to 1.6.* - I noticed some problems when  
porting my driver for the SGI O2's rendering engine:
- - anti-aliased font rendering performance went down the drain. In  
1.4.2 I got >160000 characters per second in x11perf -aa10text, now  
it's down to a mere 8000, just about what I'd expect with pure  
software rendering. It still goes through the hardware-accelerated  
composite functions though. What changed here? Also, drawing non-anti- 
aliased text is not affected, it's still going at about 400000/s.
- - horizontal and vertical lines all of sudden fall back to software  
instead of using the hardware-accelerated functions. I have no idea  
why, other lines and other rectangle fills work just as before.

The driver uses XAA and we don't have a linear framebuffer which is  
why falling back to software rendering isn't only slow, it gives  
completely wrong results. The driver uses its own Composite() handler  
instead of XAA's in order to catch all whatever-to-vram composite  
operations - CRIME can accelerate them all and fallback to software  
has to be prevented. Going through the changes in XAA didn't yield  
anything that looks related.

Any ideas? Somehow I don't think any of this has much to do with the  
driver or the underlying hardware.

have fun
Michael

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (Darwin)

iQEVAwUBSkumzcpnzkX8Yg2nAQK+Qgf/a2ur7PKDbF84f3p46X/PGCVC+cMXbvpy
jA89a/bEnoz1x3INExeLJ3ieFOWqF8n0ojB14cvIdHB1kjOnWhST1cwUtoWdhbXu
wFunpO7RF2It60Ol+/+QeZ5RfvHyB1NavskwawkyXGEugXkmm20+MnRqzYZVjp9i
zZ87MXlvNGizL01cpDxZ5BFgfZ+vFC9nobY3q6+g2r7yiBDu1h3/Yc5JpRA3iCX0
72tqNosUB3FSJUyAoT2yijGs7PConXz9qUYqcgG+9HBa/OVQjlBPtPbHNuJS6J+e
0qQrBFi4AU9oJwxW1CoO/3TtyQgEBxli1q+1pyNcIvq6CLyDY05AAQ==
=3n47
-----END PGP SIGNATURE-----


More information about the xorg-devel mailing list