client-side font rendering very very slow in X.org xserver 1.5.3 w/r200: massive fetches from VRAM, why?

Michel Dänzer michel at daenzer.net
Fri Jan 30 00:16:07 PST 2009


On Thu, 2009-01-29 at 21:16 +0000, Nix wrote:
> I'm posting this here rather than reporting this on bz mainly because
> something very similar has been reported on this list by at least one
> other person in the past few months[1]: at the time, the assumption was
> that this was Intel-card- related. It doesn't seem to be, because I see
> it too, with a Radeon 9250 using AGP, xf86-drivers-ati
> 902eaf768142c6c7dcc487e10775027b84cd1f9a, and pixman
> 95f2af9584f8f4327ddf6d6948dee17ab48ad8b3. (I can upgrade to head if need
> be: this just happens to be what was head when I upgraded. I can do
> profile runs and the like on demand, as well.)

Trying current xf86-video-ati Git might be good, but my main suggestion
would be to try xserver Git server-1.6-branch with EXA.


> Both Konsole 3.5.9 (without a background pixmap) and a recent xterm are
> equally sluggish;

xterm uses core fonts by default, did you configure it differently?


> X: fbFetch_a1             10.92
>    dixLookupPrivate       7.04
>    fbStore_a1             3.70
>    mmxCombineAddU         3.06
>    pixman_image_composite 2.58

[...]

> So it looks like we *are* doing huge numbers of fetches from VRAM,
> judging by the massive time spent in calls upon pixman's fbFetch().

No, at least with EXA, fb*_a1 can't access video RAM directly, as the
EXA core currently never migrates pixmaps of bpp < 8 to video RAM.

To avoid a1 pictures, you could try using anti-aliasing everywhere, i.e.
don't choose any bitmap fonts and don't disable anti-aliasing for small
font sizes.


> And why's this only started happening in 1.5.x?

Not sure, there were many changes between 1.4 and 1.5 in all of EXA, XAA
and fb.


> (++) RADEON(0): Depth 16, (--) framebuffer bpp 16
> (II) RADEON(0): Pixel depth = 16 bits stored in 2 bytes (16 bpp
> pixmaps)

Is it any better in depth 24, or even worse?


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



More information about the xorg mailing list