<?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 Quote:Anuj K. wrote: in Software Tuning, Performance Optimization &amp; Platform Monitoring</title>
    <link>https://community.intel.com/t5/Software-Tuning-Performance/Information-about-PCM-PCIe-counters/m-p/1060631#M5115</link>
    <description>&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE&gt;Anuj K. wrote:&lt;BR /&gt;&lt;P&gt;&lt;/P&gt;

&lt;P&gt;I had these questions:&lt;/P&gt;

&lt;UL&gt;
	&lt;LI&gt;What is the difference between PCIeRdCur and DRd? PCIeRdCur measures the number of partial and full cache line reads. Does it miss any PCIe reads that are captured by DRd, or does PCIeRdCur include DRd? I'm seeing non-zero values for both these counters.&lt;/LI&gt;
&lt;/UL&gt;

&lt;P&gt;If you have the default I/O coherency setting in the BIOS, the default interpretations are:&lt;/P&gt;

&lt;P&gt;PCIeRdCur means IO reading from memory&lt;/P&gt;

&lt;P&gt;DRd means CPU doing data read to last level cache&lt;/P&gt;

&lt;UL&gt;
	&lt;LI&gt;The description printed by pcm-pcie.x says that WiL measures traffic for "PCI devices writing to memory - application reads from disk/network/PCIe device", but it also describes it as "MMIO Writes (Full/Partial)". Aren't these two descriptions contradictory, since MMIO writes involve the CPU writing to PCIe devices?&lt;/LI&gt;
&lt;/UL&gt;

&lt;P&gt;Thanks for pointing it out. WiL is wrongly categorized. It is not part of PCIe writing to memory. It's just MMIO write from CPU. We'll fix it in the next release.&lt;/P&gt;

&lt;UL&gt;
	&lt;LI&gt;In the counter description, RFO appears twice:
		&lt;UL&gt;
			&lt;LI&gt;RFO * - Demand Data RFO&lt;/LI&gt;
			&lt;LI&gt;RFO - PCIe partial write&lt;/LI&gt;
			&lt;LI&gt;If think that this is OK because a PCIe partial write will perform a read-for-ownership, making these counters equivalent. Can someone verify this.&lt;/LI&gt;
		&lt;/UL&gt;
	&lt;/LI&gt;
&lt;/UL&gt;

&lt;P&gt;When you have PCIe partial write, yes, it will generate RFO. There is an optional settings in the BIOS to make the PCIe read flow to use RFO as well, that's why it's in the read category as well (but as far as I know, no one is using RFO read flow)&lt;/P&gt;

&lt;P&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;</description>
    <pubDate>Wed, 25 Mar 2015 15:43:00 GMT</pubDate>
    <dc:creator>Patrick_L_Intel</dc:creator>
    <dc:date>2015-03-25T15:43:00Z</dc:date>
    <item>
      <title>Information about PCM PCIe counters</title>
      <link>https://community.intel.com/t5/Software-Tuning-Performance/Information-about-PCM-PCIe-counters/m-p/1060630#M5114</link>
      <description>&lt;P&gt;Hi everyone.&lt;/P&gt;

&lt;P&gt;I have been working on measuring the PCIe activity of network cards and I wanted to understand PCM counters better. I'm running the pcm-pcie.x executable on a Haswell server which displays the following counters (full event description here: &lt;A href="http://pastebin.com/pnuj1eKu):" target="_blank"&gt;http://pastebin.com/pnuj1eKu):&lt;/A&gt;&lt;/P&gt;

&lt;UL&gt;
	&lt;LI&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;PCIeRdCur (&lt;/SPAN&gt;PCIe read current transfer (full cache line)&lt;/LI&gt;
	&lt;LI&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;RFO (&lt;/SPAN&gt;Demand Data RFO)&lt;/LI&gt;
	&lt;LI&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;CRd (&lt;/SPAN&gt;Demand Code Read)&lt;/LI&gt;
	&lt;LI&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;DRd (&lt;/SPAN&gt;Demand Data Read)&lt;/LI&gt;
	&lt;LI&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;ItoM (&lt;/SPAN&gt;PCIe write full cache line)&lt;/LI&gt;
	&lt;LI&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;PRd (&lt;/SPAN&gt;MMIO Read)&lt;/LI&gt;
	&lt;LI&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;WiL (&lt;/SPAN&gt;MMIO Write)&lt;/LI&gt;
&lt;/UL&gt;

&lt;P&gt;I had these questions:&lt;/P&gt;

&lt;UL&gt;
	&lt;LI&gt;What is the difference between PCIeRdCur and DRd? PCIeRdCur measures the number of partial and full cache line reads. Does it miss any PCIe reads that are captured by DRd, or does PCIeRdCur include DRd? I'm seeing non-zero values for both these counters.&lt;/LI&gt;
	&lt;LI&gt;The description printed by pcm-pcie.x says that WiL measures traffic for "PCI devices writing to memory - application reads from disk/network/PCIe device", but it also describes it as "MMIO Writes (Full/Partial)". Aren't these two descriptions contradictory, since MMIO writes involve the CPU writing to PCIe devices?&lt;/LI&gt;
	&lt;LI&gt;In the counter description, RFO appears twice:
		&lt;UL&gt;
			&lt;LI&gt;RFO * - Demand Data RFO&lt;/LI&gt;
			&lt;LI&gt;RFO - PCIe partial write&lt;/LI&gt;
			&lt;LI&gt;If think that this is OK because a PCIe partial write will perform a read-for-ownership, making these counters equivalent. Can someone verify this.&lt;/LI&gt;
		&lt;/UL&gt;
	&lt;/LI&gt;
&lt;/UL&gt;

&lt;P&gt;Thank you for your help!&lt;/P&gt;

&lt;P&gt;Anuj&lt;/P&gt;</description>
      <pubDate>Wed, 25 Mar 2015 05:32:23 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Tuning-Performance/Information-about-PCM-PCIe-counters/m-p/1060630#M5114</guid>
      <dc:creator>Kalia__Anuj</dc:creator>
      <dc:date>2015-03-25T05:32:23Z</dc:date>
    </item>
    <item>
      <title>Quote:Anuj K. wrote:</title>
      <link>https://community.intel.com/t5/Software-Tuning-Performance/Information-about-PCM-PCIe-counters/m-p/1060631#M5115</link>
      <description>&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE&gt;Anuj K. wrote:&lt;BR /&gt;&lt;P&gt;&lt;/P&gt;

&lt;P&gt;I had these questions:&lt;/P&gt;

&lt;UL&gt;
	&lt;LI&gt;What is the difference between PCIeRdCur and DRd? PCIeRdCur measures the number of partial and full cache line reads. Does it miss any PCIe reads that are captured by DRd, or does PCIeRdCur include DRd? I'm seeing non-zero values for both these counters.&lt;/LI&gt;
&lt;/UL&gt;

&lt;P&gt;If you have the default I/O coherency setting in the BIOS, the default interpretations are:&lt;/P&gt;

&lt;P&gt;PCIeRdCur means IO reading from memory&lt;/P&gt;

&lt;P&gt;DRd means CPU doing data read to last level cache&lt;/P&gt;

&lt;UL&gt;
	&lt;LI&gt;The description printed by pcm-pcie.x says that WiL measures traffic for "PCI devices writing to memory - application reads from disk/network/PCIe device", but it also describes it as "MMIO Writes (Full/Partial)". Aren't these two descriptions contradictory, since MMIO writes involve the CPU writing to PCIe devices?&lt;/LI&gt;
&lt;/UL&gt;

&lt;P&gt;Thanks for pointing it out. WiL is wrongly categorized. It is not part of PCIe writing to memory. It's just MMIO write from CPU. We'll fix it in the next release.&lt;/P&gt;

&lt;UL&gt;
	&lt;LI&gt;In the counter description, RFO appears twice:
		&lt;UL&gt;
			&lt;LI&gt;RFO * - Demand Data RFO&lt;/LI&gt;
			&lt;LI&gt;RFO - PCIe partial write&lt;/LI&gt;
			&lt;LI&gt;If think that this is OK because a PCIe partial write will perform a read-for-ownership, making these counters equivalent. Can someone verify this.&lt;/LI&gt;
		&lt;/UL&gt;
	&lt;/LI&gt;
&lt;/UL&gt;

&lt;P&gt;When you have PCIe partial write, yes, it will generate RFO. There is an optional settings in the BIOS to make the PCIe read flow to use RFO as well, that's why it's in the read category as well (but as far as I know, no one is using RFO read flow)&lt;/P&gt;

&lt;P&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 25 Mar 2015 15:43:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Tuning-Performance/Information-about-PCM-PCIe-counters/m-p/1060631#M5115</guid>
      <dc:creator>Patrick_L_Intel</dc:creator>
      <dc:date>2015-03-25T15:43:00Z</dc:date>
    </item>
    <item>
      <title>Thanks for the information,</title>
      <link>https://community.intel.com/t5/Software-Tuning-Performance/Information-about-PCM-PCIe-counters/m-p/1060632#M5116</link>
      <description>&lt;P&gt;Thanks for the information, Patrick. This is very helpful.&lt;/P&gt;

&lt;P&gt;Are the DRd and CRd counters related to PCIe activity in some way? I think that knowing the number of LLC reads is useful while studying the other PCIe counters, but is there a bigger reason why these counters are displayed by pcm-pcie.x?&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 25 Mar 2015 16:30:11 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Tuning-Performance/Information-about-PCM-PCIe-counters/m-p/1060632#M5116</guid>
      <dc:creator>Kalia__Anuj</dc:creator>
      <dc:date>2015-03-25T16:30:11Z</dc:date>
    </item>
    <item>
      <title>Quote:Anuj K. wrote:</title>
      <link>https://community.intel.com/t5/Software-Tuning-Performance/Information-about-PCM-PCIe-counters/m-p/1060633#M5117</link>
      <description>&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE&gt;Anuj K. wrote:&lt;BR /&gt;&lt;P&gt;&lt;/P&gt;

&lt;P&gt;Thanks for the information, Patrick. This is very helpful.&lt;/P&gt;

&lt;P&gt;Are the DRd and CRd counters related to PCIe activity in some way?&lt;/P&gt;

&lt;UL&gt;
	&lt;LI&gt;E5-2600v3 family support several type of PCIe read flow, PCIeRdCur (default), DRd (Data Read), CRd (Code Read), RFO are all possible depending on the I/O coherency setting in the BIOS. You can change it to see if it has any impact to your specific application performance.&lt;/LI&gt;
&lt;/UL&gt;

&lt;P&gt;I think that knowing the number of LLC reads is useful while studying the other PCIe counters, but is there a bigger reason why these counters are displayed by pcm-pcie.x?&lt;/P&gt;

&lt;UL&gt;
	&lt;LI&gt;I knew this question must come up :) Besides the above reason, the reason DRd, CRd, and RFO are included in the pcm-pcie because it uses CBo performance monitoring facility to track L3 cache activity. Since both CPU and I/O can make use of L3 cache, the utility track both sources. For more information, please check below document. &lt;A href="https://www-ssl.intel.com/content/www/us/en/processors/xeon/xeon-e5-v3-uncore-performance-monitoring.html"&gt;https://www-ssl.intel.com/content/www/us/en/processors/xeon/xeon-e5-v3-uncore-performance-monitoring.html&lt;/A&gt;&lt;/LI&gt;
&lt;/UL&gt;

&lt;P&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 25 Mar 2015 16:55:49 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Tuning-Performance/Information-about-PCM-PCIe-counters/m-p/1060633#M5117</guid>
      <dc:creator>Patrick_L_Intel</dc:creator>
      <dc:date>2015-03-25T16:55:49Z</dc:date>
    </item>
  </channel>
</rss>

