Linux Perf Users
 help / color / mirror / Atom feed
From: sashiko-bot@kernel.org
To: "Ian Rogers" <irogers@google.com>
Cc: linux-perf-users@vger.kernel.org
Subject: Re: [PATCH v2 08/26] perf vendor events intel: Update haswell metrics to TMA 5.2
Date: Thu, 24 Sep 2026 17:14:55 +0000	[thread overview]
Message-ID: <20260924171456.C76521F000FF@smtp.kernel.org> (raw)
In-Reply-To: <20260924170346.3872848-9-irogers@google.com>

Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Medium] perf: missing NO_GROUP_EVENTS_SMT constraint in tma_l3_miss_bound on Haswell
--

commit e9f96bf30aae3b71b40593d38b7093237a60c426
Author: Ian Rogers <irogers@google.com>

perf vendor events intel: Update haswell metrics to TMA 5.2

This patch updates the Haswell and Haswell-X metrics to TMA 5.2. It replaces
several older metrics, including the tma_dram_bound metric, with the new
tma_l3_miss_bound metric.

> diff --git a/tools/perf/pmu-events/arch/x86/haswell/hsw-metrics.json b/tools/perf/pmu-events/arch/x86/haswell/hsw-metrics.json
> index aebd82ced1cff..ab4ec55602235 100644
> --- a/tools/perf/pmu-events/arch/x86/haswell/hsw-metrics.json
> +++ b/tools/perf/pmu-events/arch/x86/haswell/hsw-metrics.json

[ ... ]

> @@ -669,7 +659,16 @@
>          "MetricGroup": "BvML;MemoryLat;TopdownL4;tma_L4_group;tma_issueLat;tma_l3_bound_group",
>          "MetricName": "tma_l3_hit_latency",
>          "MetricThreshold": "tma_l3_hit_latency > 0.1 & (tma_l3_bound > 0.05 & (tma_memory_bound > 0.2 & tma_backend_bound > 0.2))",
> -        "PublicDescription": "This metric estimates fraction of cycles with demand load accesses that hit the L3 cache under unloaded scenarios (possibly L3 latency limited).  Avoiding private cache misses (i.e. L2 misses/L3 hits) will improve the latency; reduce contention with sibling physical cores and increase performance.  Note the value of this node may overlap with its siblings. Sample with: MEM_LOAD_UOPS_RETIRED.L3_HIT_PS. Related metrics: tma_mem_latency",
> +        "PublicDescription": "This metric estimates fraction of cycles with demand load accesses that hit the L3 cache under unloaded scenarios (possibly L3 latency limited).  Avoiding private cache misses (i.e. L2 misses/L3 hits) will improve the latency; reduce contention with sibling physical cores and increase performance.  Note the value of this node may overlap with its siblings. Sample with: MEM_LOAD_RETIRED.L3_HIT_PS. Related metrics: tma_mem_latency",
> +        "ScaleUnit": "100%"
> +    },
> +    {
> +        "BriefDescription": "This metric estimates how often the CPU was stalled on accesses to external memory (DRAM) by loads",
> +        "MetricExpr": "(1 - MEM_LOAD_UOPS_RETIRED.L3_HIT / (MEM_LOAD_UOPS_RETIRED.L3_HIT + 7 * MEM_LOAD_UOPS_RETIRED.L3_MISS)) * CYCLE_ACTIVITY.STALLS_L2_PENDING / tma_info_thread_clks",
> +        "MetricGroup": "MemoryBound;Offcore;TmaL3mem;TopdownL3;tma_L3_group;tma_memory_bound_group",
> +        "MetricName": "tma_l3_miss_bound",

[Severity: Medium]
Does this new metric need the "MetricConstraint": "NO_GROUP_EVENTS_SMT"
entry?

The tma_l3_miss_bound metric uses MEM_LOAD_UOPS_RETIRED.* events that are
affected by an HT bug on Haswell and require exclusive hardware counter access.

If they are grouped together while SMT is enabled, perf stat group scheduling
can fail, resulting in <not counted> instead of metric results.

The previous metric it replaced (tma_dram_bound) correctly specified this
constraint to prevent this grouping failure, and a sibling metric
(tma_l3_bound) using the same events still retains it.

> +        "MetricThreshold": "tma_l3_miss_bound > 0.1 & (tma_memory_bound > 0.2 & tma_backend_bound > 0.2)",
> +        "PublicDescription": "This metric estimates how often the CPU was stalled on accesses to external memory (DRAM) by loads. Better caching can improve the latency and increase performance. Sample with: MEM_LOAD_RETIRED.L3_MISS",
>          "ScaleUnit": "100%"
>      },
>      {

> diff --git a/tools/perf/pmu-events/arch/x86/haswellx/hsx-metrics.json b/tools/perf/pmu-events/arch/x86/haswellx/hsx-metrics.json
> index b8845f8a28b95..b8eb27da46ccf 100644
> --- a/tools/perf/pmu-events/arch/x86/haswellx/hsx-metrics.json
> +++ b/tools/perf/pmu-events/arch/x86/haswellx/hsx-metrics.json

[ ... ]

> @@ -892,7 +876,16 @@
>          "MetricGroup": "BvML;MemoryLat;TopdownL4;tma_L4_group;tma_issueLat;tma_l3_bound_group",
>          "MetricName": "tma_l3_hit_latency",
>          "MetricThreshold": "tma_l3_hit_latency > 0.1 & (tma_l3_bound > 0.05 & (tma_memory_bound > 0.2 & tma_backend_bound > 0.2))",
> -        "PublicDescription": "This metric estimates fraction of cycles with demand load accesses that hit the L3 cache under unloaded scenarios (possibly L3 latency limited).  Avoiding private cache misses (i.e. L2 misses/L3 hits) will improve the latency; reduce contention with sibling physical cores and increase performance.  Note the value of this node may overlap with its siblings. Sample with: MEM_LOAD_UOPS_RETIRED.L3_HIT_PS. Related metrics: tma_mem_latency",
> +        "PublicDescription": "This metric estimates fraction of cycles with demand load accesses that hit the L3 cache under unloaded scenarios (possibly L3 latency limited).  Avoiding private cache misses (i.e. L2 misses/L3 hits) will improve the latency; reduce contention with sibling physical cores and increase performance.  Note the value of this node may overlap with its siblings. Sample with: MEM_LOAD_RETIRED.L3_HIT_PS. Related metrics: tma_mem_latency",
> +        "ScaleUnit": "100%"
> +    },
> +    {
> +        "BriefDescription": "This metric estimates how often the CPU was stalled on accesses to external memory (DRAM) by loads",
> +        "MetricExpr": "(1 - MEM_LOAD_UOPS_RETIRED.L3_HIT / (MEM_LOAD_UOPS_RETIRED.L3_HIT + 7 * MEM_LOAD_UOPS_RETIRED.L3_MISS)) * CYCLE_ACTIVITY.STALLS_L2_PENDING / tma_info_thread_clks",
> +        "MetricGroup": "MemoryBound;Offcore;TmaL3mem;TopdownL3;tma_L3_group;tma_memory_bound_group",
> +        "MetricName": "tma_l3_miss_bound",

[Severity: Medium]
Would this metric also need the "MetricConstraint": "NO_GROUP_EVENTS_SMT"
entry for the same reason?

> +        "MetricThreshold": "tma_l3_miss_bound > 0.1 & (tma_memory_bound > 0.2 & tma_backend_bound > 0.2)",
> +        "PublicDescription": "This metric estimates how often the CPU was stalled on accesses to external memory (DRAM) by loads. Better caching can improve the latency and increase performance. Sample with: MEM_LOAD_RETIRED.L3_MISS",
>          "ScaleUnit": "100%"
>      },
>      {

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20260924170346.3872848-1-irogers@google.com?part=8

  reply	other threads:[~2026-09-24 17:14 UTC|newest]

Thread overview: 102+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-09-24  5:36 [PATCH v1 00/21] perf vendor events intel: update Ian Rogers
2026-09-24  5:36 ` [PATCH v1 01/21] perf vendor events intel: Update alderlake events from 1.40 to 1.41 Ian Rogers
2026-09-24  5:40   ` sashiko-bot
2026-09-24  5:36 ` [PATCH v1 02/21] perf vendor events intel: Update alderlaken " Ian Rogers
2026-09-24  5:40   ` sashiko-bot
2026-09-24  5:36 ` [PATCH v1 03/21] perf vendor events intel: Update arrowlake events from 1.20 to 1.21 Ian Rogers
2026-09-24  5:40   ` sashiko-bot
2026-09-24  5:36 ` [PATCH v1 04/21] perf vendor events intel: Update broadwell metrics to TMA 5.2 Ian Rogers
2026-09-24  5:49   ` sashiko-bot
2026-09-24  5:36 ` [PATCH v1 05/21] perf vendor events intel: Update cascadelakex " Ian Rogers
2026-09-24  5:44   ` sashiko-bot
2026-09-24  5:36 ` [PATCH v1 06/21] perf vendor events intel: Update emeraldrapids events from 1.24 to 1.25 Ian Rogers
2026-09-24  5:40   ` sashiko-bot
2026-09-24  5:36 ` [PATCH v1 07/21] perf vendor events intel: Update graniterapids events from 1.20 to 1.21 Ian Rogers
2026-09-24  5:43   ` sashiko-bot
2026-09-24  5:36 ` [PATCH v1 08/21] perf vendor events intel: Update haswell metrics to TMA 5.2 Ian Rogers
2026-09-24  5:43   ` sashiko-bot
2026-09-24  5:36 ` [PATCH v1 09/21] perf vendor events intel: Update icelake events to 1.25 and TMA metrics to 5.2 Ian Rogers
2026-09-24  5:43   ` sashiko-bot
2026-09-24  5:36 ` [PATCH v1 10/21] perf vendor events intel: Update icelakex events to 1.31 " Ian Rogers
2026-09-24  5:42   ` sashiko-bot
2026-09-24  5:36 ` [PATCH v1 11/21] perf vendor events intel: Update ivybridge metrics to TMA 5.2 Ian Rogers
2026-09-24  5:44   ` sashiko-bot
2026-09-24  5:36 ` [PATCH v1 12/21] perf vendor events intel: Update ivytown " Ian Rogers
2026-09-24  5:43   ` sashiko-bot
2026-09-24  5:36 ` [PATCH v1 13/21] perf vendor events intel: Update jaketown " Ian Rogers
2026-09-24  5:47   ` sashiko-bot
2026-09-24  5:36 ` [PATCH v1 14/21] perf vendor events intel: Update meteorlake events from 1.22 to 1.23 Ian Rogers
2026-09-24  5:41   ` sashiko-bot
2026-09-24  5:36 ` [PATCH v1 15/21] perf vendor events intel: Update novalake events from 1.00 to 1.04 Ian Rogers
2026-09-24  5:49   ` sashiko-bot
2026-09-24 14:14     ` Ian Rogers
2026-09-24  5:36 ` [PATCH v1 16/21] perf vendor events intel: Update pantherlake events from 1.07 to 1.08 Ian Rogers
2026-09-24  5:41   ` sashiko-bot
2026-09-24  5:36 ` [PATCH v1 17/21] perf vendor events intel: Update rocketlake events from 1.04 to 1.06 Ian Rogers
2026-09-24  5:41   ` sashiko-bot
2026-09-24  5:36 ` [PATCH v1 18/21] perf vendor events intel: Update sandybridge metrics to TMA 5.2 Ian Rogers
2026-09-24  5:47   ` sashiko-bot
2026-09-24  5:36 ` [PATCH v1 19/21] perf vendor events intel: Update sapphirerapids events from 1.39 to 1.40 Ian Rogers
2026-09-24  5:44   ` sashiko-bot
2026-09-24  5:36 ` [PATCH v1 20/21] perf vendor events intel: Update skylake metrics to TMA 5.2 Ian Rogers
2026-09-24  5:46   ` sashiko-bot
2026-09-24  5:36 ` [PATCH v1 21/21] perf vendor events intel: Update tigerlake events to 1.20 and TMA metrics to 5.2 Ian Rogers
2026-09-24  5:46   ` sashiko-bot
2026-09-24  8:45 ` [PATCH v1 00/21] perf vendor events intel: update Mi, Dapeng
2026-09-24 17:03 ` [PATCH v2 00/26] " Ian Rogers
2026-09-24 17:03   ` [PATCH v2 01/26] perf vendor events intel: Update alderlake events from 1.40 to 1.41 Ian Rogers
2026-09-24 17:06     ` sashiko-bot
2026-09-24 17:03   ` [PATCH v2 02/26] perf vendor events intel: Update alderlaken " Ian Rogers
2026-09-24 17:06     ` sashiko-bot
2026-09-24 17:03   ` [PATCH v2 03/26] perf vendor events intel: Update arrowlake events from 1.20 to 1.21 Ian Rogers
2026-09-24 17:08     ` sashiko-bot
2026-09-24 17:03   ` [PATCH v2 04/26] perf vendor events intel: Update broadwell metrics to TMA 5.2 Ian Rogers
2026-09-24 17:14     ` sashiko-bot
2026-09-28 16:49       ` Arnaldo Carvalho de Melo
2026-09-28 16:54         ` Ian Rogers
2026-09-28 17:01           ` Arnaldo Carvalho de Melo
2026-09-24 17:03   ` [PATCH v2 05/26] perf vendor events intel: Update cascadelakex " Ian Rogers
2026-09-24 17:12     ` sashiko-bot
2026-09-24 17:03   ` [PATCH v2 06/26] perf vendor events intel: Update emeraldrapids events from 1.24 to 1.25 Ian Rogers
2026-09-24 17:10     ` sashiko-bot
2026-09-24 17:03   ` [PATCH v2 07/26] perf vendor events intel: Update graniterapids events from 1.20 to 1.21 Ian Rogers
2026-09-24 17:09     ` sashiko-bot
2026-09-24 17:03   ` [PATCH v2 08/26] perf vendor events intel: Update haswell metrics to TMA 5.2 Ian Rogers
2026-09-24 17:14     ` sashiko-bot [this message]
2026-09-24 17:03   ` [PATCH v2 09/26] perf vendor events intel: Update icelake events to 1.25 and TMA metrics to 5.2 Ian Rogers
2026-09-24 17:11     ` sashiko-bot
2026-09-24 17:03   ` [PATCH v2 10/26] perf vendor events intel: Update icelakex events to 1.31 " Ian Rogers
2026-09-24 17:08     ` sashiko-bot
2026-09-24 17:03   ` [PATCH v2 11/26] perf vendor events intel: Update ivybridge metrics to TMA 5.2 Ian Rogers
2026-09-24 17:07     ` sashiko-bot
2026-09-24 17:03   ` [PATCH v2 12/26] perf vendor events intel: Update ivytown " Ian Rogers
2026-09-24 17:11     ` sashiko-bot
2026-09-24 17:03   ` [PATCH v2 13/26] perf vendor events intel: Update jaketown " Ian Rogers
2026-09-24 17:13     ` sashiko-bot
2026-09-24 17:03   ` [PATCH v2 14/26] perf vendor events intel: Update meteorlake events from 1.22 to 1.23 Ian Rogers
2026-09-24 17:06     ` sashiko-bot
2026-09-24 17:03   ` [PATCH v2 15/26] perf vendor events intel: Update novalake events from 1.00 to 1.04 Ian Rogers
2026-09-24 17:06     ` sashiko-bot
2026-09-28  1:04     ` Mi, Dapeng
2026-09-24 17:03   ` [PATCH v2 16/26] perf vendor events intel: Update pantherlake events from 1.07 to 1.08 Ian Rogers
2026-09-24 17:08     ` sashiko-bot
2026-09-24 17:03   ` [PATCH v2 17/26] perf vendor events intel: Update rocketlake events from 1.04 to 1.06 Ian Rogers
2026-09-24 17:08     ` sashiko-bot
2026-09-24 17:03   ` [PATCH v2 18/26] perf vendor events intel: Update sandybridge metrics to TMA 5.2 Ian Rogers
2026-09-24 17:11     ` sashiko-bot
2026-09-24 17:03   ` [PATCH v2 19/26] perf vendor events intel: Update sapphirerapids events from 1.39 to 1.40 Ian Rogers
2026-09-24 17:10     ` sashiko-bot
2026-09-24 17:03   ` [PATCH v2 20/26] perf vendor events intel: Update skylake metrics to TMA 5.2 Ian Rogers
2026-09-24 17:11     ` sashiko-bot
2026-09-24 17:03   ` [PATCH v2 21/26] perf vendor events intel: Update tigerlake events to 1.20 and TMA metrics to 5.2 Ian Rogers
2026-09-24 17:11     ` sashiko-bot
2026-09-24 17:03   ` [PATCH v2 22/26] perf vendor events intel: Fix clearwaterforest umask encoding Ian Rogers
2026-09-24 17:11     ` sashiko-bot
2026-09-24 17:03   ` [PATCH v2 23/26] perf vendor events intel: Fix lunarlake " Ian Rogers
2026-09-24 17:19     ` sashiko-bot
2026-09-24 17:03   ` [PATCH v2 24/26] perf vendor events intel: Fix sierraforest " Ian Rogers
2026-09-24 17:11     ` sashiko-bot
2026-09-24 17:03   ` [PATCH v2 25/26] perf vendor events intel: Fix skylakex " Ian Rogers
2026-09-24 17:14     ` sashiko-bot
2026-09-24 17:03   ` [PATCH v2 26/26] perf vendor events intel: Fix snowridgex " Ian Rogers
2026-09-24 17:14     ` sashiko-bot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260924171456.C76521F000FF@smtp.kernel.org \
    --to=sashiko-bot@kernel.org \
    --cc=irogers@google.com \
    --cc=linux-perf-users@vger.kernel.org \
    --cc=sashiko-reviews@lists.linux.dev \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox