Re: [PATCH v8 8/8] perf vendor events arm64:: Add i.MX93 DDR Performance Monitor metrics

From: Frank Li
Date: Tue Mar 26 2024 - 10:58:10 EST


On Fri, Mar 22, 2024 at 02:39:30PM +0800, Xu Yang wrote:
> Add JSON metrics for i.MX93 DDR Performance Monitor.
>
> Signed-off-by: Xu Yang <xu.yang_2@xxxxxxx>

Reviewed-by: Frank Li <Frank.Li@xxxxxxx>

>
> ---
> Changes in v7:
> - new patch
> Changes in v8:
> - no changes
> ---
> .../arch/arm64/freescale/imx93/sys/ddrc.json | 9 +++++++
> .../arm64/freescale/imx93/sys/metrics.json | 26 +++++++++++++++++++
> 2 files changed, 35 insertions(+)
> create mode 100644 tools/perf/pmu-events/arch/arm64/freescale/imx93/sys/ddrc.json
> create mode 100644 tools/perf/pmu-events/arch/arm64/freescale/imx93/sys/metrics.json
>
> diff --git a/tools/perf/pmu-events/arch/arm64/freescale/imx93/sys/ddrc.json b/tools/perf/pmu-events/arch/arm64/freescale/imx93/sys/ddrc.json
> new file mode 100644
> index 000000000000..eeeae4d49fce
> --- /dev/null
> +++ b/tools/perf/pmu-events/arch/arm64/freescale/imx93/sys/ddrc.json
> @@ -0,0 +1,9 @@
> +[
> + {
> + "BriefDescription": "ddr cycles event",
> + "EventCode": "0x00",
> + "EventName": "imx93_ddr.cycles",
> + "Unit": "imx9_ddr",
> + "Compat": "imx93"
> + }
> +]
> diff --git a/tools/perf/pmu-events/arch/arm64/freescale/imx93/sys/metrics.json b/tools/perf/pmu-events/arch/arm64/freescale/imx93/sys/metrics.json
> new file mode 100644
> index 000000000000..4d2454ca1259
> --- /dev/null
> +++ b/tools/perf/pmu-events/arch/arm64/freescale/imx93/sys/metrics.json
> @@ -0,0 +1,26 @@
> +[
> + {
> + "BriefDescription": "bandwidth usage for lpddr4x evk board",
> + "MetricName": "imx93_bandwidth_usage.lpddr4x",
> + "MetricExpr": "(((( imx9_ddr0@ddrc_pm_0@ ) * 2 * 8 ) + (( imx9_ddr0@ddrc_pm_3@ + imx9_ddr0@ddrc_pm_5@ + imx9_ddr0@ddrc_pm_7@ + imx9_ddr0@ddrc_pm_9@ - imx9_ddr0@ddrc_pm_2@ - imx9_ddr0@ddrc_pm_4@ - imx9_ddr0@ddrc_pm_6@ - imx9_ddr0@ddrc_pm_8@ ) * 32 )) / duration_time) / (3733 * 1000000 * 2)",
> + "ScaleUnit": "1e2%",
> + "Unit": "imx9_ddr",
> + "Compat": "imx93"
> + },
> + {
> + "BriefDescription": "bytes all masters read from ddr",
> + "MetricName": "imx93_ddr_read.all",
> + "MetricExpr": "( imx9_ddr0@ddrc_pm_0@ ) * 2 * 8",
> + "ScaleUnit": "9.765625e-4KB",
> + "Unit": "imx9_ddr",
> + "Compat": "imx93"
> + },
> + {
> + "BriefDescription": "bytes all masters write to ddr",
> + "MetricName": "imx93_ddr_write.all",
> + "MetricExpr": "( imx9_ddr0@ddrc_pm_3@ + imx9_ddr0@ddrc_pm_5@ + imx9_ddr0@ddrc_pm_7@ + imx9_ddr0@ddrc_pm_9@ - imx9_ddr0@ddrc_pm_2@ - imx9_ddr0@ddrc_pm_4@ - imx9_ddr0@ddrc_pm_6@ - imx9_ddr0@ddrc_pm_8@ ) * 32",
> + "ScaleUnit": "9.765625e-4KB",
> + "Unit": "imx9_ddr",
> + "Compat": "imx93"
> + }
> +]
> --
> 2.34.1
>