Kernel Event Changes
The perf_event interface tries to provide a set of "generic" events
for use by casual users, so they do not have to look up the values
for events in the architectural manuals.
By being in the kernel, rather than in a user-library or file, the
user depends on the events being correct. Until recently (when)
it was not even possible to know what events were being chosen
w/o doing source code inspection of the kernel. Now the event
definitions can be found under /sys, but they still change.
Unlike fixing an event in a user library like PAPI, it takes a long
time for fixed event definitions to get to a user. By the time
it reaches a distro kernel, and then the sysadmin forces a reboot,
it might be months to year. If the events are in userspace a user
can quickly recompile a definition library in their tools quickly
and without sysadmin interference.
What follows are some event definitions that have had to be fixed
over the years.
- Uncore UPI event (recent)
- Power event rename (recent)
- ARM branches?
- AMD branches 2.6.34?
Back to Unofficial perf_event Page