Shark, Apple's profiler which let you configure custom performance counters, is no longer supported in OSX Mountain Lion since it can't run a 32-bit kernel. Instruments.app, Apple's replacement for Shark, doesn't seem to support reading performance counters such as L1 cache hits/misses**. Is there anyway to actually setup and read performance counters on OS X? Even if there is no application, is there some user-land API to do this?
**Instruments.app does seem to have an interface for performance counters, but on my Retina MacBook Pro, the PM Events window lists no events, and indicates "Device: Unknown." Are there any other alternatives to Instruments?
Yes. It's there, but difficult to find and clumsy to use (ver.4.5).
cmd
+L
to display the Librarycmd
+shf
+P
-- you are presented with the PM Events floating window.cmd
+I
to display the info popover of the "Counters" instrument.+
buttonYou will see the results in Instruments' table columns. Of course, there are many events you could record -- So find the L1 cache events you are interested in and add them instead of divides.
Also be prepared for system freezes (one happened while writing this up).