aboutsummaryrefslogtreecommitdiffstats
path: root/tools/perf
diff options
context:
space:
mode:
authorRobert Richter <robert.richter@amd.com>2012-08-07 13:43:16 -0400
committerArnaldo Carvalho de Melo <acme@redhat.com>2012-08-08 11:42:21 -0400
commit2055fdaf8703d3101b12e0d9b7cbceaeabe35c17 (patch)
treeb7ba58e815f717efeba03ab92fb40ab9f11b0d47 /tools/perf
parent75bc5ca89827fe3f2399321b2920a30bcf658049 (diff)
perf list: Document precise event sampling for AMD IBS
Updating man perf-list. Signed-off-by: Robert Richter <robert.richter@amd.com> Cc: Ingo Molnar <mingo@kernel.org> Link: http://lkml.kernel.org/r/1344361396-7237-7-git-send-email-robert.richter@amd.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf')
-rw-r--r--tools/perf/Documentation/perf-list.txt42
1 files changed, 30 insertions, 12 deletions
diff --git a/tools/perf/Documentation/perf-list.txt b/tools/perf/Documentation/perf-list.txt
index 232be519580a..d1e39dc8c810 100644
--- a/tools/perf/Documentation/perf-list.txt
+++ b/tools/perf/Documentation/perf-list.txt
@@ -20,20 +20,38 @@ EVENT MODIFIERS
20--------------- 20---------------
21 21
22Events can optionally have a modifer by appending a colon and one or 22Events can optionally have a modifer by appending a colon and one or
23more modifiers. Modifiers allow the user to restrict when events are 23more modifiers. Modifiers allow the user to restrict the events to be
24counted with 'u' for user-space, 'k' for kernel, 'h' for hypervisor. 24counted. The following modifiers exist:
25Additional modifiers are 'G' for guest counting (in KVM guests) and 'H' 25
26for host counting (not in KVM guests). 26 u - user-space counting
27 k - kernel counting
28 h - hypervisor counting
29 G - guest counting (in KVM guests)
30 H - host counting (not in KVM guests)
31 p - precise level
27 32
28The 'p' modifier can be used for specifying how precise the instruction 33The 'p' modifier can be used for specifying how precise the instruction
29address should be. The 'p' modifier is currently only implemented for 34address should be. The 'p' modifier can be specified multiple times:
30Intel PEBS and can be specified multiple times: 35
31 0 - SAMPLE_IP can have arbitrary skid 36 0 - SAMPLE_IP can have arbitrary skid
32 1 - SAMPLE_IP must have constant skid 37 1 - SAMPLE_IP must have constant skid
33 2 - SAMPLE_IP requested to have 0 skid 38 2 - SAMPLE_IP requested to have 0 skid
34 3 - SAMPLE_IP must have 0 skid 39 3 - SAMPLE_IP must have 0 skid
40
41For Intel systems precise event sampling is implemented with PEBS
42which supports up to precise-level 2.
43
44On AMD systems it is implemented using IBS (up to precise-level 2).
45The precise modifier works with event types 0x76 (cpu-cycles, CPU
46clocks not halted) and 0xC1 (micro-ops retired). Both events map to
47IBS execution sampling (IBS op) with the IBS Op Counter Control bit
48(IbsOpCntCtl) set respectively (see AMD64 Architecture Programmer’s
49Manual Volume 2: System Programming, 13.3 Instruction-Based
50Sampling). Examples to use IBS:
35 51
36The PEBS implementation now supports up to 2. 52 perf record -a -e cpu-cycles:p ... # use ibs op counting cycles
53 perf record -a -e r076:p ... # same as -e cpu-cycles:p
54 perf record -a -e r0C1:p ... # use ibs op counting micro-ops
37 55
38RAW HARDWARE EVENT DESCRIPTOR 56RAW HARDWARE EVENT DESCRIPTOR
39----------------------------- 57-----------------------------
@@ -97,4 +115,4 @@ SEE ALSO
97linkperf:perf-stat[1], linkperf:perf-top[1], 115linkperf:perf-stat[1], linkperf:perf-top[1],
98linkperf:perf-record[1], 116linkperf:perf-record[1],
99http://www.intel.com/Assets/PDF/manual/253669.pdf[Intel® 64 and IA-32 Architectures Software Developer's Manual Volume 3B: System Programming Guide], 117http://www.intel.com/Assets/PDF/manual/253669.pdf[Intel® 64 and IA-32 Architectures Software Developer's Manual Volume 3B: System Programming Guide],
100http://support.amd.com/us/Processor_TechDocs/24593.pdf[AMD64 Architecture Programmer’s Manual Volume 2: System Programming] 118http://support.amd.com/us/Processor_TechDocs/24593_APM_v2.pdf[AMD64 Architecture Programmer’s Manual Volume 2: System Programming]