[PATCH v3 0/5] perf hwmon related improvements

Ian Rogers posted 5 patches 10 months, 2 weeks ago
tools/perf/pmu-events/empty-pmu-events.c |   8 +-
tools/perf/pmu-events/jevents.py         |   8 +-
tools/perf/tests/pmu.c                   |  85 ++++----
tools/perf/util/evsel.c                  |   4 +-
tools/perf/util/evsel.h                  |   1 +
tools/perf/util/parse-events.c           |   2 +-
tools/perf/util/pmu.c                    | 256 ++++++++++++++++-------
tools/perf/util/pmu.h                    |   7 +-
tools/perf/util/pmus.c                   | 146 ++++++++-----
tools/perf/util/stat-display.c           | 111 +++++++---
tools/perf/util/stat.c                   |  13 +-
11 files changed, 424 insertions(+), 217 deletions(-)
[PATCH v3 0/5] perf hwmon related improvements
Posted by Ian Rogers 10 months, 2 weeks ago
Try to do less scanning of files/directories with or without hwmon
PMUs. Don't merge all events with the same name, only merge those on
the same PMU ignoring suffix. Tidy PMU name matching to distinguish no
suffix or wildcard matching. Refactor uniquification so the evsels
with the same name as other evsels in the evlist are uniquified.

v3: Address potential segv and styling nits from Kan Liang.
v2: Rename ignore suffix PMU name matching that is really a
    wildcard/prefix match. Use a proper ignore suffix when not merging
    counters purely on name.

Ian Rogers (5):
  perf evsel: Reduce scanning core PMUs in is_hybrid
  perf pmus: Restructure pmu_read_sysfs to scan fewer PMUs
  perf pmu: Rename name matching for no suffix or wildcard variants
  perf stat: Don't merge counters purely on name
  perf stat: Changes to event name uniquification

 tools/perf/pmu-events/empty-pmu-events.c |   8 +-
 tools/perf/pmu-events/jevents.py         |   8 +-
 tools/perf/tests/pmu.c                   |  85 ++++----
 tools/perf/util/evsel.c                  |   4 +-
 tools/perf/util/evsel.h                  |   1 +
 tools/perf/util/parse-events.c           |   2 +-
 tools/perf/util/pmu.c                    | 256 ++++++++++++++++-------
 tools/perf/util/pmu.h                    |   7 +-
 tools/perf/util/pmus.c                   | 146 ++++++++-----
 tools/perf/util/stat-display.c           | 111 +++++++---
 tools/perf/util/stat.c                   |  13 +-
 11 files changed, 424 insertions(+), 217 deletions(-)

-- 
2.48.1.362.g079036d154-goog
Re: [PATCH v3 0/5] perf hwmon related improvements
Posted by Liang, Kan 10 months, 2 weeks ago

On 2025-02-01 2:43 a.m., Ian Rogers wrote:
> Try to do less scanning of files/directories with or without hwmon
> PMUs. Don't merge all events with the same name, only merge those on
> the same PMU ignoring suffix. Tidy PMU name matching to distinguish no
> suffix or wildcard matching. Refactor uniquification so the evsels
> with the same name as other evsels in the evlist are uniquified.
> 
> v3: Address potential segv and styling nits from Kan Liang.
> v2: Rename ignore suffix PMU name matching that is really a
>     wildcard/prefix match. Use a proper ignore suffix when not merging
>     counters purely on name.
> 
> Ian Rogers (5):
>   perf evsel: Reduce scanning core PMUs in is_hybrid
>   perf pmus: Restructure pmu_read_sysfs to scan fewer PMUs
>   perf pmu: Rename name matching for no suffix or wildcard variants
>   perf stat: Don't merge counters purely on name
>   perf stat: Changes to event name uniquification
> 

I didn't do much tests on the hwmon. But it changes the common codes
which impact other PMUs. I did tests mainly on core, uncore and other HW
PMUs on a hybrid platform. No regression is found.
The patches look good to me.

Reviewed-by: Kan Liang <kan.liang@linux.intel.com>

Thanks,
Kan

>  tools/perf/pmu-events/empty-pmu-events.c |   8 +-
>  tools/perf/pmu-events/jevents.py         |   8 +-
>  tools/perf/tests/pmu.c                   |  85 ++++----
>  tools/perf/util/evsel.c                  |   4 +-
>  tools/perf/util/evsel.h                  |   1 +
>  tools/perf/util/parse-events.c           |   2 +-
>  tools/perf/util/pmu.c                    | 256 ++++++++++++++++-------
>  tools/perf/util/pmu.h                    |   7 +-
>  tools/perf/util/pmus.c                   | 146 ++++++++-----
>  tools/perf/util/stat-display.c           | 111 +++++++---
>  tools/perf/util/stat.c                   |  13 +-
>  11 files changed, 424 insertions(+), 217 deletions(-)
>
Re: [PATCH v3 0/5] perf hwmon related improvements
Posted by Namhyung Kim 10 months, 1 week ago
On Fri, 31 Jan 2025 23:43:15 -0800, Ian Rogers wrote:
> Try to do less scanning of files/directories with or without hwmon
> PMUs. Don't merge all events with the same name, only merge those on
> the same PMU ignoring suffix. Tidy PMU name matching to distinguish no
> suffix or wildcard matching. Refactor uniquification so the evsels
> with the same name as other evsels in the evlist are uniquified.
> 
> v3: Address potential segv and styling nits from Kan Liang.
> v2: Rename ignore suffix PMU name matching that is really a
>     wildcard/prefix match. Use a proper ignore suffix when not merging
>     counters purely on name.
> 
> [...]
Applied to perf-tools-next, thanks!

Best regards,
Namhyung