On Thu, 04 Dec 2008 23:44:39 -0000 Thomas Gleixner <tglx@xxxxxxxxxxxxx> wrote: > Performance counters are special hardware registers available on most modern > CPUs. These register count the number of certain types of hw events: such > as instructions executed, cachemisses suffered, or branches mis-predicted, > without slowing down the kernel or applications. These registers can also > trigger interrupts when a threshold number of events have passed - and can > thus be used to profile the code that runs on that CPU. > > We'd like to announce a brand new implementation of performance counter > support for Linux. It is a very simple and extensible design that has the > potential to implement the full range of features we would expect from such > a subsystem. > > The Linux Performance Counter subsystem (implemented via the patches > posted in this announcement) provides an abstraction of performance counter > hardware capabilities. It provides per task and per CPU counters, and it > provides event capabilities on top of those. > > The code is far from complete - but the basic approach is already there > and stable. > > The biggest missing detail is lowlevel support for non-Intel CPUs and > older Intel CPUs - right now the code is implemented for Intel Core2 > (and later) Intel CPUs that have the PERFMON CPU feature. (see below > a wider list of missing/upcoming features) > > We are aware of the perfmon3 patchset that has been submitted to lkml > recently. Our patchset tries to achieve a similar end result, with > a fundamentally different (and we believe, superior :-) design: There's also the perfctr patchset, which has been available for a long time. I believe that established users of this sort of capability often access it via the supposed-to-be-cross-platform PAPI interface/library. Please cc perfctr-devel@xxxxxxxxxxxxxxxxxxxxx on emails related to this work. -- To unsubscribe from this list: send the line "unsubscribe linux-arch" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html