From: Arnaldo Carvalho de Melo <acme@kernel.org>
To: Namhyung Kim <namhyung@kernel.org>
Cc: Ingo Molnar <mingo@kernel.org>,
Peter Zijlstra <peterz@infradead.org>,
Jiri Olsa <jolsa@kernel.org>, LKML <linux-kernel@vger.kernel.org>,
David Ahern <dsahern@gmail.com>,
Stephane Eranian <eranian@google.com>,
Andi Kleen <andi@firstfloor.org>, Wang Nan <wangnan0@huawei.com>,
Don Zickus <dzickus@redhat.com>,
Pekka Enberg <penberg@kernel.org>,
Moinuddin Quadri <moin18@gmail.com>
Subject: Re: [RFC/PATCHSET 00/17] perf tools: Add support for hierachy view (v2)
Date: Tue, 19 Jan 2016 17:59:41 -0300 [thread overview]
Message-ID: <20160119205941.GG27085@kernel.org> (raw)
In-Reply-To: <1452960197-5323-1-git-send-email-namhyung@kernel.org>
Em Sun, Jan 17, 2016 at 01:03:00AM +0900, Namhyung Kim escreveu:
> Hello,
>
> This is v2 attempt of my earlier patchset [1]. This patchset
> implements a new feature that collects hist entries in a hierachical
> manner. That means lower-level entries belong to an upper-level
> entry. The entry hierachy is built on the sort keys given, so users
> can set it whatever they want. It only shows top-level entries first,
> and user can expand/collapse it dynamically.
>
> This time I implemented it for every output browser including TUI.
> A screenshot on TUI looks like below:
>
> For normal output:
>
> $ perf report --tui
> Samples: 3K of event 'cycles:pp', Event count (approx.): 1695979674
> Overhead Command Shared Object Symbol
> ------------------------------------------------------------------------
> - 7.57% swapper [kernel.vmlinux] [k] intel_idle
> intel_idle
> cpuidle_enter_state
> cpuidle_enter
> call_cpuidle
> + cpu_startup_entry
> + 1.16 firefox firefox [.] 0x00000000000019433
> + 0.97% firefox libpthread-2.22.so [.] pthread_mutex_lock
> ...
>
>
> With hierarchy view,
Ok, tested, this is really nice, I think it should be the default, from
where to drill down, we could have a '--no-hierarchy', Ingo?
I'll took a quick look patch by patch, seems ok, will try to look deeper
to get this merged soon,
keep up the great work!
- Arnaldo
> $ perf report --tui --hierarchy
> Samples: 3K of event 'cycles:pp', Event count (approx.): 1695979674
> Overhead Command / Shared Object / Symbol
> -------------------------------------------------------------------
> + 76.30% firefox
> - 9.95% swapper
> - 9.51% [kernel.vmlinux]
> - 7.57 [k] intel_idle
> intel_idle
> cpuidle_enter_state
> cpuidle_enter
> call_cpuidle
> + cpu_startup_entry
> + 0.15% [k] __schedule
> + 0.12% [k] menu_select
> ...
> + 0.34% [sdhci]
> + 0.06% [e1000e]
> ...
> + 5.65% Xorg
> + 5.42% Socket Thread
> ...
>
> As you can see, overhead of an upper level entry is the sum of
> overhead of lower level entries. The entries are aligned by its order
> of matching sort keys.
>
> This is available from 'perf/hierarchy-v2' branch in my tree:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/namhyung-perf.git
>
>
> Any comments are welcome, thanks!
> Namhyung
>
>
> Cc: Don Zickus <dzickus@redhat.com>
> Cc: Pekka Enberg <penberg@kernel.org>
> Cc: Moinuddin Quadri <moin18@gmail.com>
>
>
> [1] https://lkml.org/lkml/2013/5/21/24
>
>
> Namhyung Kim (17):
> perf hists: Basic support of hierarchical report view
> perf hists: Resort hist entries with hierarchy
> perf hists: Add helper functions for hierarchy mode
> perf hists: Cleanup filtering functions
> perf hists: Support filtering in hierarchy mode
> perf ui/stdio: Implement hierarchy output mode
> perf ui/stdio: Align column header for hierarchy output
> perf hists browser: Fix context menu item
> perf hists browser: Count number of hierarchy entries
> perf hists browser: Support collapsing/expanding whole entries in
> hierarchy
> perf hists browser: Factor out hist_browser__show_callchain()
> perf hists browser: Implement hierarchy output
> perf hists browser: Align column header in hierarchy mode
> perf ui/gtk: Implement hierarchy output mode
> perf report: Add --hierarchy option
> perf hists: Support decaying in hierarchy mode
> perf top: Add --hierarchy option
>
> tools/perf/Documentation/perf-report.txt | 3 +
> tools/perf/Documentation/perf-top.txt | 3 +
> tools/perf/Documentation/tips.txt | 1 +
> tools/perf/builtin-report.c | 17 +
> tools/perf/builtin-top.c | 15 +
> tools/perf/ui/browsers/hists.c | 590 ++++++++++++++++++++++++++-----
> tools/perf/ui/gtk/hists.c | 161 ++++++++-
> tools/perf/ui/hist.c | 14 +
> tools/perf/ui/stdio/hist.c | 182 +++++++++-
> tools/perf/util/hist.c | 470 ++++++++++++++++++++----
> tools/perf/util/hist.h | 11 +
> tools/perf/util/sort.c | 116 ++++++
> tools/perf/util/sort.h | 16 +-
> tools/perf/util/symbol.h | 3 +-
> 14 files changed, 1437 insertions(+), 165 deletions(-)
>
> --
> 2.6.4
next prev parent reply other threads:[~2016-01-19 20:59 UTC|newest]
Thread overview: 87+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-01-16 16:03 [RFC/PATCHSET 00/17] perf tools: Add support for hierachy view (v2) Namhyung Kim
2016-01-16 16:03 ` [PATCH 01/17] perf hists: Basic support of hierarchical report view Namhyung Kim
2016-01-17 16:15 ` Jiri Olsa
2016-01-19 10:51 ` Namhyung Kim
2016-01-19 16:50 ` Arnaldo Carvalho de Melo
2016-01-20 17:00 ` Jiri Olsa
2016-01-20 17:09 ` Arnaldo Carvalho de Melo
2016-01-21 4:08 ` Namhyung Kim
2016-01-21 10:43 ` Jiri Olsa
2016-01-21 12:55 ` Namhyung Kim
2016-01-21 13:35 ` Jiri Olsa
2016-01-21 14:02 ` Arnaldo Carvalho de Melo
2016-01-22 10:44 ` Namhyung Kim
2016-01-22 10:43 ` Namhyung Kim
2016-01-22 11:37 ` Jiri Olsa
2016-01-21 11:35 ` Jiri Olsa
2016-01-21 13:01 ` Namhyung Kim
2016-01-16 16:03 ` [PATCH 02/17] perf hists: Resort hist entries with hierarchy Namhyung Kim
2016-01-21 11:41 ` Jiri Olsa
2016-01-21 13:03 ` Namhyung Kim
2016-01-16 16:03 ` [PATCH 03/17] perf hists: Add helper functions for hierarchy mode Namhyung Kim
2016-01-20 22:19 ` Arnaldo Carvalho de Melo
2016-01-21 3:59 ` Namhyung Kim
2016-01-21 4:19 ` [PATCH v2 " Namhyung Kim
2016-01-21 13:05 ` Namhyung Kim
2016-01-16 16:03 ` [PATCH 04/17] perf hists: Cleanup filtering functions Namhyung Kim
2016-01-19 20:39 ` Arnaldo Carvalho de Melo
2016-01-20 1:15 ` [PATCH v2 04.1/17] perf hists: Remove parent filter check in DSO filter function Namhyung Kim
2016-01-20 1:15 ` [PATCH v2 04.2/17] perf hists: Cleanup filtering functions Namhyung Kim
2016-01-21 12:02 ` Jiri Olsa
2016-02-03 10:08 ` [tip:perf/core] " tip-bot for Namhyung Kim
2016-01-21 12:02 ` [PATCH v2 04.1/17] perf hists: Remove parent filter check in DSO filter function Jiri Olsa
2016-02-03 10:07 ` [tip:perf/core] " tip-bot for Namhyung Kim
2016-01-16 16:03 ` [PATCH 05/17] perf hists: Support filtering in hierarchy mode Namhyung Kim
2016-01-16 16:03 ` [PATCH 06/17] perf ui/stdio: Implement hierarchy output mode Namhyung Kim
2016-01-16 16:03 ` [PATCH 07/17] perf ui/stdio: Align column header for hierarchy output Namhyung Kim
2016-01-20 22:40 ` Arnaldo Carvalho de Melo
2016-01-21 4:00 ` Namhyung Kim
2016-01-16 16:03 ` [PATCH 08/17] perf hists browser: Fix context menu item Namhyung Kim
2016-01-21 0:52 ` Arnaldo Carvalho de Melo
2016-01-21 4:07 ` Namhyung Kim
2016-01-21 23:51 ` Arnaldo Carvalho de Melo
2016-01-22 11:08 ` Namhyung Kim
2016-01-22 14:37 ` Dynamicly add/remove sort keys was: " Arnaldo Carvalho de Melo
2016-02-03 10:10 ` [tip:perf/core] perf sort: Provide a way to find out if per-thread bucketing is in place tip-bot for Namhyung Kim
2016-02-03 10:11 ` [tip:perf/core] perf hists browser: Only 'Zoom into thread' only when sort order has 'pid' tip-bot for Namhyung Kim
2016-02-03 10:11 ` [tip:perf/core] perf hists browser: Only offer symbol scripting when a symbol is under the cursor tip-bot for Namhyung Kim
2016-02-03 10:11 ` [tip:perf/core] perf hists browser: Offer 'Zoom into DSO'/' Map details' only when sort order has 'dso' tip-bot for Namhyung Kim
2016-02-03 10:12 ` [tip:perf/core] perf hists browser: Be a bit more strict about presenting CPU socket zoom tip-bot for Namhyung Kim
2016-02-03 10:12 ` [tip:perf/core] perf hists browser: Offer non-symbol specific menu options for --sort without 'sym' tip-bot for Namhyung Kim
2016-01-16 16:03 ` [PATCH 09/17] perf hists browser: Count number of hierarchy entries Namhyung Kim
2016-01-16 16:03 ` [PATCH 10/17] perf hists browser: Support collapsing/expanding whole entries in hierarchy Namhyung Kim
2016-01-16 16:03 ` [PATCH 11/17] perf hists browser: Factor out hist_browser__show_callchain() Namhyung Kim
2016-01-16 16:03 ` [PATCH 12/17] perf hists browser: Implement hierarchy output Namhyung Kim
2016-01-16 16:03 ` [PATCH 13/17] perf hists browser: Align column header in hierarchy mode Namhyung Kim
2016-01-16 16:03 ` [PATCH 14/17] perf ui/gtk: Implement hierarchy output mode Namhyung Kim
2016-01-16 16:03 ` [PATCH 15/17] perf report: Add --hierarchy option Namhyung Kim
2016-01-16 16:03 ` [PATCH 16/17] perf hists: Support decaying in hierarchy mode Namhyung Kim
2016-01-16 16:03 ` [PATCH 17/17] perf top: Add --hierarchy option Namhyung Kim
2016-01-17 10:25 ` [RFC/PATCHSET 00/17] perf tools: Add support for hierachy view (v2) Pekka Enberg
2016-01-19 10:42 ` Namhyung Kim
2016-01-17 19:31 ` Andi Kleen
2016-01-19 10:45 ` Namhyung Kim
2016-01-19 21:03 ` Arnaldo Carvalho de Melo
2016-01-19 21:07 ` Arnaldo Carvalho de Melo
2016-01-19 22:12 ` Andi Kleen
2016-01-19 22:24 ` Arnaldo Carvalho de Melo
2016-01-20 0:56 ` Namhyung Kim
2016-01-20 1:11 ` Andi Kleen
2016-01-20 1:36 ` Namhyung Kim
2016-01-20 1:43 ` Andi Kleen
2016-01-20 13:34 ` Arnaldo Carvalho de Melo
2016-01-19 20:00 ` Arnaldo Carvalho de Melo
2016-01-19 20:52 ` Arnaldo Carvalho de Melo
2016-01-20 0:19 ` Namhyung Kim
2016-01-19 20:59 ` Arnaldo Carvalho de Melo [this message]
2016-01-20 0:34 ` Namhyung Kim
2016-01-20 5:28 ` Andi Kleen
2016-01-20 7:49 ` Taeung Song
2016-01-20 15:08 ` Namhyung Kim
2016-01-20 16:34 ` Taeung Song
2016-01-21 4:17 ` Namhyung Kim
2016-01-21 4:58 ` Taeung Song
2016-01-20 13:32 ` Arnaldo Carvalho de Melo
2016-01-20 15:01 ` Namhyung Kim
2016-01-20 15:25 ` Arnaldo Carvalho de Melo
2016-01-20 15:29 ` Arnaldo Carvalho de Melo
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20160119205941.GG27085@kernel.org \
--to=acme@kernel.org \
--cc=andi@firstfloor.org \
--cc=dsahern@gmail.com \
--cc=dzickus@redhat.com \
--cc=eranian@google.com \
--cc=jolsa@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=moin18@gmail.com \
--cc=namhyung@kernel.org \
--cc=penberg@kernel.org \
--cc=peterz@infradead.org \
--cc=wangnan0@huawei.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).