From: Namhyung Kim <namhyung@kernel.org>
To: Jiri Olsa <jolsa@redhat.com>
Cc: linux-kernel@vger.kernel.org,
Corey Ashford <cjashfor@linux.vnet.ibm.com>,
Frederic Weisbecker <fweisbec@gmail.com>,
Ingo Molnar <mingo@elte.hu>, Paul Mackerras <paulus@samba.org>,
Peter Zijlstra <a.p.zijlstra@chello.nl>,
Arnaldo Carvalho de Melo <acme@redhat.com>,
Steven Rostedt <rostedt@goodmis.org>,
David Ahern <dsahern@gmail.com>
Subject: Re: [RFC 00/22] perf tools: Display tracepoint enahncements
Date: Wed, 05 Feb 2014 10:58:37 +0900 [thread overview]
Message-ID: <87eh3i1fsi.fsf@sejong.aot.lge.com> (raw)
In-Reply-To: <1391377150-23920-1-git-send-email-jolsa@redhat.com> (Jiri Olsa's message of "Sun, 2 Feb 2014 22:38:48 +0100")
On Sun, 2 Feb 2014 22:38:48 +0100, Jiri Olsa wrote:
> hi,
> sending out tracepoint (mostly) events display enahncements.
>
> * adding the '--tp' option for report command to show
> tracepoint related info. Use can specify following switches:
> fields: shows separated tracepoint fields
> format: shows tracepoints 'print fmt' in single column
> (This is default if no switch is given.)
Looks like an useful feature.. but unfortunately it seems not to work
well with --children and (especially) --group options. Do you have an
idea?
Also as Ingo requested I plan to extend controlling output column with
-F/--field option. I think I need to more consideration..
Thanks,
Namhyung
>
> $ perf report --tp --no-children
> Samples: 4K of event 'sched:sched_switch', Event count (approx.): 4788
> Overhead Command Shared Object Symbol Print fmt
> + 26.27% swapper [kernel.kallsyms] [k] __schedule swapper/2:0 [120] R ==> offlineimap:22134 [120]
> + 26.27% offlineimap [kernel.kallsyms] [k] __schedule offlineimap:22134 [120] S ==> swapper/2:0 [120]
> - 8.15% swapper [kernel.kallsyms] [k] __schedule swapper/3:0 [120] R ==> offlineimap:22134 [120]
> __schedule
> schedule_preempt_disabled
> cpu_startup_entry
> start_secondary
> + 8.15% offlineimap [kernel.kallsyms] [k] __schedule offlineimap:22134 [120] S ==> swapper/3:0 [120]
>
> $ perf report --tp=fields --no-children
> Samples: 4K of event 'sched:sched_switch', Event count (approx.): 4788
> Overhead Command Shared Object Symbol prev_comm prev_pid prev_prio prev_state next_comm next_pid next_prio
> + 26.27% swapper [kernel.kallsyms] [k] __schedule swapper/2 0 120 0 offlineimap 22134 120
> + 26.27% offlineimap [kernel.kallsyms] [k] __schedule offlineimap 22134 120 1 swapper/2 0 120
> - 8.15% swapper [kernel.kallsyms] [k] __schedule swapper/3 0 120 0 offlineimap 22134 120
> __schedule
> schedule_preempt_disabled
> cpu_startup_entry
> start_secondary
> + 8.15% offlineimap [kernel.kallsyms] [k] __schedule offlineimap 22134 120 1 swapper/3 0 120
>
>
> * adding '--list' report option to display entries sequentialy:
>
> Samples: 2K of event 'sched:sched_switch', Event count (approx.): 2450
> Self Children Time Command Shared Object Symbol Print fmt
> + 0.04% 0.04% 9582.431783 +000000.000000 swapper [kernel.kallsyms] [k] __schedule swapper/1:0 [120] R ==> perf:11168 [120]
> - 0.00% 0.04% 9582.431783 +000000.000000 swapper [kernel.kallsyms] [k] __schedule swapper/1:0 [120] R ==> perf:11168 [120]
> __schedule
> schedule
> cpu_idle
> start_secondary
> + 0.00% 0.04% 9582.431783 +000000.000000 swapper [kernel.kallsyms] [k] schedule swapper/1:0 [120] R ==> perf:11168 [120]
> + 0.00% 0.04% 9582.431783 +000000.000000 swapper [kernel.kallsyms] [k] cpu_idle swapper/1:0 [120] R ==> perf:11168 [120]
>
> * adding 'H' key handler to togle header columns
>
>
> thanks for comments,
> jirka
>
>
> Signed-off-by: Jiri Olsa <jolsa@redhat.com>
> Cc: Corey Ashford <cjashfor@linux.vnet.ibm.com>
> Cc: Frederic Weisbecker <fweisbec@gmail.com>
> Cc: Ingo Molnar <mingo@elte.hu>
> Cc: Namhyung Kim <namhyung@kernel.org>
> Cc: Paul Mackerras <paulus@samba.org>
> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
> Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
> Cc: Steven Rostedt <rostedt@goodmis.org>
> Cc: David Ahern <dsahern@gmail.com>
> ---
> Jiri Olsa (22):
> perf tools: Fix memory leak in event_format__print function
> perf tools: Add time sort entry
> perf tools: Add idx sort entry
> perf tools: Add --list report option
> perf tools: Add sort_entry struct into sort entries callbacks
> perf tools: Add selected bool into se_snprintf sort entries callback
> perf tools: Implement selected bool se_snprintf callback logic
> perf tools: Implement selected logic for time sort entry
> perf tools: Factor ui_browser ops out of ui_browser struct
> perf tools: Add header callback into ui_browser_ops struct
> perf tools: Remove ev_name argument from perf_evsel__hists_browse
> perf tools: Add header callback to hist browser
> perf tools: Factor hpp_arg struct to carry hist_browser
> perf tools tui: Display columns header text on 'H' press
> tools lib traceevent: Factor print_event_fields function
> tools lib traceevent: Make the name output optional in pevent_field_info
> tools lib traceevent: Add pevent_field_cmp function
> perf tools: Factor sort entries loops
> perf tools: Add local hists sort entry list
> perf tools: Make hists col_len dynamicaly alocated
> perf tools: Add raw info into hist entry
> perf tools: Add support for tracepoint fields
>
> tools/lib/traceevent/event-parse.c | 181 +++++++++++++++++++++----------
> tools/lib/traceevent/event-parse.h | 10 ++
> tools/perf/Documentation/perf-report.txt | 6 ++
> tools/perf/Makefile.perf | 1 +
> tools/perf/builtin-annotate.c | 4 +-
> tools/perf/builtin-diff.c | 4 +-
> tools/perf/builtin-report.c | 52 ++++++++-
> tools/perf/tests/hists_link.c | 6 +-
> tools/perf/ui/browser.c | 101 ++++++++++++-----
> tools/perf/ui/browser.h | 31 ++++--
> tools/perf/ui/browsers/annotate.c | 19 ++--
> tools/perf/ui/browsers/header.c | 8 +-
> tools/perf/ui/browsers/hists.c | 168 ++++++++++++++++++++++-------
> tools/perf/ui/browsers/map.c | 8 +-
> tools/perf/ui/browsers/scripts.c | 2 +-
> tools/perf/ui/gtk/hists.c | 8 +-
> tools/perf/ui/hist.c | 10 +-
> tools/perf/ui/stdio/hist.c | 6 +-
> tools/perf/ui/tui/util.c | 8 +-
> tools/perf/util/evsel.c | 24 +++--
> tools/perf/util/evsel.h | 6 +-
> tools/perf/util/hist.c | 65 ++++++++---
> tools/perf/util/hist.h | 20 +++-
> tools/perf/util/python.c | 3 +-
> tools/perf/util/report-tp.c | 244 +++++++++++++++++++++++++++++++++++++++++
> tools/perf/util/report-tp.h | 18 ++++
> tools/perf/util/sort.c | 370 +++++++++++++++++++++++++++++++++++++++++++++++++--------------
> tools/perf/util/sort.h | 29 ++++-
> tools/perf/util/symbol.h | 3 +-
> tools/perf/util/trace-event-parse.c | 1 +
> tools/perf/util/util.h | 17 +++
> 31 files changed, 1144 insertions(+), 289 deletions(-)
> create mode 100644 tools/perf/util/report-tp.c
> create mode 100644 tools/perf/util/report-tp.h
prev parent reply other threads:[~2014-02-05 1:58 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-02-02 21:38 [RFC 00/22] perf tools: Display tracepoint enahncements Jiri Olsa
2014-02-02 21:38 ` [PATCH 01/22] perf tools: Fix memory leak in event_format__print function Jiri Olsa
2014-02-05 1:41 ` Namhyung Kim
2014-02-22 17:57 ` [tip:perf/core] " tip-bot for Jiri Olsa
2014-02-02 21:38 ` [PATCH 02/22] perf tools: Add time sort entry Jiri Olsa
2014-02-02 21:38 ` [PATCH 03/22] perf tools: Add idx " Jiri Olsa
2014-02-02 21:38 ` [PATCH 04/22] perf tools: Add --list report option Jiri Olsa
2014-02-05 1:50 ` Namhyung Kim
2014-02-05 9:14 ` Jiri Olsa
2014-02-02 21:38 ` [PATCH 05/22] perf tools: Add sort_entry struct into sort entries callbacks Jiri Olsa
2014-02-02 21:38 ` [PATCH 06/22] perf tools: Add selected bool into se_snprintf sort entries callback Jiri Olsa
2014-02-02 21:38 ` [PATCH 07/22] perf tools: Implement selected bool se_snprintf callback logic Jiri Olsa
2014-02-02 21:38 ` [PATCH 08/22] perf tools: Implement selected logic for time sort entry Jiri Olsa
2014-02-02 21:38 ` [PATCH 09/22] perf tools: Factor ui_browser ops out of ui_browser struct Jiri Olsa
2014-02-02 21:38 ` [PATCH 10/22] perf tools: Add header callback into ui_browser_ops struct Jiri Olsa
2014-02-02 21:38 ` [PATCH 11/22] perf tools: Remove ev_name argument from perf_evsel__hists_browse Jiri Olsa
2014-02-02 21:39 ` [PATCH 12/22] perf tools: Add header callback to hist browser Jiri Olsa
2014-02-02 21:39 ` [PATCH 13/22] perf tools: Factor hpp_arg struct to carry hist_browser Jiri Olsa
2014-02-02 21:39 ` [PATCH 14/22] perf tools tui: Display columns header text on 'H' press Jiri Olsa
2014-02-02 21:39 ` [PATCH 15/22] tools lib traceevent: Factor print_event_fields function Jiri Olsa
2014-02-02 21:39 ` [PATCH 16/22] tools lib traceevent: Make the name output optional in pevent_field_info Jiri Olsa
2014-02-02 21:39 ` [PATCH 17/22] tools lib traceevent: Add pevent_field_cmp function Jiri Olsa
2014-02-02 21:39 ` [PATCH 18/22] perf tools: Factor sort entries loops Jiri Olsa
2014-02-02 21:39 ` [PATCH 19/22] perf tools: Add local hists sort entry list Jiri Olsa
2014-02-02 21:39 ` [PATCH 20/22] perf tools: Make hists col_len dynamicaly alocated Jiri Olsa
2014-02-02 21:39 ` [PATCH 21/22] perf tools: Add raw info into hist entry Jiri Olsa
2014-02-02 21:39 ` [PATCH 22/22] perf tools: Add support for tracepoint fields Jiri Olsa
2014-02-02 21:45 ` [RFC 00/22] perf tools: Display tracepoint enahncements Jiri Olsa
2014-02-05 1:40 ` Namhyung Kim
2014-02-05 9:15 ` Jiri Olsa
2014-02-05 1:58 ` Namhyung Kim [this message]
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=87eh3i1fsi.fsf@sejong.aot.lge.com \
--to=namhyung@kernel.org \
--cc=a.p.zijlstra@chello.nl \
--cc=acme@redhat.com \
--cc=cjashfor@linux.vnet.ibm.com \
--cc=dsahern@gmail.com \
--cc=fweisbec@gmail.com \
--cc=jolsa@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=paulus@samba.org \
--cc=rostedt@goodmis.org \
/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