Metrics will be published here [1] going forwards, but they have
slightly different scale units. To allow autogenerated metrics to be
added more easily, update the scale units to match.
The more detailed descriptions have also been taken and added to the
common file.
[1]: https://gitlab.arm.com/telemetry-solution/telemetry-solution/-/tree/main/data/pmu/cpu/
Acked-by: Ian Rogers <irogers@google.com>
Reviewed-by: John Garry <john.g.garry@oracle.com>
Signed-off-by: James Clark <james.clark@arm.com>
---
tools/perf/pmu-events/arch/arm64/sbsa.json | 24 +++++++++++-----------
1 file changed, 12 insertions(+), 12 deletions(-)
diff --git a/tools/perf/pmu-events/arch/arm64/sbsa.json b/tools/perf/pmu-events/arch/arm64/sbsa.json
index f90b338261ac..4eed79a28f6e 100644
--- a/tools/perf/pmu-events/arch/arm64/sbsa.json
+++ b/tools/perf/pmu-events/arch/arm64/sbsa.json
@@ -1,34 +1,34 @@
[
{
- "MetricExpr": "stall_slot_frontend / (#slots * cpu_cycles)",
- "BriefDescription": "Frontend bound L1 topdown metric",
+ "MetricExpr": "100 * (stall_slot_frontend / (#slots * cpu_cycles))",
+ "BriefDescription": "This metric is the percentage of total slots that were stalled due to resource constraints in the frontend of the processor.",
"DefaultMetricgroupName": "TopdownL1",
"MetricGroup": "Default;TopdownL1",
"MetricName": "frontend_bound",
- "ScaleUnit": "100%"
+ "ScaleUnit": "1percent of slots"
},
{
- "MetricExpr": "(1 - op_retired / op_spec) * (1 - stall_slot / (#slots * cpu_cycles))",
- "BriefDescription": "Bad speculation L1 topdown metric",
+ "MetricExpr": "100 * ((1 - op_retired / op_spec) * (1 - stall_slot / (#slots * cpu_cycles)))",
+ "BriefDescription": "This metric is the percentage of total slots that executed operations and didn't retire due to a pipeline flush.\nThis indicates cycles that were utilized but inefficiently.",
"DefaultMetricgroupName": "TopdownL1",
"MetricGroup": "Default;TopdownL1",
"MetricName": "bad_speculation",
- "ScaleUnit": "100%"
+ "ScaleUnit": "1percent of slots"
},
{
- "MetricExpr": "(op_retired / op_spec) * (1 - stall_slot / (#slots * cpu_cycles))",
- "BriefDescription": "Retiring L1 topdown metric",
+ "MetricExpr": "100 * ((op_retired / op_spec) * (1 - stall_slot / (#slots * cpu_cycles)))",
+ "BriefDescription": "This metric is the percentage of total slots that retired operations, which indicates cycles that were utilized efficiently.",
"DefaultMetricgroupName": "TopdownL1",
"MetricGroup": "Default;TopdownL1",
"MetricName": "retiring",
- "ScaleUnit": "100%"
+ "ScaleUnit": "1percent of slots"
},
{
- "MetricExpr": "stall_slot_backend / (#slots * cpu_cycles)",
- "BriefDescription": "Backend Bound L1 topdown metric",
+ "MetricExpr": "100 * (stall_slot_backend / (#slots * cpu_cycles))",
+ "BriefDescription": "This metric is the percentage of total slots that were stalled due to resource constraints in the backend of the processor.",
"DefaultMetricgroupName": "TopdownL1",
"MetricGroup": "Default;TopdownL1",
"MetricName": "backend_bound",
- "ScaleUnit": "100%"
+ "ScaleUnit": "1percent of slots"
}
]
--
2.34.1
Em Wed, Aug 16, 2023 at 12:47:45PM +0100, James Clark escreveu: > Metrics will be published here [1] going forwards, but they have > slightly different scale units. To allow autogenerated metrics to be > added more easily, update the scale units to match. > > The more detailed descriptions have also been taken and added to the > common file. > > [1]: https://gitlab.arm.com/telemetry-solution/telemetry-solution/-/tree/main/data/pmu/cpu/ This one I had cherry-picked and is already in perf-tools-next, I applied the others locally, will wait till later to see if people ack/object. - Arnaldo > Acked-by: Ian Rogers <irogers@google.com> > Reviewed-by: John Garry <john.g.garry@oracle.com> > Signed-off-by: James Clark <james.clark@arm.com> > --- > tools/perf/pmu-events/arch/arm64/sbsa.json | 24 +++++++++++----------- > 1 file changed, 12 insertions(+), 12 deletions(-) > > diff --git a/tools/perf/pmu-events/arch/arm64/sbsa.json b/tools/perf/pmu-events/arch/arm64/sbsa.json > index f90b338261ac..4eed79a28f6e 100644 > --- a/tools/perf/pmu-events/arch/arm64/sbsa.json > +++ b/tools/perf/pmu-events/arch/arm64/sbsa.json > @@ -1,34 +1,34 @@ > [ > { > - "MetricExpr": "stall_slot_frontend / (#slots * cpu_cycles)", > - "BriefDescription": "Frontend bound L1 topdown metric", > + "MetricExpr": "100 * (stall_slot_frontend / (#slots * cpu_cycles))", > + "BriefDescription": "This metric is the percentage of total slots that were stalled due to resource constraints in the frontend of the processor.", > "DefaultMetricgroupName": "TopdownL1", > "MetricGroup": "Default;TopdownL1", > "MetricName": "frontend_bound", > - "ScaleUnit": "100%" > + "ScaleUnit": "1percent of slots" > }, > { > - "MetricExpr": "(1 - op_retired / op_spec) * (1 - stall_slot / (#slots * cpu_cycles))", > - "BriefDescription": "Bad speculation L1 topdown metric", > + "MetricExpr": "100 * ((1 - op_retired / op_spec) * (1 - stall_slot / (#slots * cpu_cycles)))", > + "BriefDescription": "This metric is the percentage of total slots that executed operations and didn't retire due to a pipeline flush.\nThis indicates cycles that were utilized but inefficiently.", > "DefaultMetricgroupName": "TopdownL1", > "MetricGroup": "Default;TopdownL1", > "MetricName": "bad_speculation", > - "ScaleUnit": "100%" > + "ScaleUnit": "1percent of slots" > }, > { > - "MetricExpr": "(op_retired / op_spec) * (1 - stall_slot / (#slots * cpu_cycles))", > - "BriefDescription": "Retiring L1 topdown metric", > + "MetricExpr": "100 * ((op_retired / op_spec) * (1 - stall_slot / (#slots * cpu_cycles)))", > + "BriefDescription": "This metric is the percentage of total slots that retired operations, which indicates cycles that were utilized efficiently.", > "DefaultMetricgroupName": "TopdownL1", > "MetricGroup": "Default;TopdownL1", > "MetricName": "retiring", > - "ScaleUnit": "100%" > + "ScaleUnit": "1percent of slots" > }, > { > - "MetricExpr": "stall_slot_backend / (#slots * cpu_cycles)", > - "BriefDescription": "Backend Bound L1 topdown metric", > + "MetricExpr": "100 * (stall_slot_backend / (#slots * cpu_cycles))", > + "BriefDescription": "This metric is the percentage of total slots that were stalled due to resource constraints in the backend of the processor.", > "DefaultMetricgroupName": "TopdownL1", > "MetricGroup": "Default;TopdownL1", > "MetricName": "backend_bound", > - "ScaleUnit": "100%" > + "ScaleUnit": "1percent of slots" > } > ] > -- > 2.34.1 > -- - Arnaldo
© 2016 - 2025 Red Hat, Inc.