Messages in this thread | | | Date | Thu, 31 May 2012 17:24:25 +0200 | Subject | Re: [PATCH 0/7] perf/x86-ibs and tools: Add support for AMD IBS | From | Stephane Eranian <> |
| |
Robert,
I think the script ibs.pl would be more useful if it were to offer the option to decrypt each IBS register. I am not a Perl programmer, so I had a hard time understanding the way one can use pack()/unpack() to extract bitfields from a u64 value.
On Wed, May 2, 2012 at 8:26 PM, Robert Richter <robert.richter@amd.com> wrote: > This patch set adds perf tool support for AMD IBS. Mostly perf tool > patches, but > > perf/x86-ibs: Add support for IBS pseudo events > > includes kernel changes. > > It basically implements: > > * General perf tool support for dynamically allocated pmus, > * Support for IBS pseudo events, > * perf-script support for IBS (updated version). > > With this patches there is the possibility to add pmu handler code for > a specific pmu. If a pmu with handler code is listed in sysfs, it is > activated and can be used with perf tools. E.g. perf-list shows > available events of this pmu and the event parser of perf-record is > able to setup profiling for that particular pmu. This mechanism is > used to implement pmus for ibs (ibs_op/ibs_fetch). > > IBS pseudo events are derived from an IBS sample and determined > through a combination of one or more IBS event flags or values. > E.g. one could profile mispredicted branches with ibs using such > pseudo events: > > # perf record -a -e ibs_op:MISPREDICTED_BRANCH ... > > This is implemented with kernel side filtering of ibs samples by > passing filter settings to the kernel (attr.config1/config2). > > I also attached an updated version of my previously posted patch that > implements perf-script support for ibs. This is usefull for a user to > dump raw ibs samples. The script can be used by the user as a basis > for a script that post-processes ibs samples. > > Changes can be pulled from kernel.org and are available in the git > repository at: > > git://git.kernel.org/pub/scm/linux/kernel/git/rric/oprofile.git perf-ibs > > -Robert > > > Robert Richter (7): > perf tools: Fix generation of pmu list > perf tools: Add basic dynamic PMU support > perf tools: Add parser for dynamic PMU events > perf/x86-ibs: Add support for IBS pseudo events > perf, tools: Add raw event support for dynamic allocated pmus > perf tools: Add pmu mappings to header information > perf script: Add script to collect and display IBS samples > > arch/x86/kernel/cpu/perf_event_amd_ibs.c | 83 ++++++- > tools/perf/Makefile | 1 + > 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 | 78 ++++++ > tools/perf/util/header.h | 1 + > tools/perf/util/parse-events.c | 45 +++- > tools/perf/util/parse-events.h | 4 +- > tools/perf/util/parse-events.y | 11 +- > tools/perf/util/pmu-ibs.c | 419 ++++++++++++++++++++++++++++++ > tools/perf/util/pmu.c | 102 +++++++- > tools/perf/util/pmu.h | 19 ++ > 13 files changed, 828 insertions(+), 11 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 > create mode 100644 tools/perf/util/pmu-ibs.c > > -- > 1.7.8.4 > > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |