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

Reply via email to