<?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 Question about Icelake IIO Uncore IOTLB &amp;amp; PWC Performance Counters in Software Tuning, Performance Optimization &amp; Platform Monitoring</title>
    <link>https://community.intel.com/t5/Software-Tuning-Performance/Question-about-Icelake-IIO-Uncore-IOTLB-amp-PWC-Performance/m-p/1703835#M8556</link>
    <description>&lt;P&gt;I'm working with the uncore performance counters on an Intel Xeon Scalable processor (Icelake) and have a few questions about the IOTLB events, specifically those in Table 2-184 of the performance monitoring guide:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;&lt;STRONG&gt;How can I measure Page Walk Cache (PWC) misses?&lt;/STRONG&gt;&lt;SPAN&gt; The manual provides events for &lt;/SPAN&gt;&lt;SPAN&gt;PWC_&amp;lt;size&amp;gt;_HITS&lt;/SPAN&gt;&lt;SPAN&gt;. Since multiple lookups can hit for a single page walk, simply subtracting hits from lookups doesn't seem reliable for calculating misses. Is there a way to count PWC misses or even &lt;STRONG&gt;total lookups&lt;/STRONG&gt; at each specific cache level level ?&lt;BR /&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;What is a "transaction" for the &lt;/STRONG&gt;&lt;STRONG&gt;FIRST_LOOKUPS&lt;/STRONG&gt;&lt;STRONG&gt; IOTLB event?&lt;/STRONG&gt;&lt;SPAN&gt;&lt;SPAN&gt; The definition states it "Counts the first time a request looks up IOTLB." Is a single read/write request from a PCIe device considered one transaction is it just a single PCIe TLP?&lt;BR /&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;&lt;STRONG&gt;What is the function of the 4K-level PWC counter?&lt;/STRONG&gt;&lt;SPAN&gt; The spec mentions the PWC caches higher-level page table entries (PML4E, PDPE, PDE). Does the 4K-level PWC act as a cache for the final Page Table Entries (PTEs)? Then would it just not do the work as a extended TLB? &lt;STRONG&gt;Does every IOTLB miss &lt;EM&gt;always&lt;/EM&gt; go through this 4 K‑level cache before walking higher levels?&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Thu, 17 Jul 2025 01:23:43 GMT</pubDate>
    <dc:creator>Leshna</dc:creator>
    <dc:date>2025-07-17T01:23:43Z</dc:date>
    <item>
      <title>Question about Icelake IIO Uncore IOTLB &amp; PWC Performance Counters</title>
      <link>https://community.intel.com/t5/Software-Tuning-Performance/Question-about-Icelake-IIO-Uncore-IOTLB-amp-PWC-Performance/m-p/1703835#M8556</link>
      <description>&lt;P&gt;I'm working with the uncore performance counters on an Intel Xeon Scalable processor (Icelake) and have a few questions about the IOTLB events, specifically those in Table 2-184 of the performance monitoring guide:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;&lt;STRONG&gt;How can I measure Page Walk Cache (PWC) misses?&lt;/STRONG&gt;&lt;SPAN&gt; The manual provides events for &lt;/SPAN&gt;&lt;SPAN&gt;PWC_&amp;lt;size&amp;gt;_HITS&lt;/SPAN&gt;&lt;SPAN&gt;. Since multiple lookups can hit for a single page walk, simply subtracting hits from lookups doesn't seem reliable for calculating misses. Is there a way to count PWC misses or even &lt;STRONG&gt;total lookups&lt;/STRONG&gt; at each specific cache level level ?&lt;BR /&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;What is a "transaction" for the &lt;/STRONG&gt;&lt;STRONG&gt;FIRST_LOOKUPS&lt;/STRONG&gt;&lt;STRONG&gt; IOTLB event?&lt;/STRONG&gt;&lt;SPAN&gt;&lt;SPAN&gt; The definition states it "Counts the first time a request looks up IOTLB." Is a single read/write request from a PCIe device considered one transaction is it just a single PCIe TLP?&lt;BR /&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;&lt;STRONG&gt;What is the function of the 4K-level PWC counter?&lt;/STRONG&gt;&lt;SPAN&gt; The spec mentions the PWC caches higher-level page table entries (PML4E, PDPE, PDE). Does the 4K-level PWC act as a cache for the final Page Table Entries (PTEs)? Then would it just not do the work as a extended TLB? &lt;STRONG&gt;Does every IOTLB miss &lt;EM&gt;always&lt;/EM&gt; go through this 4 K‑level cache before walking higher levels?&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 17 Jul 2025 01:23:43 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Tuning-Performance/Question-about-Icelake-IIO-Uncore-IOTLB-amp-PWC-Performance/m-p/1703835#M8556</guid>
      <dc:creator>Leshna</dc:creator>
      <dc:date>2025-07-17T01:23:43Z</dc:date>
    </item>
  </channel>
</rss>

