From: Frederic Weisbecker <fweisbec@gmail.com>
To: Francis Moreau <francis.moro@gmail.com>
Cc: linux-kernel@vger.kernel.org, Ingo Molnar <mingo@elte.hu>,
Peter Zijlstra <a.p.zijlstra@chello.nl>,
Arnaldo Carvalho de Melo <acme@redhat.com>,
Stephane Eranian <eranian@google.com>,
linux-perf-users@vger.kernel.org
Subject: Re: perf tools miscellaneous questions
Date: Wed, 3 Nov 2010 22:43:13 +0100 [thread overview]
Message-ID: <20101103214308.GA5421@nowhere> (raw)
In-Reply-To: <m2eib2uryc.fsf@gmail.com>
On Wed, Nov 03, 2010 at 08:28:59PM +0100, Francis Moreau wrote:
> Hello,
>
> I'm trying to use perf-tools and also to learn some internals about
> them. So I prefer to ask all of them in one email.
>
> The first one is about the list of pre-defined events given by
> perf-list. I couldn't find any documentations that describes these
> events so excuse me if the question is stupid.
Sorry about that. We indeed need to improve a lot the documentation.
May be this particular part could come with the future sysfs exposure
of the events.
>
> What's the difference between 'cpu-clock' and 'task-clock' event ?
cpu-clock is based on the total time spent on the cpu. task-clock is
based only on the time spent on the profiled task, so that doesn't count
time spent on other tasks, it has a per thread granularity.
(I might be somehow wrong in my explanation).
>
> What's exactly the 'cache-misses' event ? does it include both instructions
> _and_ data cache misses ? both L1 and L2 caches ?
>
> I was expecting so but the following command makes me wondering:
>
> $ perf stat -e cache-misses:u,l1d-loads-misses:u true
> Performance counter stats for 'true':
>
> 763 cache-misses
> 874 L1-dcache-load-misses
>
> 0.000916609 seconds time elapsed
>
> Here cache-misses < L1-dcache-load-misses.
Dunno, will let others answer.
> The last question is about the source code annotation done by
> perf-report. I'm using it to locate the place in my code that generates
> the most data cache miss events. I can read this during a perf-report
> session:
>
> [...]
> 0.00 : df215: c3 retq
> 0.00 : df216: 66 2e 0f 1f 84 00 00 nopw %cs:0x0(%rax,%rax,1)
> 0.00 : df21d: 00 00 00
> 10.00 : df220: 48 8b 75 00 mov 0x0(%rbp),%rsi
> 80.00 : df224: 48 89 df mov %rbx,%rdi
> 0.00 : df227: 41 ff d4 callq *%r12
> 0.00 : df22a: 85 c0 test %eax,%eax
> [...]
>
> If I read the output correctly, most of the dcache misses are coming from
> 'mov %rbx, %rdi', and AFAIK this intruction can't generate any dcache
> miss. What am I missing ?
Perhaps you need pebs to get the very precise location on your event.
perf stat -e cache-misses:up,l1d-loads-misses:up true
I think the more you add 'p', the more precise it is.
Like:
perf stat -e cache-misses:uppp,l1d-loads-misses:uppp true
Not sure how much it will accept though :)
next prev parent reply other threads:[~2010-11-03 21:43 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-11-03 19:28 perf tools miscellaneous questions Francis Moreau
2010-11-03 21:43 ` Frederic Weisbecker [this message]
2010-11-03 22:15 ` Reid Kleckner
[not found] <fa.AyvjD8RxwvZsnL5ZXcZ+OzALKY8@ifi.uio.no>
[not found] ` <fa.wlHJxDLDciTHF6/icJo+JfjJPus@ifi.uio.no>
[not found] ` <fa.8PQyp14JyjNgKJB4NUWsi+YoZBM@ifi.uio.no>
[not found] ` <fa.ZajcSOe/t8/XBoLV1hZ7SjSJvtI@ifi.uio.no>
2010-11-04 8:45 ` Francis Moreau
[not found] <fa.yHA7Aw03llqLWxPVYRnHvK5/dT8@ifi.uio.no>
[not found] ` <fa.13KEqWk+Dk+jLLdFlAoZtQ2Vjuw@ifi.uio.no>
[not found] ` <fa.AGo9lmnVDcmFVUpOFG/kfd1aYfI@ifi.uio.no>
2010-11-04 8:34 ` Francis Moreau
2010-11-04 8:52 ` Francis Moreau
2010-11-07 21:40 ` Frederic Weisbecker
2010-11-09 11:07 ` Francis Moreau
[not found] <fa.eqFHAk86WhpTuYclHhngn7QZr8Y@ifi.uio.no>
[not found] ` <fa.X++YRAJg+rmPtm3nmroZZoNU7u8@ifi.uio.no>
[not found] ` <fa.Elk8wOfBHRdKtkHIjP9hOtzVCgQ@ifi.uio.no>
[not found] ` <fa.U3fdWUGXguguIIyQ4v66/uKOhus@ifi.uio.no>
[not found] ` <fa.YTQQoGhoS6d3BaZXcZMN+l9TojQ@ifi.uio.no>
2010-11-04 20:58 ` Francis Moreau
2010-11-04 22:28 ` Victor Jimenez
[not found] <fa.SSgtQesEhEQa5DUYUwBV3fWtoV4@ifi.uio.no>
[not found] ` <fa.dD5ur5Phqa1TLmYBE2NVKCQMjTw@ifi.uio.no>
[not found] ` <fa.Xj1lA7n6nIJYL40CeRDpQzSKlfc@ifi.uio.no>
[not found] ` <fa.xcyA+VzIXesq6qsPU6ADM4xdCKY@ifi.uio.no>
[not found] ` <fa.MOg61Pcfdp2SJnwM2GFdOxP+xt0@ifi.uio.no>
[not found] ` <fa.4sHfhlc/fMhpYgKda4IfUHZ7jMY@ifi.uio.no>
2010-11-05 12:38 ` Francis Moreau
2010-11-05 14:02 ` Vince Weaver
2010-11-06 14:44 ` Francis Moreau
2010-11-06 20:50 ` Vince Weaver
2010-11-06 20:52 ` Vince Weaver
2010-11-08 19:43 ` Francis Moreau
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=20101103214308.GA5421@nowhere \
--to=fweisbec@gmail.com \
--cc=a.p.zijlstra@chello.nl \
--cc=acme@redhat.com \
--cc=eranian@google.com \
--cc=francis.moro@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-perf-users@vger.kernel.org \
--cc=mingo@elte.hu \
/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