Messages in this thread | | | From | Robert Richter <> | Subject | [PATCH 0/4] perf tools: Add support for IBS | Date | Thu, 15 Dec 2011 18:23:40 +0100 |
| |
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
| |