linux-perf-users.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v6 00/15] perf c2c: Support data source and display for Arm64
@ 2022-08-11  6:24 Leo Yan
  2022-08-11  6:24 ` [PATCH v6 01/15] perf tools: sync addition of PERF_MEM_SNOOPX_PEER Leo Yan
                   ` (15 more replies)
  0 siblings, 16 replies; 20+ messages in thread
From: Leo Yan @ 2022-08-11  6:24 UTC (permalink / raw)
  To: Arnaldo Carvalho de Melo, Peter Zijlstra, Ingo Molnar,
	Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
	John Garry, Will Deacon, James Clark, Mike Leach, Kajol Jain,
	Ali Saidi, Adrian Hunter, Gustavo A. R. Silva, Anshuman Khandual,
	Ian Rogers, Like Xu, German Gomez, Timothy Hayes, linux-kernel,
	linux-perf-users, linux-arm-kernel
  Cc: Leo Yan

Arm64 Neoverse CPUs supports data source in Arm SPE trace, this allows
us to detect cache line contention and transfers.

This patch set has been rebased on the acme/perf/core branch with the latest
commit b39c9e1b101d ("perf machine: Fix missing free of
machine->kallsyms_filename").

To make building success, a compilation fixing commit [1] has been sent
to LKML, this patch set is dependent on it.  This patch set has been verified
for both x86 perf memory events and Arm SPE events.

[1] https://lore.kernel.org/lkml/20220811044341.426796-1-leo.yan@linaro.org/

Changes from v5:
* Removed the patch "perf: Add SNOOP_PEER flag to perf mem data struct"
  (Arnaldo);
* Removed the patch "perf arm-spe: Don't set data source if it's not a
  memory operation" which has been merged in the mainline kernel, so can
  dismiss merging conflict.
* Rebased on the latest acme perf/core branch, no any code change
  compared to previous version.

Changes from v4:
* Included Ali's patch set for adding data source in Arm SPE samples;
* Added Ian's ACK and Ali's review and test tags;
* Update document for the default peer dispaly for Arm64 (Ali).

Changes from v3:
* Changed to display remote and local peer accesses (Joe);
* Fixed the usage info for display types (Joe);
* Do not display HITM dimensions when use 'peer' display, and HITM
  display doesn't show any 'peer' dimensions (James);
* Split to smaller patches for adding dimensions of peer operations;
* Updated documentation to reflect the latest GUI and stdio.


Ali Saidi (2):
  perf tools: sync addition of PERF_MEM_SNOOPX_PEER
  perf arm-spe: Use SPE data source for neoverse cores

Leo Yan (13):
  perf mem: Print snoop peer flag
  perf mem: Add statistics for peer snooping
  perf c2c: Output statistics for peer snooping
  perf c2c: Add dimensions for peer load operations
  perf c2c: Add dimensions of peer metrics for cache line view
  perf c2c: Add mean dimensions for peer operations
  perf c2c: Use explicit names for display macros
  perf c2c: Rename dimension from 'percent_hitm' to
    'percent_costly_snoop'
  perf c2c: Refactor node header
  perf c2c: Refactor display string
  perf c2c: Sort on peer snooping for load operations
  perf c2c: Use 'peer' as default display for Arm64
  perf c2c: Update documentation for new display option 'peer'

 tools/include/uapi/linux/perf_event.h         |   2 +-
 tools/perf/Documentation/perf-c2c.txt         |  31 +-
 tools/perf/builtin-c2c.c                      | 454 ++++++++++++++----
 .../util/arm-spe-decoder/arm-spe-decoder.c    |   1 +
 .../util/arm-spe-decoder/arm-spe-decoder.h    |  12 +
 tools/perf/util/arm-spe.c                     | 130 ++++-
 tools/perf/util/mem-events.c                  |  46 +-
 tools/perf/util/mem-events.h                  |   3 +
 8 files changed, 547 insertions(+), 132 deletions(-)

-- 
2.34.1


^ permalink raw reply	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2022-08-12  1:27 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-08-11  6:24 [PATCH v6 00/15] perf c2c: Support data source and display for Arm64 Leo Yan
2022-08-11  6:24 ` [PATCH v6 01/15] perf tools: sync addition of PERF_MEM_SNOOPX_PEER Leo Yan
2022-08-11 21:55   ` Arnaldo Carvalho de Melo
2022-08-11  6:24 ` [PATCH v6 02/15] perf mem: Print snoop peer flag Leo Yan
2022-08-11  6:24 ` [PATCH v6 03/15] perf arm-spe: Use SPE data source for neoverse cores Leo Yan
2022-08-11 22:01   ` Arnaldo Carvalho de Melo
2022-08-11  6:24 ` [PATCH v6 04/15] perf mem: Add statistics for peer snooping Leo Yan
2022-08-11  6:24 ` [PATCH v6 05/15] perf c2c: Output " Leo Yan
2022-08-11  6:24 ` [PATCH v6 06/15] perf c2c: Add dimensions for peer load operations Leo Yan
2022-08-11  6:24 ` [PATCH v6 07/15] perf c2c: Add dimensions of peer metrics for cache line view Leo Yan
2022-08-11  6:24 ` [PATCH v6 08/15] perf c2c: Add mean dimensions for peer operations Leo Yan
2022-08-11  6:24 ` [PATCH v6 09/15] perf c2c: Use explicit names for display macros Leo Yan
2022-08-11  6:24 ` [PATCH v6 10/15] perf c2c: Rename dimension from 'percent_hitm' to 'percent_costly_snoop' Leo Yan
2022-08-11  6:24 ` [PATCH v6 11/15] perf c2c: Refactor node header Leo Yan
2022-08-11  6:24 ` [PATCH v6 12/15] perf c2c: Refactor display string Leo Yan
2022-08-11  6:24 ` [PATCH v6 13/15] perf c2c: Sort on peer snooping for load operations Leo Yan
2022-08-11  6:24 ` [PATCH v6 14/15] perf c2c: Use 'peer' as default display for Arm64 Leo Yan
2022-08-11  6:24 ` [PATCH v6 15/15] perf c2c: Update documentation for new display option 'peer' Leo Yan
2022-08-11 22:25 ` [PATCH v6 00/15] perf c2c: Support data source and display for Arm64 Arnaldo Carvalho de Melo
2022-08-12  1:26   ` Leo Yan

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).