<story><title>The Mill CPU Architecture: Switches [video]</title><url>http://millcomputing.com/docs/switches</url></story><parent_chain><item><author>deepnotderp</author><text>Well, I&amp;#x27;d love to get some discussion here.&lt;p&gt;One of the perennial questions that I&amp;#x27;ve never received a satisfactory answer to is: Where&amp;#x27;s the ILP?&lt;p&gt;Everytime I get asked this, I get referred to the &amp;quot;Phasing&amp;quot; talk, but that isn&amp;#x27;t a satisfactory response either.&lt;p&gt;I think quantitative analysis will prove to be far more nuanced and damning than expected. Take this paper (&lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;pdfs.semanticscholar.org&amp;#x2F;1002&amp;#x2F;50a822251d1302c146ab499635af2b3adb45.pdf&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;pdfs.semanticscholar.org&amp;#x2F;1002&amp;#x2F;50a822251d1302c146ab49...&lt;/a&gt;). This paper analyzes a processor with &lt;i&gt;much STRONGER&lt;/i&gt; characteristics than the Mill: It dynamically identifies these dependencies and then schedules them.&lt;p&gt;The result? It gets smashed by a classic OoO.</text></item></parent_chain><comment><author>wtallis</author><text>&amp;gt; This paper analyzes a processor with much STRONGER characteristics than the Mill: It dynamically identifies these dependencies and then schedules them.&lt;p&gt;I&amp;#x27;m not really sure what this means, especially &amp;quot;stronger characteristics&amp;quot;. The paper seems to have started with an idealized OoO processor, then subtracted from its capabilities and demonstrated that performance suffered. No surprise there, but that&amp;#x27;s not easy to translate into a comparison against the Mill.&lt;p&gt;The Mill is not expected to ever compete against a full OoO processor of equivalent width; the Mill is expected to always be much wider.&lt;p&gt;I haven&amp;#x27;t fully thought through the implications, but I think there might be a significant difference in the instruction scheduling algorithm between the paper&amp;#x27;s model and a Mill. The paper&amp;#x27;s model will queue an instruction as soon as at least one of its dependencies has been scheduled, or slot it into an empty queue (where it may cause head of line blocking). By contrast, the ahead-of-time scheduling done by a compiler for the Mill won&amp;#x27;t issue an instruction until all of its dependencies are in the pipeline and due to finish in time (or stall for memory fetches), and uses explicit NOPs instead of head of line blocking on an issue queue.</text></comment>
<story><title>The Mill CPU Architecture: Switches [video]</title><url>http://millcomputing.com/docs/switches</url></story><parent_chain><item><author>deepnotderp</author><text>Well, I&amp;#x27;d love to get some discussion here.&lt;p&gt;One of the perennial questions that I&amp;#x27;ve never received a satisfactory answer to is: Where&amp;#x27;s the ILP?&lt;p&gt;Everytime I get asked this, I get referred to the &amp;quot;Phasing&amp;quot; talk, but that isn&amp;#x27;t a satisfactory response either.&lt;p&gt;I think quantitative analysis will prove to be far more nuanced and damning than expected. Take this paper (&lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;pdfs.semanticscholar.org&amp;#x2F;1002&amp;#x2F;50a822251d1302c146ab499635af2b3adb45.pdf&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;pdfs.semanticscholar.org&amp;#x2F;1002&amp;#x2F;50a822251d1302c146ab49...&lt;/a&gt;). This paper analyzes a processor with &lt;i&gt;much STRONGER&lt;/i&gt; characteristics than the Mill: It dynamically identifies these dependencies and then schedules them.&lt;p&gt;The result? It gets smashed by a classic OoO.</text></item></parent_chain><comment><author>cwzwarich</author><text>It seems to me that the main fundamentally new idea of the Mill is the deferred load mechanism described in the Memory talk. They claim that it can complete with OoO execution with a much simpler implementation. It does require some of the other Mill mechanisms for full efficiency, e.g. it uses the belt to defer loads across calls.&lt;p&gt;If this mechanism doesn&amp;#x27;t work as expected with real software, then there&amp;#x27;s no reason to think that the Mill will fare any better for general-purpose computation than any earlier VLIW&amp;#x2F;EPIC machine, for all the same reasons as before. And in that same talk they make some claims about OoO that seem a bit naive. The state-of-the-art has evolved a lot since the company was founded in 2003.</text></comment>