[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZTrFxazbxVx5G1N7@kernel.org>
Date: Thu, 26 Oct 2023 17:02:13 -0300
From: Arnaldo Carvalho de Melo <acme@...nel.org>
To: Namhyung Kim <namhyung@...nel.org>,
Adrian Hunter <adrian.hunter@...el.com>
Cc: Jiri Olsa <jolsa@...nel.org>, Ian Rogers <irogers@...gle.com>,
Peter Zijlstra <peterz@...radead.org>,
Ingo Molnar <mingo@...nel.org>,
LKML <linux-kernel@...r.kernel.org>,
linux-perf-users@...r.kernel.org
Subject: Re: [PATCH] perf tools: Add -H short option for --hierarchy
Em Thu, Oct 26, 2023 at 09:46:02AM +0300, Adrian Hunter escreveu:
> On 26/10/23 09:26, Namhyung Kim wrote:
> > I found the hierarchy mode useful, but it's easy to make a typo when
> > using it. Let's add a short option for that.
> > Also update the documentation. :)
> Perhaps it would also be possible to support bash-completions for
> long options
It works:
# . ~acme/git/linux/tools/perf/perf-completion.sh
# perf top --hi<TAB>
--hide_kernel_symbols --hide_user_symbols --hierarchy
#
And:
perf top --hie<ENTER>
works as it is unambiguous (so far).
What we don't have is a way to use hierachy by default, i.e. we should
have:
perf config top.hierarchy=1
and then:
perf top
would always use the hierarchy view.
tools/perf/Documentation/perf-config.txt has the options that can be
set, like:
# perf report | head -15
# To display the perf.data header info, please use --header/--header-only options.
#
#
# Total Lost Samples: 0
#
# Samples: 373K of event 'cycles:P'
# Event count (approx.): 205365133495
#
# Overhead Command Shared Object Symbol
# ........ ............... ................. ...................................
#
3.17% MediaDe~hine #6 libc.so.6 [.] pthread_mutex_lock@@GLIBC_2.2.5
2.31% swapper [kernel.vmlinux] [k] psi_group_change
1.87% MediaSu~sor #10 libc.so.6 [.] pthread_mutex_lock@@GLIBC_2.2.5
1.84% MediaSu~isor #7 libc.so.6 [.] pthread_mutex_lock@@GLIBC_2.2.5
#
Then:
# perf config report.sort_order=dso
# perf report | head -15
# To display the perf.data header info, please use --header/--header-only options.
#
#
# Total Lost Samples: 0
#
# Samples: 373K of event 'cycles:P'
# Event count (approx.): 205365133495
#
# Overhead Shared Object
# ........ ..............................................
#
59.52% [kernel.vmlinux]
19.79% libc.so.6
8.07% libxul.so
5.25% libopenh264.so.2.3.1
#
# cat ~/.perfconfig
# this file is auto-generated.
[report]
sort_order = dso
[root@...e ~]# perf config report.sort_order
report.sort_order=dso
#
Right now 'perf top' has only:
static int perf_top_config(const char *var, const char *value, void *cb __maybe_unused)
{
if (!strcmp(var, "top.call-graph")) {
var = "call-graph.record-mode";
return perf_default_config(var, value, cb);
}
if (!strcmp(var, "top.children")) {
symbol_conf.cumulate_callchain = perf_config_bool(var, value);
return 0;
}
return 0;
}
This would be similar to what was done for --no-children on:
https://git.kernel.org/torvalds/c/104ac991bd821773cba6f262f97a4a752ed76dd5
$ git show --pretty=full 104ac991bd821773cba6f262f97a4a752ed76dd5 | head -5
commit 104ac991bd821773cba6f262f97a4a752ed76dd5
Author: Namhyung Kim <namhyung@...nel.org>
Commit: Jiri Olsa <jolsa@...nel.org>
perf top: Add top.children config option
- Arnaldo
Powered by blists - more mailing lists