Lines Matching full:events
8 several hardware counters, counting events like how many cpu cycles have happened, how many
11 The Linux kernel wraps these hardware counters into hardware perf events. In addition, the Linux
12 kernel also provides hardware independent software events and tracepoint events. The Linux kernel
13 exposes all events to userspace via the perf_event_open system call, which is used by simpleperf.
17 The stat command gives a summary of how many events have happened in the profiled processes in a
27 4. Each time a given number of events happen, the kernel dumps a sample to the mapped buffers.
66 The list command lists all events available on the device. Different devices may support different
67 events because they have different hardware and kernels.
71 List of hw-cache events:
74 List of hardware events:
78 List of software events:
84 On ARM/ARM64, the list command also shows a list of raw events, they are the events supported by
85 the ARM PMU on the device. The kernel has wrapped part of them into hardware events and hw-cache
86 events. For example, raw-cpu-cycles is wrapped into cpu-cycles, raw-instruction-retired is wrapped
87 into instructions. The raw events are provided in case we want to use some events supported on the
93 we can select which events to use, which processes/threads to monitor, how long to monitor and the
97 # Stat using default events (cpu-cycles,instructions,...), and monitor process 7394 for 10 seconds.
114 ### Select events to stat
116 We can select which events to use via -e.
126 When running the stat command, if the number of hardware events is larger than the number of
127 hardware counters available in the PMU, the kernel shares hardware counters between events, so each
128 event is only monitored for part of the total time. As a result, the number of events shown is
129 smaller than the number of events that actually happened. The following is an example.
147 simpleperf W cmd_stat.cpp:946] It seems the number of hardware events are more than the number of
149 multiplexing. As a result, events are not counted all the time processes
154 In the example above, we monitor 7 events. Each event is only monitored part of the total time.
158 enough hardware counters to count hardware events at the same time. If not, it prints a warning.
161 available counters on each CPU. Then don't monitor more hardware events than counters available.
175 When counter multiplexing happens, there is no guarantee of which events will be monitored at
176 which time. If we want to ensure some events are always monitored at the same time, we can use
195 simpleperf W cmd_stat.cpp:946] It seems the number of hardware events are more than the number of
305 option is used, stat cmd outputs an event count for each core. It can be used to see how events
308 monitored thread on each core. When a thread is in running state, perf events on all cores are
336 ### Monitor different events on different cores
338 Android devices usually have big and little cores. Different cores may support different events.
339 Therefore, we may want to monitor different events on different cores. We can do this using
340 the `--cpu` option. The `--cpu` option selects the cores on which to monitor events. A `--cpu`
341 option affects all the following events until meeting another `--cpu` option. The first `--cpu`
342 option also affects all events before it. Following are some examples:
360 information like the time at which the sample was generated, the number of events since last
363 By passing options, we can select which events to use, which processes/threads to monitor,
373 ### Select events to record
376 events via -e.
422 means dumping one record whenever 10000 events happen.
428 # Record with sample period 100000: sample 1 time every 100000 events.
516 threads, blocked in IO or waiting for some events). To support this, simpleperf added a
595 column is Overhead, which shows the percentage of events inside the current sample entry in total
596 events. As the perf event is cpu-cycles, the overhead is the percentage of CPU cycles used in each