[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20250829033138.4166591-14-irogers@google.com>
Date: Thu, 28 Aug 2025 20:31:38 -0700
From: Ian Rogers <irogers@...gle.com>
To: Peter Zijlstra <peterz@...radead.org>, Ingo Molnar <mingo@...hat.com>,
Arnaldo Carvalho de Melo <acme@...nel.org>, Namhyung Kim <namhyung@...nel.org>,
Mark Rutland <mark.rutland@....com>,
Alexander Shishkin <alexander.shishkin@...ux.intel.com>, Jiri Olsa <jolsa@...nel.org>,
Ian Rogers <irogers@...gle.com>, Adrian Hunter <adrian.hunter@...el.com>,
Kan Liang <kan.liang@...ux.intel.com>, James Clark <james.clark@...aro.org>,
Xu Yang <xu.yang_2@....com>, linux-kernel@...r.kernel.org,
linux-perf-users@...r.kernel.org, John Garry <john.g.garry@...cle.com>,
Jing Zhang <renyu.zj@...ux.alibaba.com>, Sandipan Das <sandipan.das@....com>,
Benjamin Gray <bgray@...ux.ibm.com>
Subject: [PATCH v5 13/13] perf jevents: Add uop cache hit/miss rates for AMD
Add metrics giving ratio of uop cache hits to misses.
Signed-off-by: Ian Rogers <irogers@...gle.com>
---
tools/perf/pmu-events/amd_metrics.py | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
diff --git a/tools/perf/pmu-events/amd_metrics.py b/tools/perf/pmu-events/amd_metrics.py
index 0578ca7fdf92..d51f4c3fe0cb 100755
--- a/tools/perf/pmu-events/amd_metrics.py
+++ b/tools/perf/pmu-events/amd_metrics.py
@@ -571,6 +571,23 @@ def AmdSwpf() -> Optional[MetricGroup]:
description="Software prefetch breakdown (CCX L3 = L3 of current thread, Loc CCX = CCX cache on some socket)")
+def AmdUopCache() -> Optional[MetricGroup]:
+ try:
+ op_cache_hit = Event("op_cache_hit_miss.op_cache_hit")
+ op_cache_miss = Event("op_cache_hit_miss.op_cache_miss")
+ except:
+ return None
+ op_cache_total = op_cache_hit + op_cache_miss
+ return MetricGroup("lpm_uop_cache", [
+ Metric("lpm_uop_cache_hit_ratio", "Uop cache full or partial hits rate",
+ d_ratio(op_cache_hit, op_cache_total),
+ "100%"),
+ Metric("lpm_uop_cache_miss_ratio", "Uop cache misses rate",
+ d_ratio(op_cache_miss, op_cache_total),
+ "100%"),
+ ], description="Micro-op (uop) hit and miss rates.")
+
+
def AmdUpc() -> Metric:
ops = Event("ex_ret_ops", "ex_ret_cops")
upc = d_ratio(ops, smt_cycles)
@@ -657,6 +674,7 @@ def main() -> None:
AmdLdSt(),
AmdHwpf(),
AmdSwpf(),
+ AmdUopCache(),
AmdUpc(),
Idle(),
Rapl(),
--
2.51.0.318.gd7df087d1a-goog
Powered by blists - more mailing lists