RE: [PATCH V5 4/8] perf/x86/intel/uncore: add new data structures for free running counters

From: Liang, Kan
Date: Fri Jan 19 2018 - 13:01:10 EST


> On Fri, Jan 19, 2018 at 9:53 AM, Liang, Kan <kan.liang@xxxxxxxxx> wrote:
> >> On Fri, Jan 19, 2018 at 03:15:00PM +0000, Liang, Kan wrote:
> >> > >
> >> > > On Thu, Jan 18, 2018 at 05:43:10PM +0000, Liang, Kan wrote:
> >> > > > In the uncore document, there is no event-code assigned to free
> >> > > > running
> >> > > counters.
> >> > > > Some events need to be defined to indicate the free running
> counters.
> >> > > > The events are encoded as event-code + umask-code.
> >> > > >
> >> > > > The event-code for all free running counters is 0xff, which is
> >> > > > the same as the fixed counters.
> >> > >
> >> > > Is it possible to count the same things using the generic counters?
> >> > >
> >> >
> >> > Yes, there are events for generic counters to count bandwidth and
> >> > utilization.
> >> >
> >> > The reasons of introducing free running counters are
> >> > - To provide highly valuable information (bandwidth and utilization)
> >> > which most of the customers are interested in
> >> > - To save on the precious generic counters
> >>
> >> _IF_ the exact same counters are available on the GPs then we must
> >> use the same event code for them and use event scheduling to place
> >> them on fixed/free-running counters when possible.
> >
> > OK. I will check if there are the exact same events on GPs for those
> > free running counters.
> >
> You can measure the bandwidth and utilization on the GP. I am doing it all
> the time.

Oh, think a bit more.
I think we cannot do the same thing as we did for CPU PMU's fixed counters.

The counters here are free running counters. They cannot be start/stop.

Thanks,
Kan

>
> > Thanks,
> > Kan
> >
> >>
> >> That's what we do for the CPU PMU's fixed counters too.
> >>
> >> Don't invent magic event codes just because.