All of lore.kernel.org
 help / color / mirror / Atom feed
From: Arnaldo Carvalho de Melo <acme@kernel.org>
To: Leo Yan <leo.yan@linaro.org>
Cc: Peter Zijlstra <peterz@infradead.org>,
	Ingo Molnar <mingo@redhat.com>,
	Mark Rutland <mark.rutland@arm.com>, Jiri Olsa <jolsa@kernel.org>,
	Namhyung Kim <namhyung@kernel.org>,
	Ian Rogers <irogers@google.com>,
	John Garry <john.garry@huawei.com>, Will Deacon <will@kernel.org>,
	James Clark <james.clark@arm.com>,
	German Gomez <german.gomez@arm.com>,
	Ali Saidi <alisaidi@amazon.com>, Joe Mario <jmario@redhat.com>,
	Adam Li <adam.li@amperecomputing.com>,
	linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH v5 00/17] perf c2c: Support data source and display for Arm64
Date: Wed, 10 Aug 2022 10:37:32 -0300	[thread overview]
Message-ID: <YvO0nAZ1znppjKjZ@kernel.org> (raw)
In-Reply-To: <20220604042820.2270916-1-leo.yan@linaro.org>

Em Sat, Jun 04, 2022 at 12:28:03PM +0800, Leo Yan escreveu:
> Arm64 Neoverse CPUs supports data source in Arm SPE trace, this allows
> us to detect cache line contention and transfers.
> 
> This patch set includes Ali's patch set v9 "perf: arm-spe: Decode SPE
> source and use for perf c2c" [1] and rebased on the latest perf core
> banch with latest commit 1bcca2b1bd67 ("perf vendor events intel:
> Update metrics for Alderlake").
> 
> Patches 01-05 comes from Ali's patch set to support data source for Arm
> SPE for neoverse cores.

Leo, please remove touching the kernel perf_event.h on the first patch,
I see it doesn't affect the kernel right now as it is done just from
synthesizing perf records from hw trace data, and we haven't received
any review comment from Peter Zijlstra (I think he is in vacations).

Also please refresh it:

⬢[acme@toolbox perf]$        git am ./v5_20220604_leo_yan_perf_c2c_support_data_source_and_display_for_arm64.mbx
Applying: perf: Add SNOOP_PEER flag to perf mem data struct
Applying: perf tools: sync addition of PERF_MEM_SNOOPX_PEER
Applying: perf mem: Print snoop peer flag
Applying: perf arm-spe: Don't set data source if it's not a memory operation
error: patch failed: tools/perf/util/arm-spe.c:387
error: tools/perf/util/arm-spe.c: patch does not apply
Patch failed at 0004 perf arm-spe: Don't set data source if it's not a memory operation
hint: Use 'git am --show-current-patch=diff' to see the failed patch
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".
⬢[acme@toolbox perf]$

- Arnaldo
 
> Patches 06-17 are patches from patch set v4 for support perf c2c peer
> display for Arm64 [2].
> 
> This patch set has been verified for both x86 perf memory events and Arm
> SPE events.
> 
> [1] https://lore.kernel.org/lkml/20220517020326.18580-1-alisaidi@amazon.com/
> [2] https://lore.kernel.org/lkml/20220530114036.3225544-1-leo.yan@linaro.org/
> 
> 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.
> 
> Changes from v2:
> * Updated patch 04 to account metrics for both cache level and ld_peer
>   for PEER flag;
> * Updated document for metric 'rmt_hit' which is accounted for all
>   remote accesses (include remote DRAM and any upward caches).
> 
> Changes from v1:
> * Updated patches 01, 02 and 03 to support 'N/A' metrics for store
>   operations, so can align with the patch set [1] for store samples.
> 
> 
> Ali Saidi (3):
>   perf: Add SNOOP_PEER flag to perf mem data struct
>   perf tools: sync addition of PERF_MEM_SNOOPX_PEER
>   perf arm-spe: Use SPE data source for neoverse cores
> 
> Leo Yan (14):
>   perf mem: Print snoop peer flag
>   perf arm-spe: Don't set data source if it's not a memory operation
>   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'
> 
>  include/uapi/linux/perf_event.h               |   2 +-
>  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                     | 140 +++++-
>  tools/perf/util/mem-events.c                  |  46 +-
>  tools/perf/util/mem-events.h                  |   3 +
>  9 files changed, 550 insertions(+), 141 deletions(-)
> 
> -- 
> 2.25.1

-- 

- Arnaldo

WARNING: multiple messages have this Message-ID (diff)
From: Arnaldo Carvalho de Melo <acme@kernel.org>
To: Leo Yan <leo.yan@linaro.org>
Cc: Peter Zijlstra <peterz@infradead.org>,
	Ingo Molnar <mingo@redhat.com>,
	Mark Rutland <mark.rutland@arm.com>, Jiri Olsa <jolsa@kernel.org>,
	Namhyung Kim <namhyung@kernel.org>,
	Ian Rogers <irogers@google.com>,
	John Garry <john.garry@huawei.com>, Will Deacon <will@kernel.org>,
	James Clark <james.clark@arm.com>,
	German Gomez <german.gomez@arm.com>,
	Ali Saidi <alisaidi@amazon.com>, Joe Mario <jmario@redhat.com>,
	Adam Li <adam.li@amperecomputing.com>,
	linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH v5 00/17] perf c2c: Support data source and display for Arm64
Date: Wed, 10 Aug 2022 10:37:32 -0300	[thread overview]
Message-ID: <YvO0nAZ1znppjKjZ@kernel.org> (raw)
In-Reply-To: <20220604042820.2270916-1-leo.yan@linaro.org>

Em Sat, Jun 04, 2022 at 12:28:03PM +0800, Leo Yan escreveu:
> Arm64 Neoverse CPUs supports data source in Arm SPE trace, this allows
> us to detect cache line contention and transfers.
> 
> This patch set includes Ali's patch set v9 "perf: arm-spe: Decode SPE
> source and use for perf c2c" [1] and rebased on the latest perf core
> banch with latest commit 1bcca2b1bd67 ("perf vendor events intel:
> Update metrics for Alderlake").
> 
> Patches 01-05 comes from Ali's patch set to support data source for Arm
> SPE for neoverse cores.

Leo, please remove touching the kernel perf_event.h on the first patch,
I see it doesn't affect the kernel right now as it is done just from
synthesizing perf records from hw trace data, and we haven't received
any review comment from Peter Zijlstra (I think he is in vacations).

Also please refresh it:

⬢[acme@toolbox perf]$        git am ./v5_20220604_leo_yan_perf_c2c_support_data_source_and_display_for_arm64.mbx
Applying: perf: Add SNOOP_PEER flag to perf mem data struct
Applying: perf tools: sync addition of PERF_MEM_SNOOPX_PEER
Applying: perf mem: Print snoop peer flag
Applying: perf arm-spe: Don't set data source if it's not a memory operation
error: patch failed: tools/perf/util/arm-spe.c:387
error: tools/perf/util/arm-spe.c: patch does not apply
Patch failed at 0004 perf arm-spe: Don't set data source if it's not a memory operation
hint: Use 'git am --show-current-patch=diff' to see the failed patch
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".
⬢[acme@toolbox perf]$

- Arnaldo
 
> Patches 06-17 are patches from patch set v4 for support perf c2c peer
> display for Arm64 [2].
> 
> This patch set has been verified for both x86 perf memory events and Arm
> SPE events.
> 
> [1] https://lore.kernel.org/lkml/20220517020326.18580-1-alisaidi@amazon.com/
> [2] https://lore.kernel.org/lkml/20220530114036.3225544-1-leo.yan@linaro.org/
> 
> 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.
> 
> Changes from v2:
> * Updated patch 04 to account metrics for both cache level and ld_peer
>   for PEER flag;
> * Updated document for metric 'rmt_hit' which is accounted for all
>   remote accesses (include remote DRAM and any upward caches).
> 
> Changes from v1:
> * Updated patches 01, 02 and 03 to support 'N/A' metrics for store
>   operations, so can align with the patch set [1] for store samples.
> 
> 
> Ali Saidi (3):
>   perf: Add SNOOP_PEER flag to perf mem data struct
>   perf tools: sync addition of PERF_MEM_SNOOPX_PEER
>   perf arm-spe: Use SPE data source for neoverse cores
> 
> Leo Yan (14):
>   perf mem: Print snoop peer flag
>   perf arm-spe: Don't set data source if it's not a memory operation
>   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'
> 
>  include/uapi/linux/perf_event.h               |   2 +-
>  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                     | 140 +++++-
>  tools/perf/util/mem-events.c                  |  46 +-
>  tools/perf/util/mem-events.h                  |   3 +
>  9 files changed, 550 insertions(+), 141 deletions(-)
> 
> -- 
> 2.25.1

-- 

- Arnaldo

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  parent reply	other threads:[~2022-08-10 13:37 UTC|newest]

Thread overview: 51+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-04  4:28 [PATCH v5 00/17] perf c2c: Support data source and display for Arm64 Leo Yan
2022-06-04  4:28 ` Leo Yan
2022-06-04  4:28 ` [PATCH v5 01/17] perf: Add SNOOP_PEER flag to perf mem data struct Leo Yan
2022-06-04  4:28   ` Leo Yan
2022-07-20 18:45   ` Arnaldo Carvalho de Melo
2022-07-20 18:45     ` Arnaldo Carvalho de Melo
2022-07-20 18:46     ` Arnaldo Carvalho de Melo
2022-07-20 18:46       ` Arnaldo Carvalho de Melo
2022-07-21  0:27       ` Leo Yan
2022-07-21  0:27         ` Leo Yan
2022-08-08 16:40         ` ping " Arnaldo Carvalho de Melo
2022-06-04  4:28 ` [PATCH v5 02/17] perf tools: sync addition of PERF_MEM_SNOOPX_PEER Leo Yan
2022-06-04  4:28   ` Leo Yan
2022-06-04  4:28 ` [PATCH v5 03/17] perf mem: Print snoop peer flag Leo Yan
2022-06-04  4:28   ` Leo Yan
2022-06-04  4:28 ` [PATCH v5 04/17] perf arm-spe: Don't set data source if it's not a memory operation Leo Yan
2022-06-04  4:28   ` Leo Yan
2022-06-04  4:28 ` [PATCH v5 05/17] perf arm-spe: Use SPE data source for neoverse cores Leo Yan
2022-06-04  4:28   ` Leo Yan
2022-06-04  4:28 ` [PATCH v5 06/17] perf mem: Add statistics for peer snooping Leo Yan
2022-06-04  4:28   ` Leo Yan
2022-06-04  4:28 ` [PATCH v5 07/17] perf c2c: Output " Leo Yan
2022-06-04  4:28   ` Leo Yan
2022-06-04  4:28 ` [PATCH v5 08/17] perf c2c: Add dimensions for peer load operations Leo Yan
2022-06-04  4:28   ` Leo Yan
2022-06-04  4:28 ` [PATCH v5 09/17] perf c2c: Add dimensions of peer metrics for cache line view Leo Yan
2022-06-04  4:28   ` Leo Yan
2022-06-04  4:28 ` [PATCH v5 10/17] perf c2c: Add mean dimensions for peer operations Leo Yan
2022-06-04  4:28   ` Leo Yan
2022-06-04  4:28 ` [PATCH v5 11/17] perf c2c: Use explicit names for display macros Leo Yan
2022-06-04  4:28   ` Leo Yan
2022-06-04  4:28 ` [PATCH v5 12/17] perf c2c: Rename dimension from 'percent_hitm' to 'percent_costly_snoop' Leo Yan
2022-06-04  4:28   ` Leo Yan
2022-06-04  4:28 ` [PATCH v5 13/17] perf c2c: Refactor node header Leo Yan
2022-06-04  4:28   ` Leo Yan
2022-06-04  4:28 ` [PATCH v5 14/17] perf c2c: Refactor display string Leo Yan
2022-06-04  4:28   ` Leo Yan
2022-06-04  4:28 ` [PATCH v5 15/17] perf c2c: Sort on peer snooping for load operations Leo Yan
2022-06-04  4:28   ` Leo Yan
2022-06-04  4:28 ` [PATCH v5 16/17] perf c2c: Use 'peer' as default display for Arm64 Leo Yan
2022-06-04  4:28   ` Leo Yan
2022-06-04  4:28 ` [PATCH v5 17/17] perf c2c: Update documentation for new display option 'peer' Leo Yan
2022-06-04  4:28   ` Leo Yan
2022-08-10 13:37 ` Arnaldo Carvalho de Melo [this message]
2022-08-10 13:37   ` [PATCH v5 00/17] perf c2c: Support data source and display for Arm64 Arnaldo Carvalho de Melo
2022-08-11  6:41   ` Leo Yan
2022-08-11  6:41     ` Leo Yan
2022-08-12 12:43     ` Arnaldo Carvalho de Melo
2022-08-12 12:43       ` Arnaldo Carvalho de Melo
2022-08-12 15:20       ` Leo Yan
2022-08-12 15:20         ` Leo Yan

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=YvO0nAZ1znppjKjZ@kernel.org \
    --to=acme@kernel.org \
    --cc=adam.li@amperecomputing.com \
    --cc=alisaidi@amazon.com \
    --cc=german.gomez@arm.com \
    --cc=irogers@google.com \
    --cc=james.clark@arm.com \
    --cc=jmario@redhat.com \
    --cc=john.garry@huawei.com \
    --cc=jolsa@kernel.org \
    --cc=leo.yan@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --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=peterz@infradead.org \
    --cc=will@kernel.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.