linux-perf-users.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Ian Rogers <irogers@google.com>
To: Peter Zijlstra <peterz@infradead.org>,
	Ingo Molnar <mingo@redhat.com>,
	 Arnaldo Carvalho de Melo <acme@kernel.org>,
	Namhyung Kim <namhyung@kernel.org>,
	 Mark Rutland <mark.rutland@arm.com>,
	 Alexander Shishkin <alexander.shishkin@linux.intel.com>,
	Jiri Olsa <jolsa@kernel.org>,  Ian Rogers <irogers@google.com>,
	Adrian Hunter <adrian.hunter@intel.com>,
	 Kan Liang <kan.liang@linux.intel.com>,
	linux-kernel@vger.kernel.org,  linux-perf-users@vger.kernel.org,
	Perry Taylor <perry.taylor@intel.com>,
	 Samantha Alt <samantha.alt@intel.com>,
	Caleb Biggers <caleb.biggers@intel.com>,
	 Weilin Wang <weilin.wang@intel.com>,
	Edward Baker <edward.baker@intel.com>
Cc: Stephane Eranian <eranian@google.com>
Subject: [PATCH v1 00/30] perf vendor event and TMA 4.7 metric update
Date: Tue, 13 Feb 2024 17:17:49 -0800	[thread overview]
Message-ID: <20240214011820.644458-1-irogers@google.com> (raw)

The first 12 patches update vendor events to those in:
https://github.com/intel/perfmon

The next 18 patches update the TMA metrics from version 4.5 to version
4.7. This includes improvements to many models like the
tma_info_bottleneck* metrics, an abstraction or summarization of the
100+ TMA tree nodes into 12-entry familiar performance metrics.

The update was possible due to the release of TMA 4.7 metrics in:
  https://github.com/intel/perfmon/pull/140
  https://github.com/intel/perfmon/pull/138

Pull request:
https://github.com/intel/perfmon/pull/144
was applied to the converter script. This PR adds back CORE_CLKS as in
TMA metrics 4.5 for pre-Icelake models. This avoids an issue running
perf stat not in system wide mode where pre-Icelake models need to
scale the slots dependent on what the other hyperthread is doing (via
the event CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE - later models have a
slots counter for this). This is a known not accurate thing to do,
hence the removal from TMA 4.7, but perf would allow the use of the
metric not in system wide mode and report a metric with value. It
seemed better to give a more accurate number in not system wide mode,
possibly induce multiplexing, and have the TMA 4.5 behavior. We can
later update the behavior to be NaN [1] when not in system wide mode
to avoid broken usage. The not system wide mode in the TMA 4.5
spreadsheet is known as "#EBS_Mode" and is detected in perf json with
the "#core_wide" literal.

[1] https://lore.kernel.org/lkml/20240209204947.3873294-2-irogers@google.com/

Ian Rogers (30):
  perf vendor events intel: Update alderlake events to v1.24
  perf vendor events intel: Update alderlaken events to v1.24
  perf vendor events intel: Update broadwell events to v29
  perf vendor events intel: Update emeraldrapids events to v1.03
  perf vendor events intel: Update grandridge events to v1.01
  perf vendor events intel: Update haswell events to v35
  perf vendor events intel: Update icelake events to v1.21
  perf vendor events intel: Update meteorlake events to v1.07
  perf vendor events intel: Update rocketlake events to v1.02
  perf vendor events intel: Update sierraforst events to v1.01
  perf vendor events intel: Update skylake events to v58
  perf vendor events intel: Update tigerlake events to v1.15
  perf vendor events intel: Update alderlake TMA metrics to 4.7
  perf vendor events intel: Update broadwell TMA metrics to 4.7
  perf vendor events intel: Update broadwellde TMA metrics to 4.7
  perf vendor events intel: Update broadwellx TMA metrics to 4.7
  perf vendor events intel: Update cascadelakex TMA metrics to 4.7
  perf vendor events intel: Update haswell TMA metrics to 4.7
  perf vendor events intel: Update haswellx TMA metrics to 4.7
  perf vendor events intel: Update icelake TMA metrics to 4.7
  perf vendor events intel: Update icelakex TMA metrics to 4.7
  perf vendor events intel: Update ivybridge TMA metrics to 4.7
  perf vendor events intel: Update ivytown TMA metrics to 4.7
  perf vendor events intel: Update jaketown TMA metrics to 4.7
  perf vendor events intel: Update rocketlake TMA metrics to 4.7
  perf vendor events intel: Update sandybridge TMA metrics to 4.7
  perf vendor events intel: Update sapphirerapids TMA metrics to 4.7
  perf vendor events intel: Update skylake TMA metrics to 4.7
  perf vendor events intel: Update skylakex TMA metrics to 4.7
  perf vendor events intel: Update tigerlake TMA metrics to 4.7

 .../arch/x86/alderlake/adl-metrics.json       |  459 ++-
 .../arch/x86/alderlake/floating-point.json    |   30 +-
 .../arch/x86/alderlake/metricgroups.json      |   11 +-
 .../pmu-events/arch/x86/alderlake/other.json  |   10 +
 .../arch/x86/alderlake/pipeline.json          |   13 +
 .../pmu-events/arch/x86/alderlaken/other.json |    9 +
 .../arch/x86/alderlaken/pipeline.json         |    9 +
 .../arch/x86/broadwell/bdw-metrics.json       |  204 +-
 .../pmu-events/arch/x86/broadwell/memory.json |    2 +-
 .../arch/x86/broadwell/metricgroups.json      |    7 +-
 .../arch/x86/broadwellde/bdwde-metrics.json   |  191 +-
 .../arch/x86/broadwellde/metricgroups.json    |    7 +-
 .../arch/x86/broadwellx/bdx-metrics.json      |  250 +-
 .../arch/x86/broadwellx/metricgroups.json     |    7 +-
 .../arch/x86/cascadelakex/clx-metrics.json    |  566 +++-
 .../arch/x86/cascadelakex/metricgroups.json   |   12 +-
 .../arch/x86/emeraldrapids/uncore-cache.json  |  152 +
 .../pmu-events/arch/x86/grandridge/cache.json |  185 ++
 .../arch/x86/grandridge/floating-point.json   |   68 +
 .../arch/x86/grandridge/frontend.json         |   16 +
 .../arch/x86/grandridge/memory.json           |   66 +
 .../pmu-events/arch/x86/grandridge/other.json |   16 +
 .../arch/x86/grandridge/pipeline.json         |  353 ++
 .../arch/x86/grandridge/uncore-cache.json     | 1795 +++++++++++
 .../x86/grandridge/uncore-interconnect.json   |  175 +
 .../arch/x86/grandridge/uncore-io.json        | 1187 +++++++
 .../arch/x86/grandridge/uncore-memory.json    |  385 +++
 .../arch/x86/grandridge/uncore-power.json     |   10 +
 .../arch/x86/grandridge/virtual-memory.json   |  113 +-
 .../arch/x86/haswell/hsw-metrics.json         |  178 +-
 .../pmu-events/arch/x86/haswell/memory.json   |    2 +-
 .../arch/x86/haswell/metricgroups.json        |    7 +-
 .../arch/x86/haswellx/hsx-metrics.json        |  224 +-
 .../arch/x86/haswellx/metricgroups.json       |    7 +-
 .../arch/x86/icelake/icl-metrics.json         |  398 ++-
 .../pmu-events/arch/x86/icelake/memory.json   |    1 +
 .../arch/x86/icelake/metricgroups.json        |   12 +-
 .../pmu-events/arch/x86/icelake/other.json    |    2 +-
 .../pmu-events/arch/x86/icelake/pipeline.json |   10 +-
 .../arch/x86/icelakex/icx-metrics.json        |  586 +++-
 .../arch/x86/icelakex/metricgroups.json       |   12 +-
 .../arch/x86/ivybridge/ivb-metrics.json       |  197 +-
 .../arch/x86/ivybridge/metricgroups.json      |    7 +-
 .../arch/x86/ivytown/ivt-metrics.json         |  200 +-
 .../arch/x86/ivytown/metricgroups.json        |    7 +-
 .../arch/x86/jaketown/jkt-metrics.json        |   64 +-
 .../arch/x86/jaketown/metricgroups.json       |    7 +-
 tools/perf/pmu-events/arch/x86/mapfile.csv    |   24 +-
 .../pmu-events/arch/x86/meteorlake/cache.json |    8 +-
 .../arch/x86/meteorlake/floating-point.json   |   86 +-
 .../pmu-events/arch/x86/meteorlake/other.json |   10 +
 .../arch/x86/meteorlake/pipeline.json         |   76 +
 .../arch/x86/meteorlake/virtual-memory.json   |   36 +
 .../arch/x86/rocketlake/memory.json           |    1 +
 .../arch/x86/rocketlake/metricgroups.json     |   12 +-
 .../pmu-events/arch/x86/rocketlake/other.json |    2 +-
 .../arch/x86/rocketlake/pipeline.json         |   10 +-
 .../arch/x86/rocketlake/rkl-metrics.json      |  406 ++-
 .../arch/x86/sandybridge/metricgroups.json    |    7 +-
 .../arch/x86/sandybridge/snb-metrics.json     |   71 +-
 .../arch/x86/sapphirerapids/metricgroups.json |   12 +-
 .../arch/x86/sapphirerapids/spr-metrics.json  |  773 +++--
 .../arch/x86/sierraforest/cache.json          |  185 ++
 .../arch/x86/sierraforest/floating-point.json |   68 +
 .../arch/x86/sierraforest/frontend.json       |   16 +
 .../arch/x86/sierraforest/memory.json         |   66 +
 .../arch/x86/sierraforest/other.json          |   16 +
 .../arch/x86/sierraforest/pipeline.json       |  360 +++
 .../arch/x86/sierraforest/uncore-cache.json   | 2853 +++++++++++++++++
 .../arch/x86/sierraforest/uncore-cxl.json     |   10 +
 .../x86/sierraforest/uncore-interconnect.json | 1228 +++++++
 .../arch/x86/sierraforest/uncore-io.json      | 1634 ++++++++++
 .../arch/x86/sierraforest/uncore-memory.json  |  385 +++
 .../arch/x86/sierraforest/uncore-power.json   |   10 +
 .../arch/x86/sierraforest/virtual-memory.json |  113 +-
 .../pmu-events/arch/x86/skylake/memory.json   |    2 +-
 .../arch/x86/skylake/metricgroups.json        |   12 +-
 .../pmu-events/arch/x86/skylake/pipeline.json |    2 +-
 .../arch/x86/skylake/skl-metrics.json         |  395 ++-
 .../arch/x86/skylake/virtual-memory.json      |    2 +-
 .../arch/x86/skylakex/metricgroups.json       |   12 +-
 .../arch/x86/skylakex/skx-metrics.json        |  548 +++-
 .../arch/x86/tigerlake/metricgroups.json      |   12 +-
 .../pmu-events/arch/x86/tigerlake/other.json  |    2 +-
 .../arch/x86/tigerlake/pipeline.json          |   10 +-
 .../arch/x86/tigerlake/tgl-metrics.json       |  406 ++-
 .../x86/tigerlake/uncore-interconnect.json    |    2 +
 87 files changed, 15763 insertions(+), 2349 deletions(-)
 create mode 100644 tools/perf/pmu-events/arch/x86/grandridge/floating-point.json
 create mode 100644 tools/perf/pmu-events/arch/x86/grandridge/uncore-cache.json
 create mode 100644 tools/perf/pmu-events/arch/x86/grandridge/uncore-interconnect.json
 create mode 100644 tools/perf/pmu-events/arch/x86/grandridge/uncore-io.json
 create mode 100644 tools/perf/pmu-events/arch/x86/grandridge/uncore-memory.json
 create mode 100644 tools/perf/pmu-events/arch/x86/grandridge/uncore-power.json
 create mode 100644 tools/perf/pmu-events/arch/x86/sierraforest/floating-point.json
 create mode 100644 tools/perf/pmu-events/arch/x86/sierraforest/uncore-cache.json
 create mode 100644 tools/perf/pmu-events/arch/x86/sierraforest/uncore-cxl.json
 create mode 100644 tools/perf/pmu-events/arch/x86/sierraforest/uncore-interconnect.json
 create mode 100644 tools/perf/pmu-events/arch/x86/sierraforest/uncore-io.json
 create mode 100644 tools/perf/pmu-events/arch/x86/sierraforest/uncore-memory.json
 create mode 100644 tools/perf/pmu-events/arch/x86/sierraforest/uncore-power.json

-- 
2.43.0.687.g38aa6559b0-goog


             reply	other threads:[~2024-02-14  1:18 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-02-14  1:17 Ian Rogers [this message]
2024-02-14  1:17 ` [PATCH v1 01/30] perf vendor events intel: Update alderlake events to v1.24 Ian Rogers
2024-02-14  1:17 ` [PATCH v1 02/30] perf vendor events intel: Update alderlaken " Ian Rogers
2024-02-14  1:17 ` [PATCH v1 03/30] perf vendor events intel: Update broadwell events to v29 Ian Rogers
2024-02-14  1:17 ` [PATCH v1 04/30] perf vendor events intel: Update emeraldrapids events to v1.03 Ian Rogers
2024-02-14  1:17 ` [PATCH v1 05/30] perf vendor events intel: Update grandridge events to v1.01 Ian Rogers
2024-02-14  1:17 ` [PATCH v1 06/30] perf vendor events intel: Update haswell events to v35 Ian Rogers
2024-02-14  1:17 ` [PATCH v1 07/30] perf vendor events intel: Update icelake events to v1.21 Ian Rogers
2024-02-14  1:17 ` [PATCH v1 08/30] perf vendor events intel: Update meteorlake events to v1.07 Ian Rogers
2024-02-14  1:17 ` [PATCH v1 09/30] perf vendor events intel: Update rocketlake events to v1.02 Ian Rogers
2024-02-14  1:17 ` [PATCH v1 10/30] perf vendor events intel: Update sierraforst events to v1.01 Ian Rogers
2024-02-14  1:18 ` [PATCH v1 11/30] perf vendor events intel: Update skylake events to v58 Ian Rogers
2024-02-14  1:18 ` [PATCH v1 12/30] perf vendor events intel: Update tigerlake events to v1.15 Ian Rogers
2024-02-14  1:18 ` [PATCH v1 13/30] perf vendor events intel: Update alderlake TMA metrics to 4.7 Ian Rogers
2024-02-14  1:18 ` [PATCH v1 14/30] perf vendor events intel: Update broadwell " Ian Rogers
2024-02-14  1:18 ` [PATCH v1 15/30] perf vendor events intel: Update broadwellde " Ian Rogers
2024-02-14  1:18 ` [PATCH v1 16/30] perf vendor events intel: Update broadwellx " Ian Rogers
2024-02-14  1:18 ` [PATCH v1 17/30] perf vendor events intel: Update cascadelakex " Ian Rogers
2024-02-14  1:18 ` [PATCH v1 18/30] perf vendor events intel: Update haswell " Ian Rogers
2024-02-14  1:18 ` [PATCH v1 19/30] perf vendor events intel: Update haswellx " Ian Rogers
2024-02-14  1:18 ` [PATCH v1 20/30] perf vendor events intel: Update icelake " Ian Rogers
2024-02-14  1:18 ` [PATCH v1 21/30] perf vendor events intel: Update icelakex " Ian Rogers
2024-02-14  1:18 ` [PATCH v1 22/30] perf vendor events intel: Update ivybridge " Ian Rogers
2024-02-14  1:18 ` [PATCH v1 23/30] perf vendor events intel: Update ivytown " Ian Rogers
2024-02-14  1:18 ` [PATCH v1 24/30] perf vendor events intel: Update jaketown " Ian Rogers
2024-02-14  1:18 ` [PATCH v1 25/30] perf vendor events intel: Update rocketlake " Ian Rogers
2024-02-14  1:18 ` [PATCH v1 26/30] perf vendor events intel: Update sandybridge " Ian Rogers
2024-02-14  1:18 ` [PATCH v1 27/30] perf vendor events intel: Update sapphirerapids " Ian Rogers
2024-02-14  1:18 ` [PATCH v1 28/30] perf vendor events intel: Update skylake " Ian Rogers
2024-02-14  1:18 ` [PATCH v1 29/30] perf vendor events intel: Update skylakex " Ian Rogers
2024-02-14  1:18 ` [PATCH v1 30/30] perf vendor events intel: Update tigerlake " Ian Rogers
2024-02-14 15:44 ` [PATCH v1 00/30] perf vendor event and TMA 4.7 metric update Liang, Kan
2024-02-21  1:59 ` Namhyung Kim

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=20240214011820.644458-1-irogers@google.com \
    --to=irogers@google.com \
    --cc=acme@kernel.org \
    --cc=adrian.hunter@intel.com \
    --cc=alexander.shishkin@linux.intel.com \
    --cc=caleb.biggers@intel.com \
    --cc=edward.baker@intel.com \
    --cc=eranian@google.com \
    --cc=jolsa@kernel.org \
    --cc=kan.liang@linux.intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-perf-users@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=mingo@redhat.com \
    --cc=namhyung@kernel.org \
    --cc=perry.taylor@intel.com \
    --cc=peterz@infradead.org \
    --cc=samantha.alt@intel.com \
    --cc=weilin.wang@intel.com \
    /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;
as well as URLs for NNTP newsgroup(s).