Re: [PATCH 1/4] perf hists: Exchange order of comparing items whencollapsing hists

From: Jiri Olsa
Date: Wed Dec 12 2012 - 10:56:42 EST


On Wed, Dec 12, 2012 at 12:29:26PM -0300, Arnaldo Carvalho de Melo wrote:
> Em Mon, Dec 10, 2012 at 02:44:34PM +0100, Jiri Olsa escreveu:
> > On Mon, Dec 10, 2012 at 05:29:54PM +0900, Namhyung Kim wrote:
> > > When comparing entries for collapsing put the given entry first, and then
> > > the iterated entry. This is not the case of hist_entry__cmp() when called
> > > if given sort keys don't require collapsing. So change the order for the
> > > sake of consistency. It will be required for matching and/or linking
> > > multiple hist entries.
>
> > Acked-by: Jiri Olsa <jolsa@xxxxxxxxxx>
>
> Hey,
>
> Before:
>
> [root@sandy ~]# perf diff
> # Event 'cycles'
> #
> # Baseline Delta Shared Object Symbol
> # ........ ....... ................. ..................................
> #
> 17.41% -17.41% [kernel.kallsyms] [k] memset
> 0.38% -0.38% [kernel.kallsyms] [k] strlcpy
> +48.19% [kernel.kallsyms] [k] __blocking_notifier_call_chain
> +46.96% [kernel.kallsyms] [k] radix_tree_lookup_slot
> +4.66% [kernel.kallsyms] [k] do_close_on_exec
> 16.17% -16.17% [kernel.kallsyms] [k] final_putname
> 4.17% -4.17% [kernel.kallsyms] [k] shift_arg_pages
> 30.74% -30.74% [kernel.kallsyms] [k] kfree
> 14.93% -14.93% [kernel.kallsyms] [k] unlock_page
> 0.03% +0.15% [kernel.kallsyms] [k] native_write_msr_safe
> 16.17% -16.17% libc-2.12.so [.] _dl_addr
>
> After:
>
> [root@sandy ~]# perf diff
> # Event 'cycles'
> #
> # Baseline Delta Shared Object Symbol
> # ........ ....... ................. ..................................
> #
> 16.17% -16.17% libc-2.12.so [.] _dl_addr
> +48.19% [kernel.kallsyms] [k] __blocking_notifier_call_chain
> 14.93% -14.93% [kernel.kallsyms] [k] unlock_page
> 30.74% -30.74% [kernel.kallsyms] [k] kfree
> 4.17% -4.17% [kernel.kallsyms] [k] shift_arg_pages
> 16.17% -16.17% [kernel.kallsyms] [k] final_putname
> +46.96% [kernel.kallsyms] [k] radix_tree_lookup_slot
> +4.66% [kernel.kallsyms] [k] do_close_on_exec
> 0.03% +0.15% [kernel.kallsyms] [k] native_write_msr_safe
> 0.38% -0.38% [kernel.kallsyms] [k] strlcpy
> 17.41% -17.41% [kernel.kallsyms] [k] memset
> [root@sandy ~]#
>
> Got inverted.
>
> The order was arbitrary, and was arbitrarily reversed, are you guys sure this
> is the only side effect?

right,

currently (without namhyung's changes) there's initial 'name' sorting
broken by hists_link

after the change, it gets sorted 'but' there are dummy entries added
which brake the sort again.. this is sorted out within the multi diff
patches

so the bottom line is that currently the sorting is broken anyway,
and the fix is comming in upcomming patchset ;)

>
> Jiri, IIRC you mentioned that there would be some patch with an --order switch,
> would that allow sorting by the entry that had the biggest change, etc?

by default it'll sorted by baseline and you can specify -o X to sort
by specified file

thanks,
jirka
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/