[Libreoffice] [GSoC] Re: KCachegrind

Matúš Kukan matus.kukan at gmail.com
Tue Jun 7 11:52:30 PDT 2011


Hello,

On 6 June 2011 23:29, Michael Meeks <michael.meeks at novell.com> wrote:
>> If we would like to 'hide' just func1 there is no way to include its
>> cost into main because it's calling func2, which is not hidden.
>
>        True - then again, we could make func1 of zero cost - pushing all its
> self cycles up into its caller (?) so it still exists in the call tree,
> but with an apparently instant effect ? ;-)
>
Unfortunately not. When we call func1 from main, we don't know how
much of the inclusive cost is from func1 and how much from other lower
functions func1 is calling (in this case func2) so we don't know how
much to add to main.
We can just add all the inclusive cost to main.

>> We could add all its inclusive cost to main but that would be
>> what we want? Maybe yes, if we want to hide objects (libraries)
>> that are calling just themselves and hidden objects.
>> And that's probably the case. Is it?
>
>        So - I guess the problem is then when functions call themselves,
> perhaps some recursive 'qsort' caller when glibc is hidden ( or whatever
> similar madness ;-).
>
The main problem is when hidden function calls visible one.

>> And do we want also loose information about calling such function?
>> Like it was just jump into another place or something like that and
>> still the same function?
>
>        Not sure :-) I guess we prolly want to build (or re-use) some simple
> test code - does kcachegrind have a couple of test libraries that it can
> be used to profile ?
>
I'm afraid there aren't any. I tried to find something but unsuccessfully.

I think I know what you want to do but I just can't see any option how to do it.
In theory it could be possible but I think it's not because of the
profile data format.

Matus


More information about the LibreOffice mailing list