From: Namhyung Kim <namhyung@kernel.org>
To: Arnaldo Carvalho de Melo <acme@kernel.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>,
Ingo Molnar <mingo@kernel.org>, Paul Mackerras <paulus@samba.org>,
Namhyung Kim <namhyung.kim@lge.com>,
Namhyung Kim <namhyung@kernel.org>,
LKML <linux-kernel@vger.kernel.org>, Jiri Olsa <jolsa@redhat.com>
Subject: [PATCHSET 0/8] perf tools: Honor column width setting (v3)
Date: Thu, 31 Jul 2014 14:47:34 +0900 [thread overview]
Message-ID: <1406785662-5534-1-git-send-email-namhyung@kernel.org> (raw)
Hello,
This patchset is to control perf report/top output column width by
-w/--column-widths option so that it can fit into the terminal size.
The -w option is there for perf report but it ignored by recent output
field changed due to some reason. This patchset fixes it and supports
perf top also.
This is sometimes useful if your terminal is small and there's some
C++ applications which have amazingly long symbol names. Without this
patchset user might not see those symbols on TUI, since it maps
left/right arrow keys to other functions.
The -w option sets column width starting from the first column
(overhead or optional overhead_children column unless -F option is
given). It doesn't make sense to limit those overhead columns so it's
not a hard-limit for them. But it *is* a hard-limit for other columns
such as comm, dso, symbol, and so on. One can use 0 not to
limit/force a width for those columns.
For example:
$ perf report --stdio -s comm,dso
...
# Overhead Command Shared Object
# ........ ............... .....................................................
#
71.08% gnome-shell perf-1497.map
9.23% gnome-shell swrast_dri.so
3.99% Xorg [unknown]
3.18% Xorg [kernel.kallsyms]
2.93% gnome-shell [kernel.kallsyms]
2.41% swapper [kernel.kallsyms]
1.55% synergys libpthread-2.15.so
1.08% synergys synergys
0.68% systemd-journal [kernel.kallsyms]
0.59% synergys libstdc++.so.6.0.17
0.58% gnome-shell libc-2.15.so
0.54% kworker/0:2 [kernel.kallsyms]
0.20% systemd-journal [unknown]
0.19% gnome-shell libclutter-1.0.so.0.1000.8.#prelink#.1kh1we (deleted)
0.18% firefox libxul.so (deleted)
0.17% gnome-shell libcogl.so.9.1.1.#prelink#.ZL3fn1 (deleted)
0.14% firefox [kernel.kallsyms]
0.14% gnome-shell libgobject-2.0.so.0.3200.4
0.13% gnome-shell libpthread-2.15.so
0.11% synergys [kernel.kallsyms]
0.10% perf [kernel.kallsyms]
$ perf report --stdio -s comm,dso -w 0,10,20 # 0 means no limit
...
# Overhead Command Shared Object
# ........ .......... ....................
#
71.08% gnome-shel perf-1497.map
9.23% gnome-shel swrast_dri.so
3.99% Xorg [unknown]
3.18% Xorg [kernel.kallsyms]
2.93% gnome-shel [kernel.kallsyms]
2.41% swapper [kernel.kallsyms]
1.55% synergys libpthread-2.15.so
1.08% synergys synergys
0.68% systemd-jo [kernel.kallsyms]
0.59% synergys libstdc++.so.6.0.17
0.58% gnome-shel libc-2.15.so
0.54% kworker/0: [kernel.kallsyms]
0.20% systemd-jo [unknown]
0.19% gnome-shel libclutter-1.0.so.0.
0.18% firefox libxul.so (deleted)
0.17% gnome-shel libcogl.so.9.1.1.#pr
0.14% firefox [kernel.kallsyms]
0.14% gnome-shel libgobject-2.0.so.0.
0.13% gnome-shel libpthread-2.15.so
0.11% synergys [kernel.kallsyms]
0.10% perf [kernel.kallsyms]
* changes in v3:
- use single function for fmt->header() and ->width() (Jiri)
- limit symbol sort print function to given width (Jiri)
- do not demangle C++ function parameters by default
* changes in v2:
- fix TUI alignment when no header is shown (Jiri)
- change printing order of pid sort key (Jiri)
You can also get this from 'perf/width-v3' branch on my tree
git://git.kernel.org/pub/scm/linux/kernel/git/namhyung/linux-perf.git
Thanks,
Namhyung
Namhyung Kim (8):
perf tools: Left-align output contents
perf tools: Make __hpp__fmt() receive an additional len argument
perf tools: Save column length in perf_hpp_fmt
perf report: Honor column width setting
perf top: Add -w option for setting column width
perf tools: Add name field into perf_hpp_fmt
perf tools: Fix column alignment when headers aren't shown on TUI
perf symbol: Don't demangle parameters and such by default
tools/perf/Documentation/perf-report.txt | 2 +-
tools/perf/Documentation/perf-top.txt | 6 +
tools/perf/builtin-top.c | 3 +
tools/perf/ui/browsers/hists.c | 31 ++--
tools/perf/ui/gtk/hists.c | 18 +-
tools/perf/ui/hist.c | 280 +++++++++++++++++++------------
tools/perf/ui/stdio/hist.c | 4 +-
tools/perf/util/color.c | 16 ++
tools/perf/util/color.h | 1 +
tools/perf/util/hist.h | 17 +-
tools/perf/util/sort.c | 58 ++++---
tools/perf/util/symbol-elf.c | 7 +-
tools/perf/util/symbol.h | 1 +
13 files changed, 282 insertions(+), 162 deletions(-)
--
2.0.0
next reply other threads:[~2014-07-31 5:48 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-07-31 5:47 Namhyung Kim [this message]
2014-07-31 5:47 ` [PATCH 1/8] perf tools: Left-align output contents Namhyung Kim
2014-08-13 5:17 ` [tip:perf/core] " tip-bot for Namhyung Kim
2014-07-31 5:47 ` [PATCH 2/8] perf tools: Make __hpp__fmt() receive an additional len argument Namhyung Kim
2014-08-02 13:30 ` Arnaldo Carvalho de Melo
2014-08-11 8:05 ` Namhyung Kim
2014-08-11 13:17 ` Arnaldo Carvalho de Melo
2014-08-12 7:13 ` Namhyung Kim
2014-08-13 5:18 ` [tip:perf/core] " tip-bot for Namhyung Kim
2014-07-31 5:47 ` [PATCH 3/8] perf tools: Save column length in perf_hpp_fmt Namhyung Kim
2014-08-13 5:18 ` [tip:perf/core] " tip-bot for Namhyung Kim
2014-07-31 5:47 ` [PATCH 4/8] perf report: Honor column width setting Namhyung Kim
2014-08-13 5:18 ` [tip:perf/core] " tip-bot for Namhyung Kim
2014-07-31 5:47 ` [PATCH 5/8] perf top: Add -w option for setting column width Namhyung Kim
2014-08-13 5:18 ` [tip:perf/core] " tip-bot for Namhyung Kim
2014-07-31 5:47 ` [PATCH 6/8] perf tools: Add name field into perf_hpp_fmt Namhyung Kim
2014-08-13 5:19 ` [tip:perf/core] " tip-bot for Namhyung Kim
2014-07-31 5:47 ` [PATCH 7/8] perf tools: Fix column alignment when headers aren't shown on TUI Namhyung Kim
2014-08-13 5:19 ` [tip:perf/core] " tip-bot for Namhyung Kim
2014-07-31 5:47 ` [PATCH 8/8] perf symbol: Don't demangle parameters and such by default Namhyung Kim
2014-08-02 13:35 ` Arnaldo Carvalho de Melo
2014-08-11 8:17 ` Namhyung Kim
2014-08-11 13:32 ` Arnaldo Carvalho de Melo
2014-08-12 7:17 ` Namhyung Kim
2014-08-14 8:49 ` [tip:perf/core] perf symbols: Don' t " tip-bot for 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=1406785662-5534-1-git-send-email-namhyung@kernel.org \
--to=namhyung@kernel.org \
--cc=a.p.zijlstra@chello.nl \
--cc=acme@kernel.org \
--cc=jolsa@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=namhyung.kim@lge.com \
--cc=paulus@samba.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
Powered by JetHome