Hi,

Quoting Binary Chen <[EMAIL PROTECTED]>:

> On Sat, 2007-10-27 at 11:06 +0300, Stefan Kost wrote:
>> Chris Rorvick schrieb:
>> > I'm attempting to profile GTK in an application and I'm wondering what
>> > methodology others use to accomplish this.  Is there any documentation
>> > that addresses this topic that I should refer to?  Any caveats worth
>> > pointing out?  Here is where I'm at ...
>> >
>> > I recently upgraded an application using GTK 2.6 to use GTK 2.10,
>> > quickly followed by an upgrade to 2.12.  In both cases, the upgraded
>> > version of the application consumed 3-5x the CPU as compared to the
>> > original version using 2.6.  This comparison was done anecdotally using
>> > top on a Solaris workstation.
>> >
>> This is most likely caused by cairo. You should also see a bit less  
>>  CPU usage in
>> 2.12 compared to 2.10 (or more precise newer cairo should perform a  
>>  bit better).
>>
> Which version of cairo will cause this problem, more precise?

gtk-2.6 does not use cairo at all. newer version do and were causing a  
bit of slowdown. On devices without FPU its quite a notable slowdown  
as cairo uses floating point math here and there.

Stefan

>
>> >
>> > My first step was to have profiled versions of these libraries built in
>> > the hope that I could use them to isolate where the additional cycles
>> > were being burned.  Several builds and profiled runs later, and after a
>> > fair amount of searching the Internet, I've concluded that I'll never
>> > get anything out of shared objects instrumented with GCC; all code to be
>> > profiled must be statically linked.  If you know this to be untrue,
>> > please let me know!  :)  My plan now is to build static versions of all
>> > GTK libraries instrumented for profiling and link against those.
>> >
>> I would suggest to use a sampling profiler, like oprofile, sysprof, but all
>> those are linux profilers (they need a kernel module). But I am sure there a
>> sampling profilers for solaris too. The advantage is that you don't need to
>> recompile your apps (given you have debug symbols alreday) and it works with
>> shared libs too.
>>
>> Stefan
>>
>>
>> > FYI, Our platform is Solaris 10 (x86) compiling with GCC 3.4.
>> >
>> > Thanks in advance,
>> >
>> > Chris Rorvick
>> > _______________________________________________
>> > gtk-app-devel-list mailing list
>> > gtk-app-devel-list@gnome.org
>> > http://mail.gnome.org/mailman/listinfo/gtk-app-devel-list
>>
>> _______________________________________________
>> gtk-app-devel-list mailing list
>> gtk-app-devel-list@gnome.org
>> http://mail.gnome.org/mailman/listinfo/gtk-app-devel-list
>
> _______________________________________________
> gtk-app-devel-list mailing list
> gtk-app-devel-list@gnome.org
> http://mail.gnome.org/mailman/listinfo/gtk-app-devel-list
>


_______________________________________________
gtk-app-devel-list mailing list
gtk-app-devel-list@gnome.org
http://mail.gnome.org/mailman/listinfo/gtk-app-devel-list

Reply via email to