[BUG] perf_event: inst_retired:any_p:c=16:i=1 is not equivalent to cpu_clk_unhalted:thread_p

From: Stephane Eranian
Date: Tue Jan 18 2011 - 13:05:31 EST


Peter,

commit 7639dae0ca11038286bbbcda05f2bef601c1eb8d
Author: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
Date: Tue Dec 14 21:26:40 2010 +0100

perf, x86: Provide a PEBS capable cycle event



Even with the transformation cmask=16:invert=1, you are not quite
counting the same thing.

inst_retired:any_p:c=16:i=1 is different from cpu_clk_unhalted:thread_p

Simply because, I think, this form of inst_retired counts in HALTED state.

This automatic transformation would be "okay" in per-thread mode, but
not in system-wide mode. It should not be done under the cover. I would
rather have this option at the user level.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/