On Don, 2002-01-10 at 04:37, Owen Taylor wrote:

> Testing out my rendering code, I noticed that I wasn't getting the
> speedups I expected with HW compositing on the MGA. Looking into this,
> I discoved that MGASetupForCPUToScreenTexture() copied the entire
> source drawable into video memory every time. Since the way that GTK+
> works is to use a different bit of one large source drawable for every
> operation, this causing just a bit of a slowdown.
> 
> Here's a patch that fixes this problem by simply allocating the
> scratch area in MGASetupForCPUToScreenTexture() and then doing the
> copies in MGASubsequentCPUToScreenTexture().

Sounds good, I'll try the same with the r128 and/or radeon drivers once
I get RENDER acceleration working there.

BTW what are good GTK+ tests for this?


> Since this is not an area that I'm very familiar with, I'd appreciate
> if someone would look this over - in particular, the way I'm passing
> a bunch of parameters from MGASetupForCPUToScreen*Texture() to
> MGASubsequentCPUToScreenTexture() using a bunch of static variables
> seems ugly, but that was how it was done for tex_padh/padw so I
> copied that.

I think passing it in the per-screen driver-private data (pMga for the
mga driver) would be safer when the driver handles several screens, but
maybe that's not an issue.


-- 
Earthling Michel D�nzer (MrCooper)/ Debian GNU/Linux (powerpc) developer
XFree86 and DRI project member   /  CS student, Free Software enthusiast
_______________________________________________
Xpert mailing list
[EMAIL PROTECTED]
http://XFree86.Org/mailman/listinfo/xpert

Reply via email to