[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1456935128-31299-1-git-send-email-namhyung@kernel.org>
Date: Thu, 3 Mar 2016 01:12:00 +0900
From: Namhyung Kim <namhyung@...nel.org>
To: Arnaldo Carvalho de Melo <acme@...nel.org>
Cc: Ingo Molnar <mingo@...nel.org>,
Peter Zijlstra <peterz@...radead.org>,
Jiri Olsa <jolsa@...nel.org>,
LKML <linux-kernel@...r.kernel.org>,
David Ahern <dsahern@...il.com>,
Andi Kleen <andi@...stfloor.org>,
Stephane Eranian <eranian@...gle.com>,
Wang Nan <wangnan0@...wei.com>
Subject: [PATCHSET 0/8] perf tools: Support multiple keys in a single hierarchy level (v1)
Hello,
This implements what Arnaldo suggested in previous discussion of
hierarchy patchset [1]. Originally each level in a hierarchy can have
a single sort key in it, but with patches it's possible to have more
than one sort keys. I added the struct perf_hpp_list_node and carry
it to group output formats (hpp_fmt) in a single level.
I used ':' character instead of '+' as suggested since the '+' was
also used to extend existing sort keys (like -s '+cpu').
Example below shows how 4 sort keys are used for 2 levels. As you can
see, the first level shows pid and comm of previous (switched) task
and the second level shows pid and comm of next task.
$ perf report --hierarchy -s prev_pid:prev_comm,next_pid:next_comm \
--percent-limit 1 -i perf.data.sched
...
# Overhead prev_pid+prev_comm / next_pid+next_comm
# ........... .......................................
#
22.36% 0 swapper/0
9.48% 17773 transmission-gt
5.25% 109 kworker/0:1H
1.53% 6524 Xephyr
21.39% 17773 transmission-gt
9.52% 0 swapper/0
9.04% 0 swapper/2
1.78% 0 swapper/3
It's available on the 'perf/hierarchy-multi-v1' branch in my tree
git://git.kernel.org/pub/scm/linux/kernel/git/namhyung/linux-perf.git
Any feedbacks are welcome
Thanks,
Namhyung
[1] https://lkml.org/lkml/2016/2/24/1041
Namhyung Kim (8):
perf tools: Add level field to struct perf_hpp_fmt
perf tools: Introduce perf_hpp__setup_hists_formats()
perf tools: Use own hpp_list for hierarchy mode
perf tools: Support multiple sort keys in a hierarchy
perf tools: Fix indent for multiple hierarchy sort key
perf report: Use hierarchy hpp list on stdio
perf hists browser: Use hierarchy hpp list
perf report: Use hierarchy hpp list on gtk
tools/perf/ui/browsers/hists.c | 147 +++++++++++++++++++----------------
tools/perf/ui/gtk/hists.c | 73 +++++++++++-------
tools/perf/ui/hist.c | 67 ++++++++++++++++
tools/perf/ui/stdio/hist.c | 171 +++++++++++++++++++++--------------------
tools/perf/util/hist.c | 81 +++++++++++++------
tools/perf/util/hist.h | 12 +++
tools/perf/util/sort.c | 123 ++++++++++++++++++++---------
tools/perf/util/sort.h | 1 +
8 files changed, 438 insertions(+), 237 deletions(-)
--
2.7.1
Powered by blists - more mailing lists