<?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 Re:Understanding MS Switches in Analyzers</title>
    <link>https://community.intel.com/t5/Analyzers/Understanding-MS-Switches/m-p/1217433#M19506</link>
    <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;Well I read the description inthe manual etc and I am looking for the reason it applies to the div instruction. I am assuming the div hear as the flagged instruction is the next one after the div.&lt;/P&gt;</description>
    <pubDate>Wed, 14 Oct 2020 02:15:48 GMT</pubDate>
    <dc:creator>Clift__Neill</dc:creator>
    <dc:date>2020-10-14T02:15:48Z</dc:date>
    <item>
      <title>Understanding MS Switches</title>
      <link>https://community.intel.com/t5/Analyzers/Understanding-MS-Switches/m-p/1216506#M19478</link>
      <description>&lt;P&gt;I am interested in understanding the MS Switches counter in the micro architecture exploration.&lt;/P&gt;
&lt;P&gt;I saw this flagged as red in the summary and thought based on the description that I was using some instruction that couldn't be handled easily by the processor. Instead I see an div instruction.&lt;/P&gt;
&lt;P&gt;Now I know divides are performance killers. I have a dual 16 core broadwell system with hyperthreading. I try to minimize divides. I just added this divide instead of a table lookup and I got faster code. I know that the resources to do divides are shared by hyperthreads and I have all of the threads working.&lt;/P&gt;
&lt;P&gt;So is this just an indication that this shared resource is the bottleneck?&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Clift__Neill_0-1602364302872.png" style="width: 400px;"&gt;&lt;img src="https://community.intel.com/t5/image/serverpage/image-id/13090i2EAB8C5D2E715865/image-size/medium/is-moderation-mode/true?v=v2&amp;amp;px=400&amp;amp;whitelist-exif-data=Orientation%2CResolution%2COriginalDefaultFinalSize%2CCopyright" role="button" title="Clift__Neill_0-1602364302872.png" alt="Clift__Neill_0-1602364302872.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sat, 10 Oct 2020 21:16:59 GMT</pubDate>
      <guid>https://community.intel.com/t5/Analyzers/Understanding-MS-Switches/m-p/1216506#M19478</guid>
      <dc:creator>Clift__Neill</dc:creator>
      <dc:date>2020-10-10T21:16:59Z</dc:date>
    </item>
    <item>
      <title>Re:Understanding MS Switches</title>
      <link>https://community.intel.com/t5/Analyzers/Understanding-MS-Switches/m-p/1217159#M19498</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;We are forwarding the case to SME.&lt;/P&gt;&lt;BR /&gt;</description>
      <pubDate>Tue, 13 Oct 2020 10:45:55 GMT</pubDate>
      <guid>https://community.intel.com/t5/Analyzers/Understanding-MS-Switches/m-p/1217159#M19498</guid>
      <dc:creator>JananiC_Intel</dc:creator>
      <dc:date>2020-10-13T10:45:55Z</dc:date>
    </item>
    <item>
      <title>Re:Understanding MS Switches</title>
      <link>https://community.intel.com/t5/Analyzers/Understanding-MS-Switches/m-p/1217239#M19501</link>
      <description>&lt;P&gt;We have a pretty good description in our reference manual: &lt;A href="https://software.intel.com/content/www/us/en/develop/documentation/vtune-help/top/reference/cpu-metrics-reference/front-end-bound/ms-switches.html" target="_blank"&gt;https://software.intel.com/content/www/us/en/develop/documentation/vtune-help/top/reference/cpu-metrics-reference/front-end-bound/ms-switches.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;/P&gt;&lt;H1&gt;MS Switches&lt;/H1&gt;&lt;H2&gt;Metric Description&lt;/H2&gt;&lt;P&gt;This metric represents a fraction of cycles when the CPU was stalled due to switches of uop delivery to the Microcode Sequencer (MS). Commonly used instructions are optimized for delivery by the DSB or MITE pipelines. Certain operations cannot be handled natively by the execution pipeline, and must be performed by microcode (small programs injected into the execution stream). Switching to the MS too often can negatively impact performance. The MS is designated to deliver long uOp flows required by CISC instructions like CPUID, or uncommon conditions like Floating Point Assists when dealing with Denormals.&lt;/P&gt;&lt;H2&gt;Possible Issues&lt;/H2&gt;&lt;P&gt;A significant fraction of cycles was stalled due to switches of uOp delivery to the Microcode Sequencer (MS). Commonly used instructions are optimized for delivery by the DSB or MITE pipelines. Certain operations cannot be handled natively by the execution pipeline, and must be performed by microcode (small programs injected into the execution stream). Switching to the MS too often can negatively impact performance. The MS is designated to deliver long uOp flows required by CISC instructions like CPUID, or uncommon conditions like Floating Point Assists when dealing with Denormals. Note that this metric value may be highlighted due to Microcode Sequencer issue.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;/P&gt;&lt;BR /&gt;</description>
      <pubDate>Tue, 13 Oct 2020 15:34:25 GMT</pubDate>
      <guid>https://community.intel.com/t5/Analyzers/Understanding-MS-Switches/m-p/1217239#M19501</guid>
      <dc:creator>Kevin_O_Intel1</dc:creator>
      <dc:date>2020-10-13T15:34:25Z</dc:date>
    </item>
    <item>
      <title>Re:Understanding MS Switches</title>
      <link>https://community.intel.com/t5/Analyzers/Understanding-MS-Switches/m-p/1217433#M19506</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;Well I read the description inthe manual etc and I am looking for the reason it applies to the div instruction. I am assuming the div hear as the flagged instruction is the next one after the div.&lt;/P&gt;</description>
      <pubDate>Wed, 14 Oct 2020 02:15:48 GMT</pubDate>
      <guid>https://community.intel.com/t5/Analyzers/Understanding-MS-Switches/m-p/1217433#M19506</guid>
      <dc:creator>Clift__Neill</dc:creator>
      <dc:date>2020-10-14T02:15:48Z</dc:date>
    </item>
    <item>
      <title>Re:Understanding MS Switches</title>
      <link>https://community.intel.com/t5/Analyzers/Understanding-MS-Switches/m-p/1218037#M19518</link>
      <description>&lt;P&gt;Your analysis looks correct.&lt;/P&gt;&lt;P&gt;Events sometimes have what is known as "skid" there is a measurable time interval from where an event occurs to when we can get the PC and record where it occurs. Often, in the case of instructions that do take longer time, you will need to examine the instruction flow to find the likely culprit.&lt;/P&gt;&lt;BR /&gt;</description>
      <pubDate>Thu, 15 Oct 2020 12:45:52 GMT</pubDate>
      <guid>https://community.intel.com/t5/Analyzers/Understanding-MS-Switches/m-p/1218037#M19518</guid>
      <dc:creator>Kevin_O_Intel1</dc:creator>
      <dc:date>2020-10-15T12:45:52Z</dc:date>
    </item>
  </channel>
</rss>

