perf event, x86: Use better stalled cycles metric
Subsystems (2)
Commit-ID: 8a850cadca0e387c87a0911a61e99fd66aeb57ec Gitweb: http://git.kernel.org/tip/8a850cadca0e387c87a0911a61e99fd66aeb57ec Author: Ingo Molnar <[email protected]> AuthorDate: Thu, 28 Apr 2011 11:16:44 +0200 Committer: Ingo Molnar <[email protected]> CommitDate: Thu, 28 Apr 2011 08:39:33 +0200
perf event, x86: Use better stalled cycles metric
Use the UOPS_EXECUTED.*,c=1,i=1 event on Intel CPUs - it is a rather good indicator of CPU execution stalls, more sensitive and more inclusive than the 0xa2 resource stalls event (which does not count nearly as many stall types).
Cc Peter Zijlstra <[email protected]>
Cc Arnaldo Carvalho de Melo <[email protected]>
Cc Frederic Weisbecker <[email protected]>
Signed-off-by Ingo Molnar <[email protected]>
--- arch/x86/kernel/cpu/perf_event_intel.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-)
arch/x86/kernel/cpu/perf_event_intel.c +2 -2
@@ -1413,8 +1413,8 @@ static __init int intel_pmu_init(void) x86_pmu.enable_all = intel_pmu_nhm_enable_all; x86_pmu.extra_regs = intel_nehalem_extra_regs; -/* Install the stalled-cycles event: 0xff: All reasons, 0xa2: Resource stalls */ - intel_perfmon_event_map[PERF_COUNT_HW_STALLED_CYCLES ] =0xffa2 ; +/* Install the stalled-cycles event: UOPS_EXECUTED.CORE_ACTIVE_CYCLES,c=1,i=1 */ + intel_perfmon_event_map[PERF_COUNT_HW_STALLED_CYCLES ] =0x1803fb1 ;if (ebx &0x40 ) {/*