<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Sat, Jan 24, 2015 at 5:39 PM, Owen Anderson <span dir="ltr"><<a href="mailto:resistor@mac.com" target="_blank">resistor@mac.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class=""><br>
<br>
> On Jan 24, 2015, at 5:02 AM, Sean Silva <<a href="mailto:chisophugis@gmail.com">chisophugis@gmail.com</a>> wrote:<br>
><br>
> I actually think the general problem that this thread has been talking about (how to determine if a particular optimization is going to enable further optimizations) is very interesting in general, but I would take this particular example with a grain of salt because is a very specific stylized computation.<br>
<br>
</span>I see variations of this optimization come up in many contexts in graphics programming, not just convolutions.  It's very common in code that operates on 4x4 matrices, which comes up frequently in vertex shaders.<br>
<br>
Convolutions and stencils are particularly interesting in that there are *even more* optimizations you can do for them, typically with the goal of improving cache locality.  But what Michael is proposing is useful for other classes of programs as well.<br>
<span class="HOEnZb"><font color="#888888"><br></font></span></blockquote><div><br></div><div>Great! I just wanted raise "gain of salt"-level awareness of the specificity of this particular example.</div><div><br></div><div>-- Sean Silva</div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="HOEnZb"><font color="#888888">
-Owen</font></span></blockquote></div><br></div></div>