|About||Articles||How to contact me||Projects||Site Map|
Please see http://wiki.FreeBSD.org/PmcTools.
A list of related projects in academia, industry and the open-source world.
FreeBSD has a number of utilities that could be used for performance measurement.
There seem to be a number of open-source efforts that we could refer to for our work.
The Athlon processor from AMD has support for counting hardware events like cache misses and TLB misses. XXX: Fill in URL.
Nearly every major system's manufacturer offers good system profiling support:
The Digital Continuous Profiling Infrastructure paper describes the use of hardware performance counters on the DEC Alpha chip to do low-overhead profiling of production systems.
Related tools---mostly getting the development tools in -ports to use the new features introduced by this code.
|DynInst||-||The DynInst library allows you to attach code snippets to a running executable. We could use this to instrument processes with performance measurement code.|
|PAPI||-||The PAPI library provides a cross-platform abstraction to hardware performance counters. Make a port of this library to FreeBSD.|
|GCC -finstrument-functions||-||On the i386 and similar platforms, use GCC's -finstrument-functions hook to use hwpmc(4) and RDPMC instructions to generate PMC based profiles.|
|Profiling (-p) with PMC interrupts||-||Since hwpmc(4) allows one to generate SIGPROF interrupts whenever process-virtual counters overflow, use these to provide process-specific statistical profiling driven by PMC counts.|
|Kprof or other profile visualizer tools||-||Hook up hwpmc(4) to a snazzy visualization tool for profile data.|