Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1265766

[RFC] perf x86 intel: Question about pebs_data_source data

From Jiri Olsa <jolsa@redhat.com>
Newsgroups linux.kernel
Subject [RFC] perf x86 intel: Question about pebs_data_source data
Date 2015-11-09 16:40 +0100
Message-ID <qsWI2-8g3-13@gated-at.bofh.it> (permalink)
Organization linux.* mail to news gateway

Show all headers | View raw


hi,
I was checking with SDM (September 2015) and I'd like if you
guys could help me with understanding of following array elements

I'm reffering to Table 18-19. Data Source Encoding for Load Latency Record

 - element 5
   SDM says:

   05H L3 HIT. Local or Remote home requests that hit the L3 cache and was
   serviced by another processor core with a cross core snoop where no modified
   copies were found. (clean).

   and we have L3 SNOOP MISS:
     OP_LH | P(LVL, L3)  | P(SNOOP, MISS),   /* 0x05: L3 hit, snoop miss */

   while the SDM indicates HIT

 - element 6
   SDM says:

   L3 HIT. Local or Remote home requests that hit the L3 cache and was serviced
   by another processor core with a cross core snoop where modified copies were
   found. (HITM).
  
   and we have L3 SNOOP HIT:
     OP_LH | P(LVL, L3)  | P(SNOOP, HIT),    /* 0x06: L3 hit, snoop hit */

   while the SDM indicates HITM

I'm probably misunderstanding SDM (wouldn't be the first time) what do I miss?

thanks for comments,
jirka


---
diff --git a/arch/x86/kernel/cpu/perf_event_intel_ds.c b/arch/x86/kernel/cpu/perf_event_intel_ds.c
index 5db1c7755548..000ab82d09e7 100644
--- a/arch/x86/kernel/cpu/perf_event_intel_ds.c
+++ b/arch/x86/kernel/cpu/perf_event_intel_ds.c
@@ -57,8 +57,8 @@ static const u64 pebs_data_source[] = {
 	OP_LH | P(LVL, LFB) | P(SNOOP, NONE),	/* 0x02: LFB hit */
 	OP_LH | P(LVL, L2)  | P(SNOOP, NONE),	/* 0x03: L2 hit */
 	OP_LH | P(LVL, L3)  | P(SNOOP, NONE),	/* 0x04: L3 hit */
-	OP_LH | P(LVL, L3)  | P(SNOOP, MISS),	/* 0x05: L3 hit, snoop miss */
-	OP_LH | P(LVL, L3)  | P(SNOOP, HIT),	/* 0x06: L3 hit, snoop hit */
+	OP_LH | P(LVL, L3)  | P(SNOOP, HIT),	/* 0x05: L3 hit, snoop hit */
+	OP_LH | P(LVL, L3)  | P(SNOOP, HITM),	/* 0x06: L3 hit, snoop hitm */
 	OP_LH | P(LVL, L3)  | P(SNOOP, HITM),	/* 0x07: L3 hit, snoop hitm */
 	OP_LH | P(LVL, REM_CCE1) | P(SNOOP, HIT),  /* 0x08: L3 miss snoop hit */
 	OP_LH | P(LVL, REM_CCE1) | P(SNOOP, HITM), /* 0x09: L3 miss snoop hitm*/
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Back to linux.kernel | Previous | NextNext in thread | Find similar | Unroll thread


Thread

[RFC] perf x86 intel: Question about pebs_data_source data Jiri Olsa <jolsa@redhat.com> - 2015-11-09 16:40 +0100
  Re: [RFC] perf x86 intel: Question about pebs_data_source data Stephane Eranian <eranian@google.com> - 2015-11-10 23:50 +0100
  Re: [RFC] perf x86 intel: Question about pebs_data_source data Andi Kleen <andi@firstfloor.org> - 2015-11-14 20:50 +0100

csiph-web