[Bug 13801] Very slow text rendering in AutoCAD

wine-bugs at winehq.org wine-bugs at winehq.org
Wed Jul 8 04:51:51 CDT 2009


--- Comment #44 from Roderick Colenbrander <thunderbird2k at gmail.com>  2009-07-08 04:51:43 ---
(In reply to comment #43)
> (In reply to comment #42)
> > Hi,
> > 
> > I'm working on replacing big chunks of the Wine bitblt code with XRender. This
> > will in the end also eliminate some DIB bottlenecks because XRender can do
> > depth conversion, so we don't have to that during a X11DRV_DIB_SetImageBits and
> > in other places.
> > 
> > It was mentioned in this bug report that text rendering is slow due to a part
> > of the DIB stuff. Did you perform any profiling e.g. using sysprof/oprofile to
> > see which functions consume most time? In the report depth conversion isn't
> > mentioned but I guess that this might be one of the most time consuming parts.
> > Is this the case? My work might be able to accelerate AutoCad quite a bit (sure
> > not as much as a complete DIB engine).
> > 
> > Roderick
> I didn't make a true profiling, but some (long) time ago I traced down the code
> flow, and the bottleneck was (IIRC....) on ExtTextOut function, which did some
> DIB_Coerce() calls. Removing the coerce stuffs gave back the speed at the
> expense of missing text, obviously. The problem is not the bitblt, but the text
> output on a dib with format different than screen's one. I guess your patch
> won't speed up this stuff.....
> Of course, if you have a way to use XRENDER to paint fonts on different bit
> depths without doing a conversion, then yes, you can have the speed gain.
> But then you should patch ExtTextOut() functions to use yours.
> Ciao
> Max

The patch will in the end eliminate any depth conversion (at least on the Wine
side a driver might still do it internally but it can use more optimizations
and in the best case does it all in hardware). When the patch is done we can
directly blit DIBs with a depth different from the screen depth to the screen.
What depths are used for the DIBs?


Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
Do not reply to this email, post in Bugzilla using the
above URL to reply.
------- You are receiving this mail because: -------
You are watching all bug changes.

More information about the wine-bugs mailing list