linux/Documentation/perf_counter
Ingo Molnar 8326f44da0 perf_counter: Implement generalized cache event types
Extend generic event enumeration with the PERF_TYPE_HW_CACHE
method.

This is a 3-dimensional space:

       { L1-D, L1-I, L2, ITLB, DTLB, BPU } x
       { load, store, prefetch } x
       { accesses, misses }

User-space passes in the 3 coordinates and the kernel provides
a counter. (if the hardware supports that type and if the
combination makes sense.)

Combinations that make no sense produce a -EINVAL.
Combinations that are not supported by the hardware produce -ENOTSUP.

Extend the tools to deal with this, and rewrite the event symbol
parsing code with various popular aliases for the units and
access methods above. So 'l1-cache-miss' and 'l1d-read-ops' are
both valid aliases.

( x86 is supported for now, with the Nehalem event table filled in,
  and with Core2 and Atom having placeholder tables. )

Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Corey Ashford <cjashfor@linux.vnet.ibm.com>
Cc: Marcelo Tosatti <mtosatti@redhat.com>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
LKML-Reference: <new-submission>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
2009-06-06 13:14:47 +02:00
..
Documentation perf stat: Update help text 2009-06-04 16:33:00 +02:00
util perf_counter: Implement generalized cache event types 2009-06-06 13:14:47 +02:00
.gitignore perf_counter tools: Make .gitignore reflect perf_counter tools files 2009-06-02 09:46:09 +02:00
Makefile perf_counter tools: Remove -march=native 2009-06-05 17:56:21 +02:00
builtin-help.c perf_counter tools: Generate per command manpages (and pdf/html, etc.) 2009-05-30 13:52:44 +02:00
builtin-record.c perf_counter: Separate out attr->type from attr->config 2009-06-06 11:37:22 +02:00
builtin-report.c perf_counter tools: Sample and display frequency adjustment changes 2009-06-05 18:07:51 +02:00
builtin-stat.c perf_counter: Separate out attr->type from attr->config 2009-06-06 11:37:22 +02:00
builtin-top.c perf_counter: Separate out attr->type from attr->config 2009-06-06 11:37:22 +02:00
builtin.h perf_counter: First part of 'perf report' conversion to C + elfutils 2009-05-26 13:52:53 +02:00
command-list.txt perf_counter: First part of 'perf report' conversion to C + elfutils 2009-05-26 13:52:53 +02:00
design.txt perf_counter: Documentation update 2009-06-04 13:20:12 +02:00
perf.c perf_counter tools: Make source code headers more coherent 2009-06-02 23:37:05 +02:00
perf.h perf_counter: Separate out attr->type from attr->config 2009-06-06 11:37:22 +02:00