<br><div class="gmail_quote"><div dir="auto">On Thu, Jan 4, 2018 at 6:16 PM Tom Mitchell <<a href="mailto:mitch@niftyegg.com">mitch@niftyegg.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div class="gmail_extra"><div class="gmail_quote">On Thu, Jan 4, 2018 at 2:23 PM, Henry Baker <span><<a href="mailto:hbaker1@pipeline.com" target="_blank">hbaker1@pipeline.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><span class="m_7847979202029954874gmail-">At 01:32 PM 1/4/2018, <a href="mailto:jamesd@echeque.com" target="_blank">jamesd@echeque.com</a> wrote:<br>
>The fix is not to abandon speculative execution, but to do it right, and chances are that doing it right is going to be faster and more efficient, not slower and less efficient.<br>
<br>
</span>OK, I'll bite.<br>
<br>
How would you do speculative execution "right" ?<br>
<div class="m_7847979202029954874gmail-HOEnZb"><div class="m_7847979202029954874gmail-h5"></div></div></blockquote><div> </div><div><br></div><div><br></div></div></div></div><div><div class="gmail_extra"><div class="gmail_quote"><div><span style="color:rgb(80,0,80)">One  is to make sure we know which of the multitude of problems </span></div><div><span style="color:rgb(80,0,80)">is being discussed.<br><br></span><div>Two is to have more (or less) registers to speculate into.  Speculation </div><div>depths of 200+ instructions touches at a lot of stuff and has</div><div>a lot of results that may need to be canceled and unwound. </div></div></div></div></div></blockquote><div dir="auto">.....</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="gmail_extra"><div class="gmail_quote"><div><span style="color:rgb(80,0,80)"></span></div><div><br></div><div>No easy answer.   Time to dust off my system and computer architecture library.</div></div></div></blockquote><div dir="auto"><br></div><div dir="auto"><br></div><div dir="auto">There is a nice near forty page discussion in Hennessy and Paterson “Computer Archecture a Quantitave Approach”</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="gmail_extra"><div class="gmail_quote"><div></div></div></div></blockquote><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="gmail_extra"><div class="gmail_quote"><div></div></div></div></blockquote><div dir="auto"><br></div><div dir="auto">Hardware, software and compilers get involved.</div><div dir="auto">There are some gcc and .asm file changes going in </div><div dir="auto">and some make sense after reviewing H&P.  </div><div dir="auto"><br></div><div dir="auto">There are multiple issues and comments have been redacted so it is</div><div dir="auto">hard to apply things nicely one to one...</div><div dir="auto"><br></div><div dir="auto"><br></div></div><div dir="ltr">-- <br></div><div class="gmail_signature" data-smartmail="gmail_signature">Tinny keyboard.. Mobile ... I am</div>