Lines Matching +full:higher +full:- +full:than +full:- +full:threshold

1 .. SPDX-License-Identifier: GPL-2.0
13 :Date: 2019-03-06
16 ------------
24 --------------
39 ----------
46 For a non-VHE host this attribute will exclude EL2 as we consider the
55 ----------------------------
59 The KVM host may run at EL0 (userspace), EL1 (non-VHE kernel) and EL2 (VHE
60 kernel or non-VHE hypervisor).
65 exclusively rely on the PMU's hardware exception filtering - therefore we
67 performed differently on VHE and non-VHE systems.
69 For non-VHE systems we exclude EL2 for exclude_host - upon entering and
79 non-VHE guest however please note that EL2 is never counted within a guest.
83 --------
85 On non-VHE hosts we enable/disable counters on the entry/exit of host/guest
86 transition at EL2 - however there is a period of time between
99 --------
102 implementation is cpu-dependent.
106 This targets specifically self-monitoring tasks in order to reduce the overhead
109 How-to
110 ------
118 .. code-block:: sh
133 and perf_evsel__read() functions. See `tools/lib/perf/tests/test-evsel.c`_ for
137 ---------------------------
143 Have a look at `tools/perf/arch/arm64/tests/user-events.c`_ for an example. It
147 .. code-block:: sh
149 perf test -v user
152 --------------------------------------
153 The user can request either a 32-bit (config1:0 == 0) or 64-bit (config1:0 == 1)
155 if a 64-bit counter is requested and the hardware doesn't support 64-bit
157 access. If a 32-bit counter is requested on hardware with 64-bit counters, then
158 userspace must treat the upper 32-bits read from the counter as UNKNOWN. The
163 .. _tools/perf/arch/arm64/tests/user-events.c:
164 …rnel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/tools/perf/arch/arm64/tests/user-events.c
165 .. _tools/lib/perf/tests/test-evsel.c:
166 …//git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/tools/lib/perf/tests/test-evsel.c
168 Event Counting Threshold
172 --------
175 events whose count meets a specified threshold condition. For example if
176 threshold_compare is set to 2 ('Greater than or equal'), and the
177 threshold is set to 2, then the PMU counter will now only increment by
181 To increment by 1 after passing the threshold condition instead of the
185 How-to
186 ------
190 .. list-table::
191 :header-rows: 1
193 * - Parameter
194 - Description
195 * - threshold
196 - Value to threshold the event by. A value of 0 means that
198 * - threshold_compare
199 - | Comparison function to use, with the following values supported:
201 | 0: Not-equal
203 | 2: Greater-than-or-equal
204 | 3: Less-than
205 * - threshold_count
206 - If this is set, count by 1 after passing the threshold condition
209 The threshold, threshold_compare and threshold_count values can be
212 .. code-block:: sh
214 perf stat -e stall_slot/threshold=2,threshold_compare=2/ \
215 -e dtlb_walk/threshold=10,threshold_compare=3,threshold_count/
219 every cycle where the number of dtlb walks were less than 10.
221 The maximum supported threshold value can be read from the caps of each
224 .. code-block:: sh
230 If a value higher than this is given, then opening the event will result
232 for threshold is limited to 12 bits, and the Perf tool will refuse to
233 parse higher values.
236 0, and attempting to set a threshold value will also result in an error.