1LIBPFM(3) Linux Programmer's Manual LIBPFM(3)
2
3
4
6 libpfm_intel_x86_arch - support for Intel X86 architectural PMU
7
9 #include <perfmon/pfmlib.h>
10
11 PMU name: ix86arch
12 PMU desc: Intel X86 architectural PMU
13
14
16 The library supports any processor implementing the Intel architectural
17 PMU. This is a minimal PMU with a variable number of counters but pre‐
18 defined set of events. It is implemented in all recent processors
19 starting with Intel Core Duo/Core Solo.
20
21 It acts as a default PMU support in case the library is run on a very
22 recent processor for which the specific support has not yet been imple‐
23 mented.
24
26 The following modifiers are supported on Intel architectural PMU:
27
28 u Measure at user level which includes privilege levels 1, 2, 3.
29 This corresponds to PFM_PLM3. This is a boolean modifier.
30
31 k Measure at kernel level which includes privilege level 0. This
32 corresponds to PFM_PLM0. This is a boolean modifier.
33
34 i Invert the meaning of the event. The counter will now count
35 cycles in which the event is not occurring. This is a boolean
36 modifier
37
38 e Enable edge detection, i.e., count only when there is a state
39 transition. This is a boolean modifier.
40
41 c Set the counter mask value. The mask acts as a threshold. The
42 counter will count the number of cycles in which the number of
43 occurrences of the event is greater or equal to the threshold.
44 This is an integer modifier with values in the range [0:255].
45
46 t Measure on both threads at the same time assuming hyper-thread‐
47 ing is enabled. This modifier requires at least version 3 of the
48 architectural PMU. This is a boolean modifier.
49
50
52 Stephane Eranian <eranian@gmail.com>
53
54
55
56 September, 2009 LIBPFM(3)