Learn how easy it is to sync an existing GitHub or Google Code repo to a SourceForge project! See Demo

Close

Commit [34d006] Maximize Restore History

Provide basic AArch64 (ARMv8) support

The AArch64 (ARMv8) support is provided as an ARM variant to allow use
in both 32-bit and 64-bit ARM environments. The support in this patch
is just the basic events described in the AArch64 documentation.
AArch64 processor implementation may provide additional implementation
specific events. One could add code to recognize those processor
specific implementations and include the armv8-pmuv3-common base
events into the event sets for the processor implementations.
The APM X-Gene processor type is included in this patch as an
implementation, although there are no known processor-specific events
to add at this time.

Below is example run on the ARM Foundation simulator collecting data
on a build of OProfile.

$ cd oprofile
$ operf make
...
$ opreport -t 5
Using /home/wcohen/oprofile/oprofile/oprofile_data/samples/ for samples directory.

WARNING: Lost samples detected! See /home/wcohen/oprofile/oprofile/oprofile_data/samples/operf.log for details.
CPU: ARM AArch64
Counted CPU_CYCLES events (Cycle) with a unit mask of 0x00 (No unit mask) count 100000
CPU_CYCLES:100000|
samples| %|
------------------
10943 90.5877 make
CPU_CYCLES:100000|
samples| %|
------------------
5281 48.2592 make
4543 41.5151 libc-2.17.so
1079 9.8602 kallsyms
40 0.3655 ld-2.17.so
735 6.0844 sh
CPU_CYCLES:100000|
samples| %|
------------------
321 43.6735 kallsyms
298 40.5442 libc-2.17.so
94 12.7891 bash
22 2.9932 ld-2.17.so

Signed-off-by: William Cohen <wcohen@redhat.com>

William Cohen William Cohen 2014-02-12

Maynard Johnson Maynard Johnson 2014-02-12

added events/arm/armv8-pmuv3-common
added events/arm/armv8-pmuv3-common/events
added events/arm/armv8-pmuv3-common/unit_masks
added events/arm/armv8-xgene
added events/arm/armv8-xgene/events
added events/arm/armv8-xgene/unit_masks
changed events
changed events/Makefile.am
changed events/arm
changed libop
changed libop/op_cpu_type.c
changed libop/op_cpu_type.h
changed libop/op_events.c
changed utils
changed utils/opcontrol
changed utils/ophelp.c
events/arm/armv8-pmuv3-common/events Diff Switch to side-by-side view
Loading...
events/arm/armv8-pmuv3-common/unit_masks Diff Switch to side-by-side view
Loading...
events/arm/armv8-xgene/events Diff Switch to side-by-side view
Loading...
events/arm/armv8-xgene/unit_masks Diff Switch to side-by-side view
Loading...
events
Directory.
events/Makefile.am Diff Switch to side-by-side view
Loading...
events/arm
Directory.
libop
Directory.
libop/op_cpu_type.c Diff Switch to side-by-side view
Loading...
libop/op_cpu_type.h Diff Switch to side-by-side view
Loading...
libop/op_events.c Diff Switch to side-by-side view
Loading...
utils
Directory.
utils/opcontrol Diff Switch to side-by-side view
Loading...
utils/ophelp.c Diff Switch to side-by-side view
Loading...