[PATCH 0/4] perf tools: Add support for IBS

From: Robert Richter
Date: Thu Dec 15 2011 - 12:30:13 EST


This patch series adds perf tool support for IBS. It is related to the
kernel patches I sent out recently.

IBS is implemented using dynamic pmu allocation. Thus, esp. event
selection and sample encoding requires handling of dynamically
generated pmu identifiers that can be queried in sysfs. For ibs there
exists 2 pmus:

/sys/bus/event_source/devices/ibs_op/type
/sys/bus/event_source/devices/ibs_fetch/type

Lin's patch implements a new syntax to specify events of dynamically
allocated pmus. This can be used to specify ibs events for perf
record, etc., for example:

perf record -e ibs_op:r0 -c 100000 -R -a <command>
perf record -e ibs_fetch:r0 -c 100000 -R -a <command>

With patch #2 dynamically generated pmu mappings are added to the
perf.data header. This information is required to decode samples and
to find the originating pmu it is comming from. Since the information
in sysfs may change we need to store it in the header.

A generic perl handler is added to process IBS events with perf
script. There was only support for tracepoints. The following perf
script commands can be used to collect and display IBS samples:

perf script ibs ibs_op <command>
perf script ibs ibs_fetch <command>
perf script record ibs ibs_op -c 500000 <command>
perf script report ibs
perf script record ibs ibs_op -c 500000 <command> | perf script report ibs

-Robert


Lin Ming (1):
perf tool: Parse general/raw events from sysfs

Robert Richter (3):
perf tools: Add pmu mappings to header information
perf script: Add generic perl handler to process events
perf script: Add script to collect and display IBS samples

tools/perf/scripts/perl/bin/ibs-record | 23 +++++
tools/perf/scripts/perl/bin/ibs-report | 6 +
tools/perf/scripts/perl/ibs.pl | 47 +++++++++
tools/perf/util/header.c | 99 ++++++++++++++++++++
tools/perf/util/header.h | 1 +
tools/perf/util/parse-events.c | 84 ++++++++++++++++-
.../perf/util/scripting-engines/trace-event-perl.c | 73 +++++++++++++-
7 files changed, 325 insertions(+), 8 deletions(-)
create mode 100644 tools/perf/scripts/perl/bin/ibs-record
create mode 100644 tools/perf/scripts/perl/bin/ibs-report
create mode 100644 tools/perf/scripts/perl/ibs.pl

--
1.7.7


--
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/