From: tip-bot for Namhyung Kim <tipbot@zytor.com>
To: linux-tip-commits@vger.kernel.org
Cc: linux-kernel@vger.kernel.org, hpa@zytor.com, mingo@kernel.org,
jolsa@kernel.org, rodrigo@sdfg.com.ar, namhyung@kernel.org,
fweisbec@gmail.com, tglx@linutronix.de, asharma@fb.com
Subject: [tip:perf/core] perf report: Add --children option
Date: Tue, 3 Jun 2014 11:34:17 -0700 [thread overview]
Message-ID: <tip-793aaaabb79803a0154fc6a98c472a29bb6d5cc9@git.kernel.org> (raw)
In-Reply-To: <1401335910-16832-16-git-send-email-namhyung@kernel.org>
Commit-ID: 793aaaabb79803a0154fc6a98c472a29bb6d5cc9
Gitweb: http://git.kernel.org/tip/793aaaabb79803a0154fc6a98c472a29bb6d5cc9
Author: Namhyung Kim <namhyung@kernel.org>
AuthorDate: Wed, 30 Oct 2013 17:05:55 +0900
Committer: Jiri Olsa <jolsa@kernel.org>
CommitDate: Sun, 1 Jun 2014 14:35:04 +0200
perf report: Add --children option
The --children option is for showing accumulated overhead (period)
value as well as self overhead.
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Tested-by: Arun Sharma <asharma@fb.com>
Tested-by: Rodrigo Campos <rodrigo@sdfg.com.ar>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Link: http://lkml.kernel.org/r/1401335910-16832-16-git-send-email-namhyung@kernel.org
Signed-off-by: Jiri Olsa <jolsa@kernel.org>
---
tools/perf/Documentation/perf-report.txt | 7 ++++++-
tools/perf/builtin-report.c | 15 ++++++++++++++-
2 files changed, 20 insertions(+), 2 deletions(-)
diff --git a/tools/perf/Documentation/perf-report.txt b/tools/perf/Documentation/perf-report.txt
index a1b5185..cefdf43 100644
--- a/tools/perf/Documentation/perf-report.txt
+++ b/tools/perf/Documentation/perf-report.txt
@@ -111,7 +111,7 @@ OPTIONS
--fields=::
Specify output field - multiple keys can be specified in CSV format.
Following fields are available:
- overhead, overhead_sys, overhead_us, sample and period.
+ overhead, overhead_sys, overhead_us, overhead_children, sample and period.
Also it can contain any sort key(s).
By default, every sort keys not specified in -F will be appended
@@ -163,6 +163,11 @@ OPTIONS
Default: fractal,0.5,callee,function.
+--children::
+ Accumulate callchain of children to parent entry so that then can
+ show up in the output. The output will have a new "Children" column
+ and will be sorted on the data. It requires callchains are recorded.
+
--max-stack::
Set the stack depth limit when parsing the callchain, anything
beyond the specified depth will be ignored. This is a trade-off
diff --git a/tools/perf/builtin-report.c b/tools/perf/builtin-report.c
index e8fa9fe..f27a8aa 100644
--- a/tools/perf/builtin-report.c
+++ b/tools/perf/builtin-report.c
@@ -185,6 +185,14 @@ static int report__setup_sample_type(struct report *rep)
}
}
+ if (symbol_conf.cumulate_callchain) {
+ /* Silently ignore if callchain is missing */
+ if (!(sample_type & PERF_SAMPLE_CALLCHAIN)) {
+ symbol_conf.cumulate_callchain = false;
+ perf_hpp__cancel_cumulate();
+ }
+ }
+
if (sort__mode == SORT_MODE__BRANCH) {
if (!is_pipe &&
!(sample_type & PERF_SAMPLE_BRANCH_STACK)) {
@@ -568,6 +576,8 @@ int cmd_report(int argc, const char **argv, const char *prefix __maybe_unused)
OPT_CALLBACK_DEFAULT('g', "call-graph", &report, "output_type,min_percent[,print_limit],call_order",
"Display callchains using output_type (graph, flat, fractal, or none) , min percent threshold, optional print limit, callchain order, key (function or address). "
"Default: fractal,0.5,callee,function", &report_parse_callchain_opt, callchain_default_opt),
+ OPT_BOOLEAN(0, "children", &symbol_conf.cumulate_callchain,
+ "Accumulate callchains of children and show total overhead as well"),
OPT_INTEGER(0, "max-stack", &report.max_stack,
"Set the maximum stack depth when parsing the callchain, "
"anything beyond the specified depth will be ignored. "
@@ -660,8 +670,10 @@ repeat:
has_br_stack = perf_header__has_feat(&session->header,
HEADER_BRANCH_STACK);
- if (branch_mode == -1 && has_br_stack)
+ if (branch_mode == -1 && has_br_stack) {
sort__mode = SORT_MODE__BRANCH;
+ symbol_conf.cumulate_callchain = false;
+ }
if (report.mem_mode) {
if (sort__mode == SORT_MODE__BRANCH) {
@@ -669,6 +681,7 @@ repeat:
goto error;
}
sort__mode = SORT_MODE__MEMORY;
+ symbol_conf.cumulate_callchain = false;
}
if (setup_sorting() < 0) {
next prev parent reply other threads:[~2014-06-03 18:34 UTC|newest]
Thread overview: 64+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-05-29 3:58 [PATCHSET 00/27] perf tools: Add support to accumulate hist periods (v11) Namhyung Kim
2014-05-29 3:58 ` [PATCH 01/27] perf tools: Introduce hists__inc_nr_samples() Namhyung Kim
2014-06-03 18:31 ` [tip:perf/core] " tip-bot for Namhyung Kim
2014-05-29 3:58 ` [PATCH 02/27] perf tools: Introduce struct hist_entry_iter Namhyung Kim
2014-06-03 18:31 ` [tip:perf/core] " tip-bot for Namhyung Kim
2014-05-29 3:58 ` [PATCH 03/27] perf hists: Add support for accumulated stat of hist entry Namhyung Kim
2014-06-03 18:31 ` [tip:perf/core] " tip-bot for Namhyung Kim
2014-05-29 3:58 ` [PATCH 04/27] perf hists: Check if accumulated when adding a " Namhyung Kim
2014-06-03 18:31 ` [tip:perf/core] " tip-bot for Namhyung Kim
2014-05-29 3:58 ` [PATCH 05/27] perf hists: Accumulate hist entry stat based on the callchain Namhyung Kim
2014-06-03 18:32 ` [tip:perf/core] " tip-bot for Namhyung Kim
2014-05-29 3:58 ` [PATCH 06/27] perf tools: Update cpumode for each cumulative entry Namhyung Kim
2014-06-03 18:32 ` [tip:perf/core] " tip-bot for Namhyung Kim
2014-05-29 3:58 ` [PATCH 07/27] perf report: Cache cumulative callchains Namhyung Kim
2014-06-03 18:32 ` [tip:perf/core] " tip-bot for Namhyung Kim
2014-05-29 3:58 ` [PATCH 08/27] perf callchain: Add callchain_cursor_snapshot() Namhyung Kim
2014-06-03 18:32 ` [tip:perf/core] " tip-bot for Namhyung Kim
2014-05-29 3:58 ` [PATCH 09/27] perf tools: Save callchain info for each cumulative entry Namhyung Kim
2014-06-03 18:33 ` [tip:perf/core] " tip-bot for Namhyung Kim
2014-05-29 3:58 ` [PATCH 10/27] perf ui/hist: Add support to accumulated hist stat Namhyung Kim
2014-06-03 18:33 ` [tip:perf/core] " tip-bot for Namhyung Kim
2014-05-29 3:58 ` [PATCH 11/27] perf ui/browser: " Namhyung Kim
2014-06-03 18:33 ` [tip:perf/core] " tip-bot for Namhyung Kim
2014-05-29 3:58 ` [PATCH 12/27] perf ui/gtk: " Namhyung Kim
2014-06-03 18:33 ` [tip:perf/core] " tip-bot for Namhyung Kim
2014-05-29 3:58 ` [PATCH 13/27] perf tools: Apply percent-limit to cumulative percentage Namhyung Kim
2014-06-03 18:33 ` [tip:perf/core] " tip-bot for Namhyung Kim
2014-05-29 3:58 ` [PATCH 14/27] perf tools: Add more hpp helper functions Namhyung Kim
2014-06-03 18:34 ` [tip:perf/core] " tip-bot for Namhyung Kim
2014-05-29 3:58 ` [PATCH 15/27] perf report: Add --children option Namhyung Kim
2014-06-03 18:34 ` tip-bot for Namhyung Kim [this message]
2014-05-29 3:58 ` [PATCH 16/27] perf report: Add report.children config option Namhyung Kim
2014-06-03 18:34 ` [tip:perf/core] " tip-bot for Namhyung Kim
2014-05-29 3:58 ` [PATCH 17/27] perf tools: Do not auto-remove Children column if --fields given Namhyung Kim
2014-06-03 18:34 ` [tip:perf/core] " tip-bot for Namhyung Kim
2014-05-29 3:58 ` [PATCH 18/27] perf tools: Add callback function to hist_entry_iter Namhyung Kim
2014-05-29 13:16 ` Jiri Olsa
2014-05-30 4:50 ` Namhyung Kim
2014-06-03 18:34 ` [tip:perf/core] " tip-bot for Namhyung Kim
2014-05-29 3:58 ` [PATCH 19/27] perf top: Convert " Namhyung Kim
2014-06-03 18:35 ` [tip:perf/core] " tip-bot for Namhyung Kim
2014-05-29 3:58 ` [PATCH 20/27] perf top: Add --children option Namhyung Kim
2014-06-03 18:35 ` [tip:perf/core] " tip-bot for Namhyung Kim
2014-05-29 3:58 ` [PATCH 21/27] perf top: Add top.children config option Namhyung Kim
2014-06-03 18:35 ` [tip:perf/core] " tip-bot for Namhyung Kim
2014-05-29 3:58 ` [PATCH 22/27] perf tools: Enable --children option by default Namhyung Kim
2014-06-03 18:35 ` [tip:perf/core] " tip-bot for Namhyung Kim
2014-07-28 19:23 ` [PATCH 22/27] " Andres Freund
2014-07-29 6:52 ` Namhyung Kim
2014-07-29 11:45 ` Andres Freund
2014-07-29 13:06 ` Arnaldo Carvalho de Melo
2014-07-29 23:29 ` Namhyung Kim
2014-05-29 3:58 ` [PATCH 23/27] perf ui/stdio: Fix invalid percentage value of cumulated hist entries Namhyung Kim
2014-06-03 18:35 ` [tip:perf/core] " tip-bot for Namhyung Kim
2014-05-29 3:58 ` [PATCH 24/27] perf ui/gtk: Fix callchain display Namhyung Kim
2014-06-03 18:36 ` [tip:perf/core] " tip-bot for Namhyung Kim
2014-05-29 3:58 ` [PATCH 25/27] perf tools: Reset output/sort order to default Namhyung Kim
2014-06-03 18:36 ` [tip:perf/core] " tip-bot for Namhyung Kim
2014-05-29 3:58 ` [PATCH 26/27] perf tests: Define and use symbolic names for fake symbols Namhyung Kim
2014-06-03 18:36 ` [tip:perf/core] " tip-bot for Namhyung Kim
2014-05-29 3:58 ` [PATCH 27/27] perf tests: Add a test case for cumulating callchains Namhyung Kim
2014-06-03 18:36 ` [tip:perf/core] " tip-bot for Namhyung Kim
2014-05-29 13:59 ` [PATCHSET 00/27] perf tools: Add support to accumulate hist periods (v11) Jiri Olsa
2014-05-30 4:58 ` Namhyung Kim
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=tip-793aaaabb79803a0154fc6a98c472a29bb6d5cc9@git.kernel.org \
--to=tipbot@zytor.com \
--cc=asharma@fb.com \
--cc=fweisbec@gmail.com \
--cc=hpa@zytor.com \
--cc=jolsa@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-tip-commits@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=namhyung@kernel.org \
--cc=rodrigo@sdfg.com.ar \
--cc=tglx@linutronix.de \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.