Learn how easy it is to sync an existing GitHub or Google Code repo to a SourceForge project! See Demo

Close

Commit [46a673] Maximize Restore History

Fix sample attribution problem when using multiple events

A serious bug was found that affects operf profiling with
multiple events. Samples for an event may be incorrectly
attributed to another event. For example, profiling on
a Sandybridge laptop with CPU_CLK_UNHALTED and INST_RETIRED
events produces the following summary counts from opreport:

CPU_CLK_UNHALTED |INST_RETIRED |
samples| %| samples| %|
------------------------------------
32412 100.000 20104 100.000 foo

Using operf to produce separate profiles for these two events
results in these sample counts:

CPU_CLK_UNHALTED |
samples| %|
------------------
18962 100.000 foo

INST_RETIRED |
samples| %|
------------------
33464 100.000 foo

This patch fixes the problem.

Signed-off-by: Maynard Johnson <maynardj@us.ibm.com>

Maynard Johnson Maynard Johnson 2013-12-20

changed libperf_events/operf_utils.cpp
libperf_events/operf_utils.cpp Diff Switch to side-by-side view
Loading...