Links to reported research and other open-source projects using CPU PMCs:
Under Linux there are three projects that use in-CPU performance counters for performance measurements:
There is also an additional older project: Rabbit, from the AMES Lab.
NetBSD's implementation of a PMC API: NetBSD/pmc(3):
http://www.daemon-systems.org/man/pmc.9.html (This link is broken). Possible link from archive.org: https://web.archive.org/web/20180218094454/https://www.daemon-systems.org/man/pmc.9.html
Solaris™ has a CDC(3EXT) API for accessing CPU performance counters. It supports the CPUs that Solaris™ runs on.
These tools use build over the lower layers and provide visualization and easy to use interfaces: