Work at SourceForge, help us to make it a better place! We have an immediate need for a Support Technician in our San Francisco or Denver office.

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/events
added events/arm/armv8-pmuv3-common/unit_masks
added events/arm/armv8-xgene/events
added events/arm/armv8-xgene/unit_masks
changed events/Makefile.am
changed libop/op_cpu_type.c
changed libop/op_cpu_type.h
changed libop/op_events.c
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/Makefile.am Diff Switch to side-by-side view
Loading...
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/opcontrol Diff Switch to side-by-side view
Loading...
utils/ophelp.c Diff Switch to side-by-side view
Loading...