Re: [PATCH v4 0/4] Add JSON metrics for Yitian710 DDR

From: Namhyung Kim
Date: Tue Jun 20 2023 - 15:05:00 EST


Hello,

On Tue, Jun 20, 2023 at 12:17 AM Jing Zhang <renyu.zj@xxxxxxxxxxxxxxxxx> wrote:
>
> Hi all,
>
> I add an identifier sysfs file for the yitian710 SoC DDR to allow
> userspace to identify the specific implementation of the device,
> so that the perf tool can match the corresponding uncore events and
> metrics through the identifier. Then added yitian710 SoC DDR
> metrics and events alias.
>
> Change since v3:
> - Split the CMN and ali_drw patches. This patchset only contains
> ali_drw PMU related patches. The CMN metric related patches will
> be in another patchset.
> - Link: https://lore.kernel.org/all/1685438374-33287-1-git-send-email-renyu.zj@xxxxxxxxxxxxxxxxx/
>
> $perf list:
> ...
> ali_drw:
> chi_rxdat
> [A packet at CHI RXDAT interface (write data). Unit: ali_drw]
> chi_rxrsp
> [A packet at CHI RXRSP interface. Unit: ali_drw]
> chi_txdat
> [A packet at CHI TXDAT interface (read data). Unit: ali_drw]
> chi_txreq
> [A packet at CHI TXREQ interface (request). Unit: ali_drw]
> cycle
> [The ddr cycle. Unit: ali_drw]
> ...
> ali_drw:
> ddr_read_bandwidth.all
> [The ddr read bandwidth(MB/s). Unit: ali_drw ]
> ddr_write_bandwidth.all
> [The ddr write bandwidth(MB/s). Unit: ali_drw ]
> ...
>
> $perf stat -M ddr_read_bandwidth.all ./test
>
> Performance counter stats for 'system wide':
>
> 38,150 hif_rd # 2.4 MB/s ddr_read_bandwidth.all
> 1,000,957,941 ns duration_time
>
> 1.000957941 seconds time elapsed
>
> Jing Zhang (4):
> driver/perf: Add identifier sysfs file for Yitian 710 DDR
> perf jevents: Add support for Yitian 710 DDR PMU aliasing
> perf vendor events: Add JSON metrics for Yitian 710 DDR
> docs: perf: Update metric usage for Alibaba's T-Head PMU driver

So patch 1 is for the kernel, and patch 2-4 depend on it, right?

I'm curious why the first patch is needed, presumably the PMU
should have 'ali_drw' in the name already. Do we use substring
match for the compat name in the JSON metric?

Thanks,
Namhyung

>
> Documentation/admin-guide/perf/alibaba_pmu.rst | 5 +
> drivers/perf/alibaba_uncore_drw_pmu.c | 27 ++
> .../arm64/freescale/yitian710/sys/ali_drw.json | 373 +++++++++++++++++++++
> .../arm64/freescale/yitian710/sys/metrics.json | 20 ++
> tools/perf/pmu-events/jevents.py | 1 +
> 5 files changed, 426 insertions(+)
> create mode 100644 tools/perf/pmu-events/arch/arm64/freescale/yitian710/sys/ali_drw.json
> create mode 100644 tools/perf/pmu-events/arch/arm64/freescale/yitian710/sys/metrics.json
>
> --
> 1.8.3.1
>