Re: g_type_instance_is_a (was Cairo 1.3 performance loss)



"Daniel Amelang" <daniel amelang gmail com> writes:

> So, the tessellator behavior that you're seeing is interesting and
> deserves some looking into. But I can't help but notice in your
> profiles that g_type_instance_is_a takes up 3x the CPU that the
> tessellator does. And with the old tessellator, g_type_instance_is_a
> takes 9x the CPU the tessellator does. Now, I'm not a GTK guru, and I
> have a lot of confidence in the GTK developers, so what's the story?

Note that development versions of GTK+ have much more debugging code
turned on which among other things means many more calls to
g_type_instance_is_a(). So be sure to compare apples to apples. (Not
saying you didn't).

If g_type_instance_is_a() turns out to actually show up on profiles,
it may be worth looking at this four year old patch to cache to type
check information:

   http://bugzilla.gnome.org/show_bug.cgi?id=113116

Back when I wrote it I got hit rates of 85-95%.


Soren




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