Re: perf tools miscellaneous questions

From: Vince Weaver
Date: Sat Nov 06 2010 - 16:51:23 EST



This is rapidly getting of topic, especially for linux-kernel

On Sat, 6 Nov 2010, Francis Moreau wrote:

> Specially since 'llc-loads-misses' is and should be self speaking.

Not necessarily. Does "last level" mean the common L2 or the shared L3?
Do the misses count prefetch misses? Do the misses count coherency
actions or else just "normal" cache accesses? Does your processor count
multiple loads from some single instructions [unfortunately, many do].

Most events are poorly documented, if at all. And the Linux kernel
predefined event list is loosely based upon the intel architectural
events, which not every processor has and I've heard from insiders saying
that you should be very careful for the results from those events. Also
as far as I know there hasn't been much validation work on whether the
events return useful values. No chip company will guarantee the values
returned by performance counters; they are more or less a bonus feature
that works most of the time but you never really know the accuracy of what
you are reading out of them.

> Could you point out the best architecture manual for it which describe
> the raw events ?

For your Core2 you want the Intel Software Developer's Manual, volume 2B.
Google should find it.

> BTW, I'm wondering if event names are coherent across the different
> architectures supported by Linux.

Nope. They aren't even consistent across the same chip company. For
example, Core2 and Nehalem have completely different event names, and even
between Nehalem and Westmere there are incompatible changes.

Vince
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/