Re: Floating point in pango



On Tue, 2006-07-18 at 11:40 +0300, Jorn Baayen wrote:
>   34       12.6866  libgobject-2.0.so.0.1000.3 g_type_is_a
>   31       11.5672  libgobject-2.0.so.0.1000.3
> g_type_check_instance_is_a

Speaking of type checks...

When we saw that pango-profile was taking a nontrivial amount of time
doing type checks, digging deeper showed that those checks were
happening in a single hot spot.  There was a critical function (got
called once for each character) doing an unnecessary type check.
Removing that check made type checks disappear from the profile (even
though they are still being done in other, non-critical parts of the
code).

It would be good to know where those expensive type checks are coming
from.  If that 12.6% is split among a couple of "hot" places, we can
probably remove them to good effect.

Your mission, should you decide to accept it, is to figure out what part
of the code is doing the bulk of the type checks, and to kill it swiftly
and cleanly.

  Federico




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]