<div dir="ltr"><div><div><div><div><div>Hi John,<br><br></div>Thanks for the suggestions!<br><br></div>The book seems to be a good place to start.<br></div>And the vectorization code, yes, I have started going through the papers!<br>

<br></div>Thanks,<br></div>Rahul<br><div><div><div><div><div><div><div><br><br></div></div></div></div></div></div></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Feb 5, 2014 at 5:40 AM, John Criswell <span dir="ltr"><<a href="mailto:criswell@illinois.edu" target="_blank">criswell@illinois.edu</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">On 2/4/14 5:44 PM, rahul wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi all,<br>
<br>
<br>
I have been working with Clang for a while now and have worked on a few bug fixes.<br>
<br>
I would like to delve further in the area of Vectorization and get familiar with its code.<br>
<br>
It would be great if someone could help me by pointing out a few resources which will help<br>
me understand Vectorization?<br>
</blockquote></blockquote>
<br></div>
I'm not sure which techniques the LLVM vectorization code uses, but Optimizing Compilers for Modern Architectures by Allen and Kennedy describes the basic challenges with vectorization well and describes vectorization algorithms for array-based programs.  Those techniques, or techniques similar to them, are probably what the LLVM vectorization code uses.<br>


<br>
That said, have you taken a look at the LLVM vectorization code? The comments may list books or papers that describe the algorithms that the code implements.<br>
<br>
-- John T.<br>
<br>
</blockquote></div><br></div>