All of lore.kernel.org
 help / color / mirror / Atom feed
* [RFC 0/6] perf, tool: Allow to use hw events in PMU syntax
@ 2012-06-14 20:38 Jiri Olsa
  2012-06-14 20:38 ` [PATCH 1/6] perf, x86: Making hardware events tranlations sysfs available Jiri Olsa
                   ` (5 more replies)
  0 siblings, 6 replies; 17+ messages in thread
From: Jiri Olsa @ 2012-06-14 20:38 UTC (permalink / raw)
  To: acme, a.p.zijlstra, mingo, paulus, cjashfor, fweisbec, eranian
  Cc: linux-kernel

hi,
here's the change to make following syntax available:
  perf stat -e cpu/event=instructions/u ls

this is identical to:
  perf stat -e instructions:u ls

The patch 1 makes PERF_TYPE_HARDWARE events translations available
by the sysfs 'events' group attribute under the PMU record.

Once we hit the PERF_TYPE_HARDWARE event mnemonic within the
PMU event term parsing like:
   'event=cycles'
we translate the 'cycles' string into specific PERF_TYPE_HARDWARE
translation and assign this value to the 'event' term value.

So given that:
  $ cat /sys/devices/cpu/events/instructions
  0xc0

following examples are identical:
  perf stat -e cpu/event=0xc0/u ls
  perf stat -e cpu/event=instructions/u ls

It feels like a hack since it relies on:
  - kernel does no more than translating the 'cycles' value and putting it
    to the 'attr.config' - I'm not sure this is allways true.
  - user uses this translation with terms that fill the attr.config same way
    as kernel does, like for 'event':
      $ cat /sys/devices/cpu/format/event
      config:0-7

    This could be ensured by perf tool.. but it smells like CPU specific again.

note, it's not tested much.. ;)

attached patches:
  1/6 perf, x86: Making hardware events tranlations sysfs available
  2/6 perf tools: Fix generation of pmu list
  3/6 perf, tool: Properly free format data
  4/6 perf, tool: Add events support for pmu
  5/6 perf, tool: event parsing - split PE_VALUE_SYM to SW and HW tokens
  6/6 perf, tool: Support translate terms for hw events

thoughts? ;)
jirka
---
 arch/x86/kernel/cpu/perf_event.c |   44 +++++++++
 tools/perf/util/parse-events.c   |    8 ++-
 tools/perf/util/parse-events.h   |    3 +
 tools/perf/util/parse-events.l   |    2 +-
 tools/perf/util/parse-events.y   |   26 +++++-
 tools/perf/util/pmu.c            |  179 ++++++++++++++++++++++++++++++++-----
 tools/perf/util/pmu.h            |    2 +
 7 files changed, 233 insertions(+), 31 deletions(-)

^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2012-07-06 10:59 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-06-14 20:38 [RFC 0/6] perf, tool: Allow to use hw events in PMU syntax Jiri Olsa
2012-06-14 20:38 ` [PATCH 1/6] perf, x86: Making hardware events tranlations sysfs available Jiri Olsa
2012-06-14 21:09   ` Peter Zijlstra
2012-06-14 21:36     ` Stephane Eranian
2012-06-15  7:29       ` Jiri Olsa
2012-06-15  7:32         ` Stephane Eranian
2012-06-15  7:43           ` Jiri Olsa
2012-06-15  7:46             ` Stephane Eranian
2012-06-15  9:26               ` Peter Zijlstra
2012-06-14 20:38 ` [PATCH 2/6] perf tools: Fix generation of pmu list Jiri Olsa
2012-07-06 10:58   ` [tip:perf/core] " tip-bot for Robert Richter
2012-06-14 20:38 ` [PATCH 3/6] perf, tool: Properly free format data Jiri Olsa
2012-06-14 20:38 ` [PATCH 4/6] perf, tool: Add events support for pmu Jiri Olsa
2012-06-29 16:36   ` Arnaldo Carvalho de Melo
2012-06-29 16:43     ` Jiri Olsa
2012-06-14 20:38 ` [PATCH 5/6] perf, tool: event parsing - split PE_VALUE_SYM to SW and HW tokens Jiri Olsa
2012-06-14 20:38 ` [PATCH 6/6] perf, tool: Support translate terms for hw events Jiri Olsa

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.