<div class="gmail_quote">On Sun, Jul 22, 2012 at 1:50 PM, Matthew Knepley <span dir="ltr"><<a href="mailto:knepley@gmail.com" target="_blank">knepley@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div id=":vc">I think we have to figure out how to do this pipelined thing in a mechanical way (not necessarily automated, but<div>done without thinking). You would think this had been figured out by the architecture guys.</div>
</div></blockquote></div><br><div>Bah, those guys don't use mathematical invariants so when they see an instruction sequence like a Krylov method, they say there is a data dependency and the pipeline stalls. The pipelined Krylov methods use the structure and the choices you make affect stability. In the case of GMRES, I think we just add an extra VecMDotBegin/End pair in with projection against the prior Krylov space (before normalization).</div>