Messages in this thread | | | From | Michael Neuling <> | Subject | Re: [PATCH V4 0/5] powerpc, perf: BHRB based branch stack enablement on POWER8 | Date | Fri, 26 Apr 2013 13:11:53 +1000 |
| |
Anshuman,
IIRC there are new bits in the FSCR and HFSCR you need to enable for the PMU and BRHB. Can you please check these are enabled?
Mikey
Anshuman Khandual <khandual@linux.vnet.ibm.com> wrote: > Branch History Rolling Buffer (BHRB) is a new PMU feaure in IBM > POWER8 processor which records the branch instructions inside the execution > pipeline. This patchset enables the basic functionality of the feature through > generic perf branch stack sampling framework. > > Sample output > ------------- > $./perf record -b top > $./perf report > > Overhead Command Source Shared Object Source Symbol Target Shared Object Target Symbol > # ........ ....... .................... ...................................... .................... ................................... > # > > 7.82% top libc-2.11.2.so [k] _IO_vfscanf libc-2.11.2.so [k] _IO_vfscanf > 6.17% top libc-2.11.2.so [k] _IO_vfscanf [unknown] [k] 00000000 > 2.37% top [unknown] [k] 0xf7aafb30 [unknown] [k] 00000000 > 1.80% top [unknown] [k] 0x0fe07978 libc-2.11.2.so [k] _IO_vfscanf > 1.60% top libc-2.11.2.so [k] _IO_vfscanf [kernel.kallsyms] [k] .do_task_stat > 1.20% top [kernel.kallsyms] [k] .do_task_stat [kernel.kallsyms] [k] .do_task_stat > 1.02% top libc-2.11.2.so [k] vfprintf libc-2.11.2.so [k] vfprintf > 0.92% top top [k] _init [unknown] [k] 0x0fe037f4 > > Changes in V2 > -------------- > - Added copyright messages to the newly created files > - Modified couple of commit messages > > Changes in V3 > ------------- > - Incorporated review comments from Segher https://lkml.org/lkml/2013/4/16/350 > - Worked on a solution for review comment from Michael Ellerman https://lkml.org/lkml/2013/4/17/548 > - Could not move updated cpu_hw_events structure from core-book3s.c file into perf_event_server.h > Because perf_event_server.h is pulled in first inside linux/perf_event.h before the definition of > perf_branch_entry structure. Thats the reason why perf_branch_entry definition is not available > inside perf_event_server.h where we define the array inside cpu_hw_events structure. > > - Finally have pulled in the code from perf_event_bhrb.c into core-book3s.c > > - Improved documentation for the patchset > > Changes in V4 > ------------- > - Incorporated review comments on V3 regarding new instruction encoding > > Anshuman Khandual (5): > powerpc, perf: Add new BHRB related instructions for POWER8 > powerpc, perf: Add basic assembly code to read BHRB entries on POWER8 > powerpc, perf: Add new BHRB related generic functions, data and flags > powerpc, perf: Define BHRB generic functions, data and flags for POWER8 > powerpc, perf: Enable branch stack sampling framework > > arch/powerpc/include/asm/perf_event_server.h | 7 ++ > arch/powerpc/include/asm/ppc-opcode.h | 8 ++ > arch/powerpc/perf/Makefile | 2 +- > arch/powerpc/perf/bhrb.S | 44 +++++++ > arch/powerpc/perf/core-book3s.c | 167 ++++++++++++++++++++++++++- > arch/powerpc/perf/power8-pmu.c | 57 ++++++++- > 6 files changed, 280 insertions(+), 5 deletions(-) > create mode 100644 arch/powerpc/perf/bhrb.S > > -- > 1.7.11.7 >
| |