From: Ingo Molnar <mingo@kernel.org>
To: Chenggang Qin <chenggang.qin@gmail.com>,
Pekka Enberg <penberg@kernel.org>,
Namhyung Kim <namhyung@kernel.org>
Cc: linux-kernel@vger.kernel.org, David Ahern <dsahern@gmail.com>,
Peter Zijlstra <a.p.zijlstra@chello.nl>,
Paul Mackerras <paulus@samba.org>, Ingo Molnar <mingo@redhat.com>,
Arnaldo Carvalho de Melo <acme@ghostprotocols.net>,
Arjan van de Ven <arjan@linux.intel.com>,
Namhyung Kim <namhyung@gmail.com>,
Yanmin Zhang <yanmin.zhang@intel.com>,
Wu Fengguang <fengguang.wu@intel.com>,
Mike Galbraith <efault@gmx.de>,
Andrew Morton <akpm@linux-foundation.org>,
Chenggang Qin <chenggang.qcg@taobao.com>
Subject: Re: [PATCH 0/4] perf report: add parameters 'start' & 'end' to specify analysis interval
Date: Fri, 1 Nov 2013 10:47:13 +0100 [thread overview]
Message-ID: <20131101094713.GA27550@gmail.com> (raw)
In-Reply-To: <1383298146-3860-1-git-send-email-chenggang.qin@gmail.com>
* Chenggang Qin <chenggang.qin@gmail.com> wrote:
> This patch set introduced a feature to analysis the samples in a specified time
> interval.
> After perf.data file was generated by perf record, the user could want to
> analysis a sub time interval of the whole record period.
> For some functions, the percent of its samples in a certain sub time interval is
> different from the percent in the total record period. Showing the scene in a
> certain time interval could allow users to more easily troubleshoot performance
> problems. The sample's timestamp are recorded in the perf.data file. The samples
> are sorted in the ordered_samples by timestamp while perf report processed them.
> So, it is easily to search the samples whose timestamp are in a certain time
> interval.
> We add 2 paramters --start and --end to specify the time interval.
> perf report --start xxxxx --end xxxxx
> The smallest granularity of time interval is millsecond.
> For example:
> If the whole record period of a perf.data file is 10000 to 20000, we can use the
> following command to analysis the samples between [15000, 16000).
> perf report --start 15000 --end 16000
> The time is the uptime, it start timing from the system starts.
>
> Cc: David Ahern <dsahern@gmail.com>
> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
> Cc: Paul Mackerras <paulus@samba.org>
> Cc: Ingo Molnar <mingo@redhat.com>
> Cc: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
> Cc: Arjan van de Ven <arjan@linux.intel.com>
> Cc: Namhyung Kim <namhyung@gmail.com>
> Cc: Yanmin Zhang <yanmin.zhang@intel.com>
> Cc: Wu Fengguang <fengguang.wu@intel.com>
> Cc: Mike Galbraith <efault@gmx.de>
> Cc: Andrew Morton <akpm@linux-foundation.org>
> Signed-off-by: Chenggang Qin <chenggang.qcg@taobao.com>
>
> Chenggang Qin (4):
> perf tools: add parameter 'start' & 'end' to perf report
> perf tools: relate 'start' & 'end' to perf_session
> perf tools: record min_timestamp of samples queue in ordered_samples
> perf tools: add the feature to assign analysis interval to perf
> report
>
> tools/perf/builtin-report.c | 14 ++++++++++++
> tools/perf/util/session.c | 49 +++++++++++++++++++++++++++++++++++++++++-
> tools/perf/util/session.h | 3 ++
> 3 files changed, 64 insertions(+), 2 deletions(-)
Looks useful - but right now this has to be used 'blindly', without
knowing _which_ portion of the perf.data is 'interesting'.
That problem could be resolved by allowing direct manipulation of
the start/end interval via the GTK front end: a small graph could
show the 'sample graph', with two sliders specifying the reported
interval?
Something like this, at the top of the window:
---------------------------------------------------------------
| |
| .... ..... |
| .. . ... . . |
| . ... . . . . |
| ..... .. .. .... .... .. |
| [1] [2] |
---------------------------------------------------------------
|
| Usual perf report GTK output
|
| ....
|
The 'graph' might be anything that visualizes the time axis of the
perf.data: a sample frequency visualization for example, or maybe a
simple task activity graph based on fork/exec/exit data, with some
simple time display included as well (a vertical marker every
minute/second or so).
The [1] and [2] markers demark the two sliders, which in the above
mockup example show an 'interesting' portion of the profile with a
lot of samples.
With such a solution the feature you add would be very useful
indeed, I'd even argue for the data file time-axis visualization to
be enabled by default, with the initial start/end interval covering
the whole perf.data, but the sliders being just a mouse-drag away
from being changed.
Thanks,
Ingo
prev parent reply other threads:[~2013-11-01 9:47 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-11-01 9:29 [PATCH 0/4] perf report: add parameters 'start' & 'end' to specify analysis interval Chenggang Qin
2013-11-01 9:29 ` [PATCH 1/4] perf report: add parameter 'start' & 'end' to perf report Chenggang Qin
2013-11-01 9:29 ` [PATCH 2/4] perf tools: relate 'start' & 'end' to perf_session Chenggang Qin
2013-11-02 22:34 ` David Ahern
[not found] ` <f31aa7c2-c31a-47f2-a051-a5bd44f4d07d@alibaba-inc.com>
2013-11-06 15:15 ` 答复:[PATCH " David Ahern
[not found] ` <6d5d4b79-c25a-4f12-984a-58b310dae2a5@alibaba-inc.com>
2013-11-07 15:55 ` 答复:答复:[PATCH " David Ahern
2013-11-01 9:29 ` [PATCH 3/4] perf tools: record min_timestamp of samples queue in ordered_samples Chenggang Qin
2013-11-02 22:33 ` David Ahern
2013-11-01 9:29 ` [PATCH 4/4] perf tools: add the feature to assign analysis interval to perf report Chenggang Qin
2013-11-01 9:47 ` Ingo Molnar [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=20131101094713.GA27550@gmail.com \
--to=mingo@kernel.org \
--cc=a.p.zijlstra@chello.nl \
--cc=acme@ghostprotocols.net \
--cc=akpm@linux-foundation.org \
--cc=arjan@linux.intel.com \
--cc=chenggang.qcg@taobao.com \
--cc=chenggang.qin@gmail.com \
--cc=dsahern@gmail.com \
--cc=efault@gmx.de \
--cc=fengguang.wu@intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=namhyung@gmail.com \
--cc=namhyung@kernel.org \
--cc=paulus@samba.org \
--cc=penberg@kernel.org \
--cc=yanmin.zhang@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.