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.

Back to Unofficial perf_event Page