Hi all,
I am planning to use the perf tool and maybe directly the
perf_event_open system call from code to get access to uncore counters .
I am working on a dual socket NUMA platform with 2 Intel Xeon X5650 cpus
(Westmer-EP familly and 06_2CH cpu number). I started my experiments
with the UNC_QMC_NORMAL_READS.ANY counter only. I want to measure memory
traffic for each one of my 2 memory controllers.
In this context I got the following questions without being able to
answer to them:
+ It seems impossible to have per thread mode with this uncore event. I
have to specify the -a or the -C option to the perf tool to get some
results. Looking at the perf_event_open system call happening behind the
scene, and calling it myself from code, I noticed that the call
succeeded only when the pid parameter is -1 and the cpu one is different
from -1. I guess that per thread counting is not available for uncore
events because it's impossible for the hardware to measure only the
uncore events generated by a given thread (because by definition uncore
is shared by all the cores associated to it) Am I right ?
+ How the cpu parameter to perf_event_open should be interpreted for
uncore events ? On my platform I have 12 cores (my two cpus are hexa
core ones and hyper threading is disabled). Does providing a cpu value
of 5 to the system call along with an uncore event means counting the
events on the uncore associated to the core 5 ?
Thanks for your inputs,
--
Manu
--
To unsubscribe from this list: send the line "unsubscribe linux-perf-users" in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html