Re: Trivial patch reducing fp mults in pango-cairo
- From: Jorn Baayen <jorn openedhand com>
- To: Behdad Esfahbod <behdad behdad org>
- Cc: performance-list gnome org
- Subject: Re: Trivial patch reducing fp mults in pango-cairo
- Date: Sun, 10 Dec 2006 13:12:58 +0200
Argh! It would have been too simple to be true. The difference in
profiles must be due to general profiling fuzziness.
Never mind!
Jorn
On Sat, 2006-12-09 at 19:11 -0500, Behdad Esfahbod wrote:
> Humm, I hate to say this, but the patch makes absolutely no difference
> in any real test case. In fact, none of those two lines are run on real
> world scenarios:
>
> On Sat, 2006-12-09 at 20:22 +0200, Jorn Baayen wrote:
> > Index: pango/pangocairo-fcfont.c
> > ===================================================================
> > RCS file: /cvs/gnome/pango/pango/pangocairo-fcfont.c,v
> > retrieving revision 1.46
> > diff -u -r1.46 pangocairo-fcfont.c
> > --- pango/pangocairo-fcfont.c 28 Nov 2006 21:17:39 -0000 1.46
> > +++ pango/pangocairo-fcfont.c 9 Dec 2006 15:35:30 -0000
> > @@ -309,7 +309,7 @@
> > break;
> > case PANGO_GRAVITY_EAST:
> > case PANGO_GRAVITY_WEST:
> > - cffont->font_extents.y = - PANGO_UNITS ((font_extents.ascent
> > + font_extents.descent) * 0.5);
> > + cffont->font_extents.y = - PANGO_UNITS ((font_extents.ascent
> > + font_extents.descent) / 2);
> > }
>
> First, this is only relevant in East and West gravities. That is,
> vertical text. Moreover, it will run like once per font. Finally, all
> you are doing here is replacing double multiplication with double
> division! Yes, font_extents members are all double.
>
>
> > cffont->glyph_extents_cache = g_new0 (GlyphExtentsCacheEntry,
> > GLYPH_CACHE_NUM_ENTRIES);
> > Index: pango/pangocairo-font.c
> > ===================================================================
> > RCS file: /cvs/gnome/pango/pango/pangocairo-font.c,v
> > retrieving revision 1.30
> > diff -u -r1.30 pangocairo-font.c
> > --- pango/pangocairo-font.c 28 Nov 2006 21:47:51 -0000 1.30
> > +++ pango/pangocairo-font.c 9 Dec 2006 15:35:31 -0000
> > @@ -202,7 +202,7 @@
> > fontmap = pango_font_get_font_map ((PangoFont *)cfont);
> >
> > desc = pango_font_describe_with_absolute_size ((PangoFont
> > *)cfont);
> > - size = pango_font_description_get_size (desc) / (1.*PANGO_SCALE);
> > + size = pango_font_description_get_size (desc) / (double)
> > PANGO_SCALE;
>
> This will only run for hexboxes. Once per font. And it should make any
> difference with any decent compiler.
>
--
OpenedHand Ltd.
http://o-hand.com/
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]