Re: [PATCH v3 0/5] powerpc/perf: Add json file support for hv_24x7 core level events
From: Arnaldo Carvalho de Melo
Date: Thu Jul 16 2020 - 11:22:44 EST
Em Thu, Jul 16, 2020 at 03:12:11PM +0530, Kajol Jain escreveu:
> Patchset enhance current runtime parameter support. It introduces new
> fields like "PerChip" and "PerCore" similar to the field "PerPkg" which is
> used to specify perpkg events.
>
> The "PerCore" and "PerChip" specifies whether its core or chip events.
> Based on which we can decide which runtime parameter user want to
> access. Now character '?' can refers different parameter based on user
> requirement.
>
> Initially, every time we want to add new terms like chip, core, thread
> etc, we need to create corrsponding fields in pmu_events and event
> struct.
> This patchset adds an enum called 'aggr_mode_class' which store all these
> aggregation like perpkg/percore. It also adds new field 'AggregationMode'
> to capture these terms.
> Now, if user wants to add any new term, they just need to add it in
> the enum defined. I try to test it with my current setup.
>
> I also need to replace PerPkg field to AggregationMode in all the
> x86 uncore json files. It will great if Andi and team can test it
> and let me know if they have any concerns.
>
> Changelog:
> v2 -> v3:
> - Did some nits changes suggested by Jiri include correction of
> indentation, and making PerCore/PerChip values forward after
> PerPkg as 1 in the enum.
> - Rebase the patchset on Arnaldo's tmp.perf/core branch.
> - Change RFC tag
Hey, have anybody provided Acked-by/Reviewed-by for previous revisions
of this patchset? If so you could have collected them for patches
without changes, was that the case?
- Arnaldo
> v1 -> v2:
> - Rather then adding new field as PerCore/PerChip, created a new enum
> to get these fields. And new field as "AggregationMode" which can
> be used to capture these fields from json file.
> - Suggested By Ian Rogers
>
>
> Kajol Jain (5):
> perf/pmu-events/jevents: Add enum to store aggregation like PerPkg
> pmu-events/x86/uncore: Replace PerPkg field to AggregationMode in x86
> json files
> perf jevents: Add support for parsing perchip/percore events
> perf/tools: Pass pmu_event structure as a parameter for
> arch_get_runtimeparam
> perf/tools/pmu_events/powerpc: Add hv_24x7 core level metric events
>
> tools/perf/arch/powerpc/util/header.c | 7 +-
> .../arch/powerpc/power9/nest_metrics.json | 27 +-
> .../arch/x86/broadwellde/uncore-cache.json | 62 ++--
> .../arch/x86/broadwellde/uncore-memory.json | 18 +-
> .../arch/x86/broadwellde/uncore-power.json | 18 +-
> .../arch/x86/broadwellx/uncore-cache.json | 62 ++--
> .../x86/broadwellx/uncore-interconnect.json | 6 +-
> .../arch/x86/broadwellx/uncore-memory.json | 18 +-
> .../arch/x86/broadwellx/uncore-power.json | 18 +-
> .../arch/x86/cascadelakex/uncore-memory.json | 64 ++--
> .../arch/x86/cascadelakex/uncore-other.json | 332 +++++++++---------
> .../arch/x86/haswellx/uncore-cache.json | 62 ++--
> .../x86/haswellx/uncore-interconnect.json | 6 +-
> .../arch/x86/haswellx/uncore-memory.json | 18 +-
> .../arch/x86/haswellx/uncore-power.json | 18 +-
> .../arch/x86/ivytown/uncore-cache.json | 62 ++--
> .../arch/x86/ivytown/uncore-interconnect.json | 10 +-
> .../arch/x86/ivytown/uncore-memory.json | 16 +-
> .../arch/x86/ivytown/uncore-power.json | 52 +--
> .../arch/x86/jaketown/uncore-cache.json | 40 +--
> .../x86/jaketown/uncore-interconnect.json | 10 +-
> .../arch/x86/jaketown/uncore-memory.json | 18 +-
> .../arch/x86/jaketown/uncore-power.json | 52 +--
> .../x86/knightslanding/uncore-memory.json | 8 +-
> .../arch/x86/skylakex/uncore-memory.json | 36 +-
> .../arch/x86/skylakex/uncore-other.json | 220 ++++++------
> .../arch/x86/tremontx/uncore-memory.json | 14 +-
> .../arch/x86/tremontx/uncore-other.json | 70 ++--
> .../arch/x86/tremontx/uncore-power.json | 2 +-
> tools/perf/pmu-events/jevents.c | 45 ++-
> tools/perf/pmu-events/jevents.h | 2 +-
> tools/perf/pmu-events/pmu-events.h | 8 +-
> tools/perf/tests/pmu-events.c | 8 +-
> tools/perf/util/metricgroup.c | 5 +-
> tools/perf/util/metricgroup.h | 3 +-
> tools/perf/util/pmu.c | 6 +-
> 36 files changed, 729 insertions(+), 694 deletions(-)
>
> --
> 2.26.2
>
--
- Arnaldo