From: Namhyung Kim <namhyung@kernel.org>
To: Peter Zijlstra <peterz@infradead.org>
Cc: Arnaldo Carvalho de Melo <acme@kernel.org>,
Ingo Molnar <mingo@kernel.org>, Jiri Olsa <jolsa@redhat.com>,
LKML <linux-kernel@vger.kernel.org>,
David Ahern <dsahern@gmail.com>,
Stephane Eranian <eranian@google.com>,
Andi Kleen <andi@firstfloor.org>,
Minchan Kim <minchan@kernel.org>
Subject: Re: [RFC/PATCH] perf stat: Show sample events stat for a data file
Date: Wed, 29 Apr 2015 20:58:22 +0900 [thread overview]
Message-ID: <20150429115822.GA31120@danjae.kornet> (raw)
In-Reply-To: <20150429092751.GR5029@twins.programming.kicks-ass.net>
Hi Peter,
On Wed, Apr 29, 2015 at 11:27:51AM +0200, Peter Zijlstra wrote:
> On Wed, Apr 29, 2015 at 04:27:45PM +0900, Namhyung Kim wrote:
> > Add --input option to 'perf stat' so that it can show event stats of the
> > file. I would like to use a short '-i' option to be compatible with
> > other commands but it was already taken by '--no-inherit' option, so it
> > only supports the long option.
> >
> > The example output looks like below:
> >
> > $ perf record -a sleep 1
> > [ perf record: Woken up 1 times to write data ]
> > [ perf record: Captured and wrote 0.635 MB perf.data (1946 samples) ]
> >
> > $ perf stat --input perf.data
> >
> > Total event stats for 'perf.data' file:
> >
> > TOTAL events: 6837
> > MMAP events: 116
> > COMM events: 375
> > EXIT events: 2
> > THROTTLE events: 12
> > UNTHROTTLE events: 11
> > FORK events: 374
> > SAMPLE events: 1946
> > MMAP2 events: 3999
> > FINISHED_ROUND events: 2
> >
> > Sample event stats:
> >
> > 361,255,234 cycles
> > 1,946 samples # sampling ratio 12.162% (486/4000)
> >
> > 0.998581085 second time sampled
>
> It would be nice if this thing could support 'perf record -s' which
> enables perf_event_attr::inherit_stat, which in turn results in
> PERF_RECORD_READ entries after every PERF_RECORD_EXIT which give the
> total number of events for each recorded task.
Hmm.. this is one of the areas that I don't understand what's going
on. It'd be nice if you can help me understand and possibly improve
the doc too.
So the combination of 'perf record -s' and 'perf report -T' should
show some per-thread counter values, right? I've found a bug on it.
Anyway, I don't understand the numbers it shows.
$ perf record -s -- perf bench sched messaging
# Running 'sched/messaging' benchmark:
# 20 sender and receiver processes per group
# 10 groups == 400 processes run
Total time: 0.192 [sec]
[ perf record: Woken up 1 times to write data ]
[ perf record: Captured and wrote 0.376 MB perf.data (6806 samples) ]
$ perf report -T --stdio
...
# PID TID cycles cycles cycles cycles cycles
9728 9728 5865527 0 0 0 0
9686 9686 0 0 5692534 0 0
9650 9650 0 0 0 0 0
9649 9649 5578209 0 0 0 0
9685 9685 6227490 0 0 0 0
9596 9596 0 140483569056856 0 0 0
9837 9837 120079 140483569056856 0 0 0
9561 9561 0 140483569056856 0 0 0
9475 9475 0 46264256 0 14012 14172
...
$ perf stat --input perf.data
Total event stats for 'perf.data.inherit' file:
TOTAL events: 9370
MMAP events: 140
COMM events: 2
EXIT events: 401
FORK events: 400
READ events: 1600
SAMPLE events: 6806
MMAP2 events: 20
FINISHED_ROUND events: 1
Sample event stats:
2,984,107,504 cycles
6,806 samples # sampling ratio 161.107% (6444/4000)
0.264032172 second time sampled
So the cycles values on 'perf report -T' are a lot more than the value
of perf stat. And I have no idea why it shows 5 different cycles for
each thread. Could you shed some light on this?
Thanks,
Namhyung
next prev parent reply other threads:[~2015-04-29 11:59 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-04-29 7:27 [RFC/PATCH] perf stat: Show sample events stat for a data file Namhyung Kim
2015-04-29 7:42 ` Jiri Olsa
2015-04-29 7:58 ` Namhyung Kim
2015-04-29 9:27 ` Peter Zijlstra
2015-04-29 11:58 ` Namhyung Kim [this message]
2015-05-08 14:46 ` Peter Zijlstra
2015-05-09 14:39 ` 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=20150429115822.GA31120@danjae.kornet \
--to=namhyung@kernel.org \
--cc=acme@kernel.org \
--cc=andi@firstfloor.org \
--cc=dsahern@gmail.com \
--cc=eranian@google.com \
--cc=jolsa@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=minchan@kernel.org \
--cc=mingo@kernel.org \
--cc=peterz@infradead.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