[PATCHSET 0/7] perf tools: Support hierarchy report with event group (v2)
From: Namhyung Kim
Date: Tue Sep 13 2016 - 03:47:07 EST
Hello,
This patchset implements hierarchy mode with event group. It was
disabled due to complexity when I wrote the hierarchy code, but
there's no fundamental reason to do it.
* changes in v2)
- the first bug fix patch applied to acme/perf/core
- update changelog, add Fixes: tags (Arnaldo)
- rename print_hierarchy_header
For example, following command line used to show each event
separately. As event group view is enabled by default, now hierarchy
mode shows the two event together like below:
$ perf record -e '{cycles,instructions}' make
$ perf report --hierarchy --stdio
...
# Overhead Command / Shared Object / Symbol
# ...................... ..................................
#
89.22% 87.73% cc1
80.69% 79.46% cc1
1.41% 2.00% [.] _cpp_lex_direct
1.26% 1.70% [.] bitmap_set_bit
1.11% 1.13% [.] ggc_internal_alloc
...
0.25% 0.01% [kernel.vmlinux]
0.23% 0.01% [k] page_fault
0.01% 0.00% [k] apic_timer_interrupt
0.01% 0.00% [k] entry_SYSCALL_64
...
5.03% 5.97% as
3.10% 3.84% as
0.14% 0.21% [.] 0x00000000000114f4
0.12% 0.01% [.] 0x0000000000011510
0.04% 0.00% [.] 0x000000000001c639
0.04% 0.00% [.] 0x000000000000cff6
...
3.32% 3.19% ld
2.34% 2.13% libbfd-2.27.so
0.50% 0.25% [.] bfd_link_hash_traverse
0.42% 0.30% [.] bfd_elf_link_add_symbols
0.41% 0.59% [.] bfd_hash_lookup
0.09% 0.04% [.] bfd_hash_insert
...
It's also available on 'perf/hierarchy-group-v2' branch in my tree:
git://git.kernel.org/pub/scm/linux/kernel/git/namhyung/linux-perf.git
Thanks,
Namhyung
Namhyung Kim (7):
perf hist: Introduce hists__match_hierarchy()
perf hist: Introduce hists__link_hierarchy()
perf hist: Initialize hierachy tree explicitly
perf ui/stdio: Always reset output width for hierarchy
perf ui/stdio: Rename print_hierarchy_header()
perf ui/tui: Reset output width for hierarchy
perf report: Enable group view with hierarchy
tools/perf/builtin-report.c | 1 -
tools/perf/ui/browsers/hists.c | 6 ++
tools/perf/ui/stdio/hist.c | 27 +++-----
tools/perf/util/hist.c | 148 +++++++++++++++++++++++++++++++++++++++++
4 files changed, 163 insertions(+), 19 deletions(-)
--
2.9.3