xref: /linux/Documentation/ABI/testing/sysfs-bus-event_source-devices-events (revision 1260ed77798502de9c98020040d2995008de10cc)
1 What:		/sys/devices/cpu/events/
2 		/sys/devices/cpu/events/branch-misses
3 		/sys/devices/cpu/events/cache-references
4 		/sys/devices/cpu/events/cache-misses
5 		/sys/devices/cpu/events/stalled-cycles-frontend
6 		/sys/devices/cpu/events/branch-instructions
7 		/sys/devices/cpu/events/stalled-cycles-backend
8 		/sys/devices/cpu/events/instructions
9 		/sys/devices/cpu/events/cpu-cycles
10 
11 Date:		2013/01/08
12 
13 Contact:	Linux kernel mailing list <linux-kernel@vger.kernel.org>
14 
15 Description:	Generic performance monitoring events
16 
17 		A collection of performance monitoring events that may be
18 		supported by many/most CPUs. These events can be monitored
19 		using the 'perf(1)' tool.
20 
21 		The contents of each file would look like:
22 
23 			event=0xNNNN
24 
25 		where 'N' is a hex digit and the number '0xNNNN' shows the
26 		"raw code" for the perf event identified by the file's
27 		"basename".
28 
29 
30 What: /sys/bus/event_source/devices/<pmu>/events/<event>
31 Date: 2014/02/24
32 Contact:	Linux kernel mailing list <linux-kernel@vger.kernel.org>
33 Description:	Per-pmu performance monitoring events specific to the running system
34 
35 		Each file (except for some of those with a '.' in them, '.unit'
36 		and '.scale') in the 'events' directory describes a single
37 		performance monitoring event supported by the <pmu>. The name
38 		of the file is the name of the event.
39 
40 		As performance monitoring event names are case insensitive
41 		in the perf tool, the perf tool only looks for all lower
42 		case or all upper case event names in sysfs to avoid
43 		scanning the directory. It is therefore required the
44 		name of the event here is either completely lower or upper
45 		case, with no mixed-case characters. Numbers, '.', '_', and
46 		'-' are also allowed.
47 
48 		File contents:
49 
50 			<term>[=<value>][,<term>[=<value>]]...
51 
52 		Where <term> is one of the terms listed under
53 		/sys/bus/event_source/devices/<pmu>/format/ and <value> is
54 		a number is base-16 format with a '0x' prefix (lowercase only).
55 		If a <term> is specified alone (without an assigned value), it
56 		is implied that 0x1 is assigned to that <term>.
57 
58 		Examples (each of these lines would be in a separate file):
59 
60 			event=0x2abc
61 			event=0x423,inv,cmask=0x3
62 			domain=0x1,offset=0x8,starting_index=0xffff
63 			domain=0x1,offset=0x8,core=?
64 
65 		Each of the assignments indicates a value to be assigned to a
66 		particular set of bits (as defined by the format file
67 		corresponding to the <term>) in the perf_event structure passed
68 		to the perf_open syscall.
69 
70 		In the case of the last example, a value replacing "?" would
71 		need to be provided by the user selecting the particular event.
72 		This is referred to as "event parameterization". Event
73 		parameters have the format 'param=?'.
74 
75 What: /sys/bus/event_source/devices/<pmu>/events/<event>.unit
76 Date: 2014/02/24
77 Contact:	Linux kernel mailing list <linux-kernel@vger.kernel.org>
78 Description:	Perf event units
79 
80 		A string specifying the English plural numerical unit that <event>
81 		(once multiplied by <event>.scale) represents.
82 
83 		Example:
84 
85 			Joules
86 
87 What: /sys/bus/event_source/devices/<pmu>/events/<event>.scale
88 Date: 2014/02/24
89 Contact:	Linux kernel mailing list <linux-kernel@vger.kernel.org>
90 Description:	Perf event scaling factors
91 
92 		A string representing a floating point value expressed in
93 		scientific notation to be multiplied by the event count
94 		received from the kernel to match the unit specified in the
95 		<event>.unit file.
96 
97 		Example:
98 
99 			2.3283064365386962890625e-10
100 
101 		This is provided to avoid performing floating point arithmetic
102 		in the kernel.
103