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

Namhyung Kim namhyung at kernel.org
Tue Jun 20 22:00:46 PDT 2023


On Tue, Jun 20, 2023 at 8:08 PM Jing Zhang <renyu.zj at linux.alibaba.com> wrote:
>
>
>
> 在 2023/6/21 上午3:04, Namhyung Kim 写道:
> > Hello,
> >
> > On Tue, Jun 20, 2023 at 12:17 AM Jing Zhang <renyu.zj at linux.alibaba.com> 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@linux.alibaba.com/
> >>
> >> $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?
> >
>
> Hi Namhyung,
>
> Yes, patch 2-4 depend on patch 1.
>
> > 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?
> >
>
> The main purpose of patch 1 is to add an identifier so that the Compat
> field can match the corresponding event when defining aliases or metrics
> for events.
>
> For example, "Unit" can match "ali_drw" in the name and different SoCs may
> be able to match ali_drw, but they may have different events, and even if
> the events are the same, the meanings may be different. Therefore, the
> Compat field is needed to match the Identifier to confirm which type and
> revision of PMU the current SoC has. Therefore, both "Unit" and "Compat"
> need to be matched at the same time. Although it seems that ali_drw is
> redundantly matched currently, it is meaningful for future expansion.

I see, thanks for the explanation.

I think you need to route the kernel patch differently.  I can apply the tools
part once the kernel patch gets Acks from others.

Thanks,
Namhyung



More information about the linux-arm-kernel mailing list