| .. | .. |
|---|
| 36 | 36 | Print how named events are resolved internally into perf events, and also |
|---|
| 37 | 37 | any extra expressions computed by perf stat. |
|---|
| 38 | 38 | |
|---|
| 39 | +--deprecated:: |
|---|
| 40 | +Print deprecated events. By default the deprecated events are hidden. |
|---|
| 41 | + |
|---|
| 39 | 42 | [[EVENT_MODIFIERS]] |
|---|
| 40 | 43 | EVENT MODIFIERS |
|---|
| 41 | 44 | --------------- |
|---|
| .. | .. |
|---|
| 55 | 58 | S - read sample value (PERF_SAMPLE_READ) |
|---|
| 56 | 59 | D - pin the event to the PMU |
|---|
| 57 | 60 | W - group is weak and will fallback to non-group if not schedulable, |
|---|
| 58 | | - only supported in 'perf stat' for now. |
|---|
| 61 | + e - group or event are exclusive and do not share the PMU |
|---|
| 59 | 62 | |
|---|
| 60 | 63 | The 'p' modifier can be used for specifying how precise the instruction |
|---|
| 61 | 64 | address should be. The 'p' modifier can be specified multiple times: |
|---|
| .. | .. |
|---|
| 112 | 115 | |
|---|
| 113 | 116 | perf stat -e r1a8 -a sleep 1 |
|---|
| 114 | 117 | perf record -e r1a8 ... |
|---|
| 118 | + |
|---|
| 119 | +It's also possible to use pmu syntax: |
|---|
| 120 | + |
|---|
| 121 | + perf record -e r1a8 -a sleep 1 |
|---|
| 122 | + perf record -e cpu/r1a8/ ... |
|---|
| 123 | + perf record -e cpu/r0x1a8/ ... |
|---|
| 115 | 124 | |
|---|
| 116 | 125 | You should refer to the processor specific documentation for getting these |
|---|
| 117 | 126 | details. Some of them are referenced in the SEE ALSO section below. |
|---|
| .. | .. |
|---|
| 173 | 182 | Other PMUs and global measurements are normally root only. |
|---|
| 174 | 183 | Some event qualifiers, such as "any", are also root only. |
|---|
| 175 | 184 | |
|---|
| 176 | | -This can be overriden by setting the kernel.perf_event_paranoid |
|---|
| 185 | +This can be overridden by setting the kernel.perf_event_paranoid |
|---|
| 177 | 186 | sysctl to -1, which allows non root to use these events. |
|---|
| 178 | 187 | |
|---|
| 179 | 188 | For accessing trace point events perf needs to have read access to |
|---|
| .. | .. |
|---|
| 199 | 208 | also be supplied. For example: |
|---|
| 200 | 209 | |
|---|
| 201 | 210 | perf stat -C 0 -e 'hv_gpci/dtbp_ptitc,phys_processor_idx=0x2/' ... |
|---|
| 211 | + |
|---|
| 212 | +EVENT QUALIFIERS: |
|---|
| 213 | + |
|---|
| 214 | +It is also possible to add extra qualifiers to an event: |
|---|
| 215 | + |
|---|
| 216 | +percore: |
|---|
| 217 | + |
|---|
| 218 | +Sums up the event counts for all hardware threads in a core, e.g.: |
|---|
| 219 | + |
|---|
| 220 | + |
|---|
| 221 | + perf stat -e cpu/event=0,umask=0x3,percore=1/ |
|---|
| 222 | + |
|---|
| 202 | 223 | |
|---|
| 203 | 224 | EVENT GROUPS |
|---|
| 204 | 225 | ------------ |
|---|
| .. | .. |
|---|
| 244 | 265 | the first event (the leader) samples, and it only reads the values of the |
|---|
| 245 | 266 | other events in the group. |
|---|
| 246 | 267 | |
|---|
| 268 | +However, in the case AUX area events (e.g. Intel PT or CoreSight), the AUX |
|---|
| 269 | +area event must be the leader, so then the second event samples, not the first. |
|---|
| 270 | + |
|---|
| 247 | 271 | OPTIONS |
|---|
| 248 | 272 | ------- |
|---|
| 249 | 273 | |
|---|