This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Why can't I capture Cortex-A7/A15 counters on exynos 5 using ARM Streamline?

This is our current setup on a Hardkernel odroid-xu3 board based on EXYNOS5422.

1.- Board is running Ubuntu 14.04.1 LTS. Linux kernel 3.10.59 rebuilt with options:

  CONFIG_GENERIC_TRACER

  CONFIG_TRACING

  CONFIG_CONTEXT_SWITCH_TRACER

  CONFIG_PROFILING

  CONFIG_HIGH_RES_TIMERS

  CONFIG_LOCAL_TIMERS

  CONFIG_PERF_EVENTS

  CONFIG_HW_PERF_EVENTS

  CONFIG_CPU_FREQ

2.- Streamline gatord version 20 (DS-5 v5.20) (built form source)

3.- Gator driver build with MALI support (patch applied as proposed in: http://community.arm.com/thread/6863).

When I capture using the Streamline Data View in Eclipse, I get values in Linux and Mali counters, but for all Cortex-A15 counters I tried, I get no values, just zero.

When I select events using Cortex-A15 counters, like the ones in the picture (Bus: Access,  Clock:Cycles, Instruction: Executed, etc.) All this counters

always show zero values in the captured session. Other counters selected from Mali or Linux seen to work well.

D5-2.PNG

By the way, in the Counter Configuration dialog box I can see Cortex-A15, Linux and Mali counters. But I can´t see any Cortex-A7 counter.

In the documentation I can find example pictures (as the one shown below) where A7 and A15 counters are shown together...

Should I see both of them A7 and A15?

Adding a counter to the Events to Collect list

In this last picture you can see as Mali counters (marked in green) are showing values when I run some OpenCL code on the GPU,

but counters for Cortex-A15 show no activity at all (marked in red).

D5-1.PNG

Is there any special configuration for my Exynos 5 SoC to make Streamline capture the Cortex-A15 and A-7 counters?

I'm stuck right now, I can't find out what I am doing wrong. Any hint will be of great help.


Thanks!

Parents
  • I am having the same problem for my odroid XU4.

    1. The performance counters are reading zero

    2. I only have counters for cortexA15

    3. Many  GPU counters are missing.

    I used this kernel source :GitHub - hardkernel/linux at odroidc-3.10.y . It is version Linux odroid 3.10.103. My DS5 version is DS-5_v5.25.0.

    streamline_countermissing.pngcounter.png

    I have enabled all the configurations required:

    - General Setup

      - Kernel Performance Events And Counters

        - [*] Kernel performance events and counters (enables CONFIG_PERF_EVENTS)

      - [*] Profiling Support (enables CONFIG_PROFILING)

    - [*] Enable loadable module support (enables CONFIG_MODULES, needed unless the gator driver is built into the kernel)

      - [*] Module unloading (enables MODULE_UNLOAD)

    - Kernel Features

      - [*] High Resolution Timer Support (enables CONFIG_HIGH_RES_TIMERS)

      - [*] Use local timer interrupts (only required for SMP and for version before Linux 3.12, enables CONFIG_LOCAL_TIMERS)

      - [*] Enable hardware performance counter support for perf events (enables CONFIG_HW_PERF_EVENTS)

    - CPU Power Management

      - CPU Frequency scaling

        - [*] CPU Frequency scaling (enables CONFIG_CPU_FREQ)

    - Device Drivers

      - Graphics support

        - ARM GPU Configuration

          - Mali Midgard series support

            - [*] Streamline Debug support (enables CONFIG_MALI_GATOR_SUPPORT needed as part of Mali Midgard support)

    - Kernel hacking

      - [*] Compile the kernel with debug info (optional, enables CONFIG_DEBUG_INFO)

      - [*] Tracers

        - [*] Trace process context switches and events (#)

    The kernel space gator is compiled and inserted.

    What is wrong?

Reply
  • I am having the same problem for my odroid XU4.

    1. The performance counters are reading zero

    2. I only have counters for cortexA15

    3. Many  GPU counters are missing.

    I used this kernel source :GitHub - hardkernel/linux at odroidc-3.10.y . It is version Linux odroid 3.10.103. My DS5 version is DS-5_v5.25.0.

    streamline_countermissing.pngcounter.png

    I have enabled all the configurations required:

    - General Setup

      - Kernel Performance Events And Counters

        - [*] Kernel performance events and counters (enables CONFIG_PERF_EVENTS)

      - [*] Profiling Support (enables CONFIG_PROFILING)

    - [*] Enable loadable module support (enables CONFIG_MODULES, needed unless the gator driver is built into the kernel)

      - [*] Module unloading (enables MODULE_UNLOAD)

    - Kernel Features

      - [*] High Resolution Timer Support (enables CONFIG_HIGH_RES_TIMERS)

      - [*] Use local timer interrupts (only required for SMP and for version before Linux 3.12, enables CONFIG_LOCAL_TIMERS)

      - [*] Enable hardware performance counter support for perf events (enables CONFIG_HW_PERF_EVENTS)

    - CPU Power Management

      - CPU Frequency scaling

        - [*] CPU Frequency scaling (enables CONFIG_CPU_FREQ)

    - Device Drivers

      - Graphics support

        - ARM GPU Configuration

          - Mali Midgard series support

            - [*] Streamline Debug support (enables CONFIG_MALI_GATOR_SUPPORT needed as part of Mali Midgard support)

    - Kernel hacking

      - [*] Compile the kernel with debug info (optional, enables CONFIG_DEBUG_INFO)

      - [*] Tracers

        - [*] Trace process context switches and events (#)

    The kernel space gator is compiled and inserted.

    What is wrong?

Children