On Thu, Apr 16, 2020 at 09:02:54AM -0700, Ian Rogers wrote: > On Thu, Apr 16, 2020 at 2:55 AM Jiri Olsa <jolsa@xxxxxxxxxx> wrote: > > > > On Wed, Apr 15, 2020 at 11:35:51PM -0700, Ian Rogers wrote: > > > From: Stephane Eranian <eranian@xxxxxxxxxx> > > > > > > This patch links perf with the libpfm4 library if it is available > > > and NO_LIBPFM4 isn't passed to the build. The libpfm4 library > > > contains hardware event tables for all processors supported by > > > perf_events. It is a helper library that helps convert from a > > > symbolic event name to the event encoding required by the > > > underlying kernel interface. This library is open-source and > > > available from: http://perfmon2.sf.net. > > > > > > With this patch, it is possible to specify full hardware events > > > by name. Hardware filters are also supported. Events must be > > > specified via the --pfm-events and not -e option. Both options > > > are active at the same time and it is possible to mix and match: > > > > > > $ perf stat --pfm-events inst_retired:any_p:c=1:i -e cycles .... > > > > > > Signed-off-by: Stephane Eranian <eranian@xxxxxxxxxx> > > > Reviewed-by: Ian Rogers <irogers@xxxxxxxxxx> > > > > # perf list > > ... > > perf_raw pfm-events > > r0000 > > [perf_events raw event syntax: r[0-9a-fA-F]+] > > > > skl pfm-events > > UNHALTED_CORE_CYCLES > > [Count core clock cycles whenever the clock signal on the specific core is running (not halted)] > > UNHALTED_REFERENCE_CYCLES > > > > please add ':' behind the '* pfm-events' label > > Thanks! Not sure I follow here. skl here is the pmu. pfm-events is > here just to make it clearer these are --pfm-events. The event is > selected with '--pfm-events UNHALTED_CORE_CYCLES'. Will putting > skl:pfm-events here make it look like that is part of the event > encoding? aah I might have misunderstood the output here then, we have preceeding output like: cache: l1d.replacement [L1D data line replacements] so I thought the 'skl pfm-events' is just a label how about we use the first current label in the middle like: # perf list List of pre-defined events (to be used in -e): current events stuff List of pfm events (to be used in --pfm-xxx): pfm events stuff or maybe put it under 'perf list --pfm', thoughts? jirka