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
