From: Arnaldo Carvalho de Melo <acme@kernel.org>
To: Jin Yao <yao.jin@linux.intel.com>
Cc: jolsa@kernel.org, peterz@infradead.org, mingo@redhat.com,
alexander.shishkin@linux.intel.com, Linux-kernel@vger.kernel.org,
ak@linux.intel.com, kan.liang@intel.com, yao.jin@intel.com
Subject: Re: [PATCH v4 3/3] perf annotate: Support '--group' option
Date: Mon, 21 May 2018 14:43:26 -0300 [thread overview]
Message-ID: <20180521174326.GA3772@kernel.org> (raw)
In-Reply-To: <1526914666-31839-4-git-send-email-yao.jin@linux.intel.com>
Em Mon, May 21, 2018 at 10:57:46PM +0800, Jin Yao escreveu:
> With the '--group' option, even for non-explicit group, perf annotate
> will enable the group output.
>
> For example,
>
> perf record -e cycles,branches ./div
> perf annotate main --stdio --group
You forgot to make the first line to include the group event string,
i.e. for cycles,instructions it will show only this:
Percent | Source code & Disassembly of ld-2.26.so for cycles:u (1 samples)
----------------------------------------------------------------------------------------
:
:
:
: Disassembly of section .text:
:
: 00000000000167e0 <__GI___tunables_init>:
: __GI___tunables_init():
: /* Initialize the tunables list from the environment. For now we only use the
: ENV_ALIAS to find values. Later we will also use the tunable names to find
: values. */
: void
: __tunables_init (char **envp)
: {
0.00 0.00 : 167e0: push %r15
0.00 0.00 : 167e2: push %r14
I'm applying the patch, this can be done on top,
- Arnaldo
>
> : Disassembly of section .text:
> :
> : 00000000004004b0 <main>:
> : main():
> :
> : return i;
> : }
> :
> : int main(void)
> : {
> 0.00 0.00 : 4004b0: push %rbx
> : int i;
> : int flag;
> : volatile double x = 1212121212, y = 121212;
> :
> : s_randseed = time(0);
> 0.00 0.00 : 4004b1: xor %edi,%edi
> : srand(s_randseed);
> 0.00 0.00 : 4004b3: mov $0x77359400,%ebx
> :
> : return i;
> : }
> :
>
> But if without --group, there is only one event reported.
>
> perf annotate main --stdio
>
> : Disassembly of section .text:
> :
> : 00000000004004b0 <main>:
> : main():
> :
> : return i;
> : }
> :
> : int main(void)
> : {
> 0.00 : 4004b0: push %rbx
> : int i;
> : int flag;
> : volatile double x = 1212121212, y = 121212;
> :
> : s_randseed = time(0);
> 0.00 : 4004b1: xor %edi,%edi
> : srand(s_randseed);
> 0.00 : 4004b3: mov $0x77359400,%ebx
> :
> : return i;
> : }
>
> Signed-off-by: Jin Yao <yao.jin@linux.intel.com>
> ---
> tools/perf/builtin-annotate.c | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/tools/perf/builtin-annotate.c b/tools/perf/builtin-annotate.c
> index 6e5d9f7..da57042 100644
> --- a/tools/perf/builtin-annotate.c
> +++ b/tools/perf/builtin-annotate.c
> @@ -45,6 +45,7 @@ struct perf_annotate {
> bool print_line;
> bool skip_missing;
> bool has_br_stack;
> + bool group_set;
> const char *sym_hist_filter;
> const char *cpu_list;
> DECLARE_BITMAP(cpu_bitmap, MAX_NR_CPUS);
> @@ -508,6 +509,9 @@ int cmd_annotate(int argc, const char **argv)
> "Don't shorten the displayed pathnames"),
> OPT_BOOLEAN(0, "skip-missing", &annotate.skip_missing,
> "Skip symbols that cannot be annotated"),
> + OPT_BOOLEAN_SET(0, "group", &symbol_conf.event_group,
> + &annotate.group_set,
> + "Show event group information together"),
> OPT_STRING('C', "cpu", &annotate.cpu_list, "cpu", "list of cpus to profile"),
> OPT_CALLBACK(0, "symfs", NULL, "directory",
> "Look for files with symbols relative to this directory",
> @@ -570,6 +574,9 @@ int cmd_annotate(int argc, const char **argv)
> annotate.has_br_stack = perf_header__has_feat(&annotate.session->header,
> HEADER_BRANCH_STACK);
>
> + if (annotate.group_set)
> + perf_evlist__force_leader(annotate.session->evlist);
> +
> ret = symbol__annotation_init();
> if (ret < 0)
> goto out_delete;
> --
> 2.7.4
next prev parent reply other threads:[~2018-05-21 17:43 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-05-21 14:57 [PATCH v4 0/3] perf annotate: Support '--group' option Jin Yao
2018-05-21 14:57 ` [PATCH v4 1/3] perf evlist: Create new function perf_evlist__force_leader Jin Yao
2018-05-24 5:36 ` [tip:perf/core] perf evlist: Introduce force_leader() method tip-bot for Jin Yao
2018-05-21 14:57 ` [PATCH v4 2/3] perf report: Use perf_evlist__force_leader to support '--group' Jin Yao
2018-05-24 5:37 ` [tip:perf/core] " tip-bot for Jin Yao
2018-05-21 14:57 ` [PATCH v4 3/3] perf annotate: Support '--group' option Jin Yao
2018-05-21 17:43 ` Arnaldo Carvalho de Melo [this message]
2018-05-22 0:26 ` Jin, Yao
2018-05-24 5:37 ` [tip:perf/core] " tip-bot for Jin Yao
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=20180521174326.GA3772@kernel.org \
--to=acme@kernel.org \
--cc=Linux-kernel@vger.kernel.org \
--cc=ak@linux.intel.com \
--cc=alexander.shishkin@linux.intel.com \
--cc=jolsa@kernel.org \
--cc=kan.liang@intel.com \
--cc=mingo@redhat.com \
--cc=peterz@infradead.org \
--cc=yao.jin@intel.com \
--cc=yao.jin@linux.intel.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 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.