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

When profiling performance on Qualcomm SM8250 platform using Streamline 7.7.0, there is no clock and cache related data

HI :

Streamline is currently not working properly in my device. there are the following problems:

1. No Perf PMUs detected

[1165.1961225] SETUP: detect(linux/perf/PerfDriverConfiguration.cpp:499): No Perf PMUs detected

Could not detect any Perf PMUs in /sys/bus/event_source/devices/ but the system contains recognised CPUs. The system may not support perf hardware counters. Check CONFIG_HW_PERF_EVENTS is set and that the PMU is configured in the target device tree.

I detect the PUM of the device, as follows:

# ls /sys/bus/event_source/devices/
arm_dsu_0  armv8_pmuv3  breakpoint  cs_etm  llcc-pmu  software  tracepoint  uprobe

and I have enabled CONFIG_HW_PERF_EVENTS.

"/sys/bus/event_source/devices/armv8_cortex_x1" This PMU must exist?

2. no clock and cache related data

I continued to use streamline, I found that there is no data on some of the items shown below.

how should I do it makes streamline? Thank you.

Parents
  • Thanks for the log. I can see several instances of

    "Unable to enable a perf group, pinned group marked as in disabled due to conflict or insufficient resources." in the log corresponding to the counters for CPUs 0, 1, 2, 3, 5, 6.

    This means you will only see counters associated with CPU 4, 7. I'm not really sure why this is the case, does the board have some sort of power management which has disabled those cores?

    Alternatively you may have one or more processes that are also using perf at the same time. You can check this by using the command `lsof|grep perf_event` (without gatord running) and seeing what processes / files are listed.

    Alternatively you may have some limitation in the device that prevents opening the full 6 PMU counters. One suggestion is to remove all the CPU specific PMU counters and just select the "Linux: Clock: Frequency", "Linux: CPU Activity: System" and "Linux: CPU Activity: User" events. Do you get CPU activity for all CPUs or still just a subset.

Reply
  • Thanks for the log. I can see several instances of

    "Unable to enable a perf group, pinned group marked as in disabled due to conflict or insufficient resources." in the log corresponding to the counters for CPUs 0, 1, 2, 3, 5, 6.

    This means you will only see counters associated with CPU 4, 7. I'm not really sure why this is the case, does the board have some sort of power management which has disabled those cores?

    Alternatively you may have one or more processes that are also using perf at the same time. You can check this by using the command `lsof|grep perf_event` (without gatord running) and seeing what processes / files are listed.

    Alternatively you may have some limitation in the device that prevents opening the full 6 PMU counters. One suggestion is to remove all the CPU specific PMU counters and just select the "Linux: Clock: Frequency", "Linux: CPU Activity: System" and "Linux: CPU Activity: User" events. Do you get CPU activity for all CPUs or still just a subset.

Children
No data