<?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 The Energy Performance Bias in Software Tuning, Performance Optimization &amp; Platform Monitoring</title>
    <link>https://community.intel.com/t5/Software-Tuning-Performance/MSRs-to-query-processor-settings/m-p/1155332#M6919</link>
    <description>&lt;P&gt;The Energy Performance Bias can be controlled by IA32_ENERGY_PERF_BIAS (MSR 0x1B0), as described in Section 14.3 of Volume 3 of the Intel Architectures SW Developer's Manual.&amp;nbsp; According to Volume 4, this is now an "architectural" register.&amp;nbsp;&amp;nbsp; Of course, to keep us confused, the BIOS can disable this register, or can configure the processor to ignore it.&amp;nbsp; The latter case is irritating because you have to create and run tests to see if changing the value in this MSR changes the processor's behavior.&lt;/P&gt;&lt;P&gt;If "Hardware-Controlled Performance States" (HWP) is enabled, the Energy-Performance Bias (referred to as the "Energy Performance Preference") can be controlled using IA32_HWP_REQUEST (MSR 0x774) and/or IA32_HWP_REQUEST_PKG (MSR 0x772).&amp;nbsp;&amp;nbsp; This is documented in section 14.4 of Volume 3 of the Intel Architectures SW Developer's Manual.&amp;nbsp;&amp;nbsp; The BIOS can disable HWP as well, though I think this is less common.&amp;nbsp;&amp;nbsp;&amp;nbsp; I use this approach because the Linux CPU frequency control interfaces are poorly designed and are seriously broken on the CentOS 7 releases that I tested (probably 7.2 and 7.3).&lt;/P&gt;&lt;P&gt;I suspect that CoD/SNC and QPI Snoop Mode have to be configured before handing off control to the OS, so it would not be possible to change these settings.&amp;nbsp; I agree that it would be nice to have read-only access to that configuration information.&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;If I recall correctly, on one of our Haswell systems, the configuration information related to DRAM interleaving was in a region "Extended PCI Configuration Space" that was blocked by the BIOS.&amp;nbsp; Fortunately, I was able to open a UEFI shell from the BIOS prompt, perform a hex dump of the relevant memory-mapped PCI configuration space (before the BIOS locked it), photograph the screen with my cell phone, and then manually decode the settings.&amp;nbsp; Not the most convenient approach, but at least I was able to find the data....&lt;/P&gt;</description>
    <pubDate>Tue, 19 Feb 2019 17:02:12 GMT</pubDate>
    <dc:creator>McCalpinJohn</dc:creator>
    <dc:date>2019-02-19T17:02:12Z</dc:date>
    <item>
      <title>MSRs to query processor settings</title>
      <link>https://community.intel.com/t5/Software-Tuning-Performance/MSRs-to-query-processor-settings/m-p/1155331#M6918</link>
      <description>&lt;P&gt;Hi all,&lt;/P&gt;&lt;P&gt;over the recent years, the number of BIOS settings that affect the performance properties of Intel Xeon processors&amp;nbsp;has been steadily increasing. As a result, measurements are becoming more and more useless without the corresponding processor settings, which reduces the chances of reliably (re)producing measurements.&lt;/P&gt;&lt;P&gt;To address this problem, we'd like to include functionality to dump the processor's current settings in the LIKWID toolkit, since rebooting the system&amp;nbsp;and inspecting the BIOS for the current settings (some of which are not even displayed in 3rd party BIOSs) is not an option in productive environments.&lt;/P&gt;&lt;P&gt;For the moment, we have identified the following (BIOS) settings to have a significant impact on performance (individual settings result in changes of 5-20% but cumulatively the impact can be much higher!):&amp;nbsp;&lt;/P&gt;&lt;P&gt;- Uncore frequency:&amp;nbsp;MSRs have been published, 0x620 includes upper and lower bound between which the Uncore frequency can vary&lt;/P&gt;&lt;P&gt;- COD/SNC mode: Whether this mode is enabled or disabled can be inferred indirectly&amp;nbsp;from the system's NUMA properties. Nevertheless, it would be nice to know the MSR that contain's the on/off bit for that setting, for it seems that some BIOS vendors have trouble complying with the instructions laid out in the EDS (e.g., we have a SKL in a Supermicro board where enabling SNC and disabling deal CL allocation leads to an undefined configuration in which one NUMA node is present per processor that only uses one of a processor's two memory controllers)&lt;/P&gt;&lt;P&gt;- QPI Snoop mode: Significant impact on latency and sustained memory bandwidth but no MSRs known/publicly available&lt;/P&gt;&lt;P&gt;- EPB: No MSRs known/publicly available&lt;/P&gt;&lt;P&gt;- New LLC HWPF on SKL: No MSRs known/publicly available, although all other MSR for the other four HWPFs is documented here:&amp;nbsp;https://software.intel.com/en-us/articles/disclosure-of-hw-prefetcher-control-on-some-intel-processors&lt;/P&gt;&lt;P&gt;- SMT: Can be indirectly determined via node topology but no MSRs known/publicly available&lt;/P&gt;&lt;P&gt;- Dead LC allocation: No MSR known/publicly available&lt;/P&gt;&lt;P&gt;We'd greatly appreciate it if the corresponding MSRs are made public. If this is not an option, please consider providing an Intel-made tool to dump the settings.&lt;/P&gt;</description>
      <pubDate>Tue, 19 Feb 2019 12:40:25 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Tuning-Performance/MSRs-to-query-processor-settings/m-p/1155331#M6918</guid>
      <dc:creator>JJoha8</dc:creator>
      <dc:date>2019-02-19T12:40:25Z</dc:date>
    </item>
    <item>
      <title>The Energy Performance Bias</title>
      <link>https://community.intel.com/t5/Software-Tuning-Performance/MSRs-to-query-processor-settings/m-p/1155332#M6919</link>
      <description>&lt;P&gt;The Energy Performance Bias can be controlled by IA32_ENERGY_PERF_BIAS (MSR 0x1B0), as described in Section 14.3 of Volume 3 of the Intel Architectures SW Developer's Manual.&amp;nbsp; According to Volume 4, this is now an "architectural" register.&amp;nbsp;&amp;nbsp; Of course, to keep us confused, the BIOS can disable this register, or can configure the processor to ignore it.&amp;nbsp; The latter case is irritating because you have to create and run tests to see if changing the value in this MSR changes the processor's behavior.&lt;/P&gt;&lt;P&gt;If "Hardware-Controlled Performance States" (HWP) is enabled, the Energy-Performance Bias (referred to as the "Energy Performance Preference") can be controlled using IA32_HWP_REQUEST (MSR 0x774) and/or IA32_HWP_REQUEST_PKG (MSR 0x772).&amp;nbsp;&amp;nbsp; This is documented in section 14.4 of Volume 3 of the Intel Architectures SW Developer's Manual.&amp;nbsp;&amp;nbsp; The BIOS can disable HWP as well, though I think this is less common.&amp;nbsp;&amp;nbsp;&amp;nbsp; I use this approach because the Linux CPU frequency control interfaces are poorly designed and are seriously broken on the CentOS 7 releases that I tested (probably 7.2 and 7.3).&lt;/P&gt;&lt;P&gt;I suspect that CoD/SNC and QPI Snoop Mode have to be configured before handing off control to the OS, so it would not be possible to change these settings.&amp;nbsp; I agree that it would be nice to have read-only access to that configuration information.&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;If I recall correctly, on one of our Haswell systems, the configuration information related to DRAM interleaving was in a region "Extended PCI Configuration Space" that was blocked by the BIOS.&amp;nbsp; Fortunately, I was able to open a UEFI shell from the BIOS prompt, perform a hex dump of the relevant memory-mapped PCI configuration space (before the BIOS locked it), photograph the screen with my cell phone, and then manually decode the settings.&amp;nbsp; Not the most convenient approach, but at least I was able to find the data....&lt;/P&gt;</description>
      <pubDate>Tue, 19 Feb 2019 17:02:12 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Tuning-Performance/MSRs-to-query-processor-settings/m-p/1155332#M6919</guid>
      <dc:creator>McCalpinJohn</dc:creator>
      <dc:date>2019-02-19T17:02:12Z</dc:date>
    </item>
  </channel>
</rss>

