Messages in this thread | | | Subject | Re: [PATCH V6 0/13] perf: Intel uncore pmu counting support | From | Peter Zijlstra <> | Date | Thu, 21 Jun 2012 13:40:53 +0200 |
| |
On Thu, 2012-06-21 at 11:13 +0200, Stephane Eranian wrote:
> >>> How about treat the 'cpu' parameter for uncore event as socket id instead > >>> of cpu id? > >>> > >> But that does not address the use case of Peter, i.e., no cpu parameter passed. > >> Looks like sysfs might be the only way to do this in a portable manner. > >> > > It does. For example, on a dual socket system, perf can only register uncore > > counter with 'cpu' parameter is equal to 0 or 1. This method is hacky, but it > > requires minimal change for the kernel and perf tool. > > > I was saying, I don't want to have to pass -C x with -a and yet have perf stat > only instantiate the event once per socket. I think that's what PeterZ was > asking about.
What Zheng is saying is that -a will iterate [0..nr_cpus), but since we're interpreting the sys_perf_event_open(.cpu) argument as node, we'll fail the syscall with -EINVAL or so for .cpu >= nr_node_ids.
This way, we'll only create one counter per node.
I would work, but its not pretty since we still don't know what we're iterating.
| |