Re: [PATCH 1/6] perf, x86: Making hardware events tranlations sysfsavailable

From: Jiri Olsa
Date: Fri Jun 15 2012 - 03:43:21 EST


On Fri, Jun 15, 2012 at 09:32:20AM +0200, Stephane Eranian wrote:
> On Fri, Jun 15, 2012 at 9:29 AM, Jiri Olsa <jolsa@xxxxxxxxxx> wrote:
> > On Thu, Jun 14, 2012 at 11:36:51PM +0200, Stephane Eranian wrote:
> >> On Thu, Jun 14, 2012 at 11:09 PM, Peter Zijlstra <a.p.zijlstra@xxxxxxxxx> wrote:
> >> > On Thu, 2012-06-14 at 22:38 +0200, Jiri Olsa wrote:
> >> >> Making hardware events tranlations available throught the sysfs.
> >> >> Adding 'events' group attribute under the sysfs x86 PMU record
> >> >> with attribute/file for each hardware event:
> >> >>
> >> >>   # ls  /sys/devices/cpu/events/
> >> >>   branch_instructions
> >> >>   branch_misses
> >> >>   bus_cycles
> >> >>   cache_misses
> >> >>   cache_references
> >> >>   cycles
> >> >>   instructions
> >> >>   ref_cycles
> >> >>   stalled_cycles_backend
> >> >>   stalled_cycles_frontend
> >> >>
> >> >> The file - ID mappings is:
> >> >>
> >> >>   file                      hw id
> >> >>   ----------------------------------------------------------------
> >> >>   cycles                    PERF_COUNT_HW_CPU_CYCLES
> >> >>   instructions              PERF_COUNT_HW_INSTRUCTIONS
> >> >>   cache_references          PERF_COUNT_HW_CACHE_REFERENCES
> >> >>   cache_misses              PERF_COUNT_HW_CACHE_MISSES
> >> >>   branch_instructions       PERF_COUNT_HW_BRANCH_INSTRUCTIONS
> >> >>   branch_misses             PERF_COUNT_HW_BRANCH_MISSES
> >> >>   bus_cycles                PERF_COUNT_HW_BUS_CYCLES
> >> >>   stalled_cycles_frontend   PERF_COUNT_HW_STALLED_CYCLES_FRONTEND
> >> >>   stalled_cycles_backend    PERF_COUNT_HW_STALLED_CYCLES_BACKEND
> >> >>   ref_cycles                PERF_COUNT_HW_REF_CPU_CYCLES
> >> >>
> >> >> Each attribute/file contains HW ID event translation for the currently
> >> >> running CPU model
> >> >>
> >> >>   # cat /sys/devices/cpu/events/instructions
> >> >>   0xc0
> >> >
> >> > Why not have it consistent with the stuff done for uncore where events
> >> > read: 'event=0xc0', ie the regular field=value stuff.
> >> >
> >> Yes, you want that. Because those events may need more than a code.
> >> You want full syntax capability. So return a string.
> >
> > humm... right :)
> >
> > how about the term name 'event=...', could I always assume it's 'event',
> > or do we want some arch specific connection for that?
> >
> You should not assume anything. You grab the string from sysfs and put it
> through your regular parser. It could have arch specific terms in it. That's
> how I suspect this is done for uncore.

I was talking about the kernel part

jirka
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/