Message ID | 20220408195344.32764-4-alisaidi@amazon.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | perf: arm-spe: Decode SPE source and use for perf c2c | expand |
On 08/04/2022 20:53, Ali Saidi wrote: > Add a flag to the perf mem data struct to signal that a request caused a > cache-to-cache transfer of a line from a peer of the requestor and > wasn't sourced from a lower cache level. The line being moved from one > peer cache to another has latency and performance implications. On Arm64 > Neoverse systems the data source can indicate a cache-to-cache transfer > but not if the line is dirty or clean, so instead of overloading HITM > define a new flag that indicates this type of transfer. I think it's fine to merge this and the previous commit rather than have two commits with the same msg. > > Signed-off-by: Ali Saidi <alisaidi@amazon.com> > --- > tools/include/uapi/linux/perf_event.h | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/tools/include/uapi/linux/perf_event.h b/tools/include/uapi/linux/perf_event.h > index 82858b697c05..c9e58c79f3e5 100644 > --- a/tools/include/uapi/linux/perf_event.h > +++ b/tools/include/uapi/linux/perf_event.h > @@ -1308,7 +1308,7 @@ union perf_mem_data_src { > #define PERF_MEM_SNOOP_SHIFT 19 > > #define PERF_MEM_SNOOPX_FWD 0x01 /* forward */ > -/* 1 free */ > +#define PERF_MEM_SNOOPX_PEER 0x02 /* xfer from peer */ > #define PERF_MEM_SNOOPX_SHIFT 38 > > /* locked instruction */
On 11/04/2022 11:26, German Gomez wrote: > On 08/04/2022 20:53, Ali Saidi wrote: >> Add a flag to the perf mem data struct to signal that a request caused a >> cache-to-cache transfer of a line from a peer of the requestor and >> wasn't sourced from a lower cache level. The line being moved from one >> peer cache to another has latency and performance implications. On Arm64 >> Neoverse systems the data source can indicate a cache-to-cache transfer >> but not if the line is dirty or clean, so instead of overloading HITM >> define a new flag that indicates this type of transfer. > I think it's fine to merge this and the previous commit rather than have > two commits with the same msg. > I take it back. It has been pointed out to me that having the separation is normal/ok. So my comment doesn't apply.
On Mon, Apr 11, 2022 at 03:35:52PM +0100, German Gomez wrote: > > On 11/04/2022 11:26, German Gomez wrote: > > On 08/04/2022 20:53, Ali Saidi wrote: > >> Add a flag to the perf mem data struct to signal that a request caused a > >> cache-to-cache transfer of a line from a peer of the requestor and > >> wasn't sourced from a lower cache level. The line being moved from one > >> peer cache to another has latency and performance implications. On Arm64 > >> Neoverse systems the data source can indicate a cache-to-cache transfer > >> but not if the line is dirty or clean, so instead of overloading HITM > >> define a new flag that indicates this type of transfer. > > I think it's fine to merge this and the previous commit rather than have > > two commits with the same msg. > > > > I take it back. It has been pointed out to me that having the separation > is normal/ok. So my comment doesn't apply. Yeah, it's good that we split these two patches since it's easier for maintainer to pick up separately :) Thanks, Leo
diff --git a/tools/include/uapi/linux/perf_event.h b/tools/include/uapi/linux/perf_event.h index 82858b697c05..c9e58c79f3e5 100644 --- a/tools/include/uapi/linux/perf_event.h +++ b/tools/include/uapi/linux/perf_event.h @@ -1308,7 +1308,7 @@ union perf_mem_data_src { #define PERF_MEM_SNOOP_SHIFT 19 #define PERF_MEM_SNOOPX_FWD 0x01 /* forward */ -/* 1 free */ +#define PERF_MEM_SNOOPX_PEER 0x02 /* xfer from peer */ #define PERF_MEM_SNOOPX_SHIFT 38 /* locked instruction */
Add a flag to the perf mem data struct to signal that a request caused a cache-to-cache transfer of a line from a peer of the requestor and wasn't sourced from a lower cache level. The line being moved from one peer cache to another has latency and performance implications. On Arm64 Neoverse systems the data source can indicate a cache-to-cache transfer but not if the line is dirty or clean, so instead of overloading HITM define a new flag that indicates this type of transfer. Signed-off-by: Ali Saidi <alisaidi@amazon.com> --- tools/include/uapi/linux/perf_event.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)