perf vendor events arm64 AmpereOneX: Fix frontend_bound calculation

frontend_bound metrics was miscalculated due to different scaling in
a couple of metrics it depends on. Change the scaling to match with
AmpereOne.

Fixes: 16438b652b ("perf vendor events arm64 AmpereOneX: Add core PMU events and metrics")
Signed-off-by: Ilkka Koskinen <ilkka@os.amperecomputing.com>
Reviewed-by: James Clark <james.clark@linaro.org>
Link: https://lore.kernel.org/r/20250313201559.11332-3-ilkka@os.amperecomputing.com
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
This commit is contained in:
Ilkka Koskinen 2025-03-13 20:15:59 +00:00 committed by Namhyung Kim
parent c0b60ce461
commit 182f12f319

View file

@ -229,19 +229,19 @@
},
{
"MetricName": "slots_lost_misspeculation_fraction",
"MetricExpr": "(OP_SPEC - OP_RETIRED) / (CPU_CYCLES * #slots)",
"MetricExpr": "100 * (OP_SPEC - OP_RETIRED) / (CPU_CYCLES * #slots)",
"BriefDescription": "Fraction of slots lost due to misspeculation",
"DefaultMetricgroupName": "TopdownL1",
"MetricGroup": "Default;TopdownL1",
"ScaleUnit": "100percent of slots"
"ScaleUnit": "1percent of slots"
},
{
"MetricName": "retired_fraction",
"MetricExpr": "OP_RETIRED / (CPU_CYCLES * #slots)",
"MetricExpr": "100 * OP_RETIRED / (CPU_CYCLES * #slots)",
"BriefDescription": "Fraction of slots retiring, useful work",
"DefaultMetricgroupName": "TopdownL1",
"MetricGroup": "Default;TopdownL1",
"ScaleUnit": "100percent of slots"
"ScaleUnit": "1percent of slots"
},
{
"MetricName": "backend_core",
@ -266,7 +266,7 @@
},
{
"MetricName": "frontend_bandwidth",
"MetricExpr": "frontend_bound - frontend_latency",
"MetricExpr": "frontend_bound - 100 * frontend_latency",
"BriefDescription": "Fraction of slots the CPU did not dispatch at full bandwidth - able to dispatch partial slots only (1, 2, or 3 uops)",
"MetricGroup": "TopdownL2",
"ScaleUnit": "1percent of slots"