<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Xeon Uncore Performance Monitoring documentation bugs in Software Tuning, Performance Optimization &amp; Platform Monitoring</title>
    <link>https://community.intel.com/t5/Software-Tuning-Performance/Xeon-Uncore-Performance-Monitoring-documentation-bugs/m-p/1105848#M5955</link>
    <description>&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;Referring to document Intel Xeon Processor E5 and E7 v3 Family Uncore Performance Monitoring&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;Reference Manual. Document number 331051-002, dated June 2015.&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp;&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;1. Some of the tables have table numbers (e.g. Table 2-20, etc). Some tables do not. This should&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; be consistent. All tables should have a corresponding table number.&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp;&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;2. Page 52, CBO Box Common Metrics (Derived Events) table (no table number).&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; The equation for IO_READ_BW is documented as:&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;(TOR_INSERTS.OPCODE&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;with: { Cn_MSR_PMON_BOX_FILTER0.tid=0x3E, Cn_MSR_PMON_BOX_FILTER1.opc=0x1C8} +&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;TOR_INSERTS.OPCODE&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;with:&amp;nbsp;Cn_MSR_PMON_BOX_FILTER.opc=0x1E6) * 64 / 1000000&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp;&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; Issues: A reference to Cn_MSR_PMON_BOX_FILTER is a bug. Each coherency domain contains&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; two filter registers, FILTER0 and FILTER1 (Table 2-13 CBo Performance Monitoring Registers).&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; There is no reference to FILTER. Programming these registers is precise work, and the documentation&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; should contain the commensurate level of correctness and precision. Do not use FILTER - be specific,&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; either FILTER0 or FILTER1.&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; Second issue. There is an inherent implication that both FILTER0 and FILTER1 contain an OPC (opcode)&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; field. This is not the case. Only FILTER1 contains an opcode field (bits 28:20) - FILTER0 does not&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; contain an opcode field.&amp;nbsp;&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; This makes the documented equation for IO_READ_BW confusing and incorrect, because the doc&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; indicates an opcode should be set in both FILTER0 and FILTER1 registers, but, as just stated,&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; according to Table 2-18 CnMSR_PMON_BOX_FILTER0 Register Field Definitions, the FILTER0&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; register does not contain an opcode field.&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp;&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; Note the same problem exists in the equation for IO_WRITE_BW.&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp;&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; Note also for the LLC_DRD_MISS_PCT, again the equation explicitly references FILTER and FILTER0.&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; What should the reader assume “FILTER” is? FILTER0 or FILTER1? There again is an implicit&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; reference that both FILTER registers contain a state field. They do not. FILTER0 23:17 is a state&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; field. FILTER1 does not contain a state field.&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp;&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;Thanks and best regards&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;Jim&lt;/DIV&gt;</description>
    <pubDate>Fri, 07 Oct 2016 18:48:32 GMT</pubDate>
    <dc:creator>James_M_3</dc:creator>
    <dc:date>2016-10-07T18:48:32Z</dc:date>
    <item>
      <title>Xeon Uncore Performance Monitoring documentation bugs</title>
      <link>https://community.intel.com/t5/Software-Tuning-Performance/Xeon-Uncore-Performance-Monitoring-documentation-bugs/m-p/1105848#M5955</link>
      <description>&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;Referring to document Intel Xeon Processor E5 and E7 v3 Family Uncore Performance Monitoring&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;Reference Manual. Document number 331051-002, dated June 2015.&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp;&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;1. Some of the tables have table numbers (e.g. Table 2-20, etc). Some tables do not. This should&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; be consistent. All tables should have a corresponding table number.&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp;&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;2. Page 52, CBO Box Common Metrics (Derived Events) table (no table number).&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; The equation for IO_READ_BW is documented as:&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;(TOR_INSERTS.OPCODE&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;with: { Cn_MSR_PMON_BOX_FILTER0.tid=0x3E, Cn_MSR_PMON_BOX_FILTER1.opc=0x1C8} +&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;TOR_INSERTS.OPCODE&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;with:&amp;nbsp;Cn_MSR_PMON_BOX_FILTER.opc=0x1E6) * 64 / 1000000&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp;&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; Issues: A reference to Cn_MSR_PMON_BOX_FILTER is a bug. Each coherency domain contains&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; two filter registers, FILTER0 and FILTER1 (Table 2-13 CBo Performance Monitoring Registers).&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; There is no reference to FILTER. Programming these registers is precise work, and the documentation&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; should contain the commensurate level of correctness and precision. Do not use FILTER - be specific,&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; either FILTER0 or FILTER1.&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; Second issue. There is an inherent implication that both FILTER0 and FILTER1 contain an OPC (opcode)&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; field. This is not the case. Only FILTER1 contains an opcode field (bits 28:20) - FILTER0 does not&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; contain an opcode field.&amp;nbsp;&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; This makes the documented equation for IO_READ_BW confusing and incorrect, because the doc&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; indicates an opcode should be set in both FILTER0 and FILTER1 registers, but, as just stated,&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; according to Table 2-18 CnMSR_PMON_BOX_FILTER0 Register Field Definitions, the FILTER0&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; register does not contain an opcode field.&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp;&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; Note the same problem exists in the equation for IO_WRITE_BW.&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp;&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; Note also for the LLC_DRD_MISS_PCT, again the equation explicitly references FILTER and FILTER0.&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; What should the reader assume “FILTER” is? FILTER0 or FILTER1? There again is an implicit&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; reference that both FILTER registers contain a state field. They do not. FILTER0 23:17 is a state&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp; &amp;nbsp; field. FILTER1 does not contain a state field.&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;&amp;nbsp;&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;Thanks and best regards&lt;/DIV&gt;

&lt;DIV style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;"&gt;Jim&lt;/DIV&gt;</description>
      <pubDate>Fri, 07 Oct 2016 18:48:32 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Tuning-Performance/Xeon-Uncore-Performance-Monitoring-documentation-bugs/m-p/1105848#M5955</guid>
      <dc:creator>James_M_3</dc:creator>
      <dc:date>2016-10-07T18:48:32Z</dc:date>
    </item>
    <item>
      <title>Also, for IO_READ_BW, the</title>
      <link>https://community.intel.com/t5/Software-Tuning-Performance/Xeon-Uncore-Performance-Monitoring-documentation-bugs/m-p/1105849#M5956</link>
      <description>&lt;P&gt;Also, for IO_READ_BW, the documentation's equation showing Cn_MSR_PMON_BOX_FILTER1.opc=0x1c8 seems to be another bug.&lt;/P&gt;

&lt;P&gt;Opcode 0x1c8 is described in table 2-20 as Request Invalidate Line - Request Exclusive Ownership Of a Cache Line.&lt;/P&gt;

&lt;P&gt;I suspect this is supposed to be opcode 0x19c, PCIe Write (allocating).&lt;/P&gt;

&lt;P&gt;Note this same bug exists in the v4 family (broadwell) document as well.&lt;/P&gt;

&lt;P&gt;Best&lt;/P&gt;

&lt;P&gt;Jim&lt;/P&gt;</description>
      <pubDate>Fri, 07 Oct 2016 21:57:33 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Tuning-Performance/Xeon-Uncore-Performance-Monitoring-documentation-bugs/m-p/1105849#M5956</guid>
      <dc:creator>James_M_3</dc:creator>
      <dc:date>2016-10-07T21:57:33Z</dc:date>
    </item>
  </channel>
</rss>

