Re: [RFC/PATCHSET 00/17] perf tools: Add support for hierachy view (v2)

From: Andi Kleen
Date: Tue Jan 19 2016 - 20:51:36 EST


On Wed, Jan 20, 2016 at 09:56:47AM +0900, Namhyung Kim wrote:
> On Tue, Jan 19, 2016 at 07:24:49PM -0300, Arnaldo Carvalho de Melo wrote:
> > Em Tue, Jan 19, 2016 at 11:12:04PM +0100, Andi Kleen escreveu:
> > > > > Now we only need a better percent-limit that handles all
> > > > > leaves correctly...
> > > >
> > > > Hmm.. could you tell me where the percent-limit doesn't work
> > > > correctly?
> > >
> > > It doesn't work well together with call chains.
> >
> > Ok, that is the missing piece of info, lemme check... Yeah that seems
> > to be the case.
>
> So technically this is a callchain issue not a hist entry, right? If

Correct.

> so, it should be fixed separately. Currently --percent-limit option
> works only for hist entries, and for callchain, users should use
> -g/--call-graph option. With hierarchy report, we might consider
> merging them since it provides continuous interface to callchains..

Ideally it should work all modes, not just hierarchy.

>
> >
> > > It only considers the hits on the leaf function, but doesn't hide
> > > the individual call chains leading to that function which are below
> > > the limit.
> > >
> > > So if you have a lot of different cold callers you still end up
> > > with far too much output.
>
> Could you please be more specific? Let me try with an example..
>
> $ perf report
> ...
> + 1.00% perf perf some_function
> some_function
> - common_caller
> - 0.6% caller1
> + 0.4% caller1_1
> + 0.2% caller1_2
> + 0.3% caller2
> + 0.1% caller3
>
> In this case, do you want this?
>
> $ perf report --percent-limit 0.5
> ...
> + 1.00% perf perf some_function
> some_function
> - common_caller
> - 0.6% caller1

Right. Only call chains whose total percentage is larger than the limit.

>
>
> > >
> > > Also would be nice to be able to set it dynamically from the UI.
> >
> > To set the mim percent? Yeah, we need to allow setting all those knobs
> > from the UI.
> >
> > I.e. should be like when we press '/' to set a substring filter.
>
> Yes, how about 'L' key for limit?

Fine for me.

-Andi

--
ak@xxxxxxxxxxxxxxx -- Speaking for myself only.