<div dir="ltr"><span style="font-size:small;line-height:20px">Hi Fernando, </span><br style="font-size:small;line-height:20px"><br style="font-size:small;line-height:20px"><span style="font-size:small;line-height:20px">Thanks for writing these papers on divergence analysis! They are really useful, and I enjoyed reading them.  </span><div style="font-size:small;line-height:20px"><span style="font-size:13.1999998092651px;line-height:1.5"><br></span></div><div style="font-size:small;line-height:20px"><span style="font-size:13.1999998092651px;line-height:1.5">I should've talked to you earlier. I didn't know you have an LLVM implementation already; I only saw from your paper that you implemented the algorithm on Ocelot. </span></div><div style="font-size:small;line-height:20px"><br></div><div style="font-size:small;line-height:20px"><span style="font-size:13.1999998092651px;line-height:19.7999992370605px">I'll read the journal version. At the same time, if you have a chance, feel free to share your implementation! </span></div><div style="font-size:small;line-height:20px"><span style="font-size:13.1999998092651px;line-height:19.7999992370605px"><br></span></div><div style="font-size:small;line-height:20px"><span style="font-size:13.1999998092651px;line-height:19.7999992370605px">Best,</span></div><div style="font-size:small;line-height:20px"><span style="font-size:13.1999998092651px;line-height:19.7999992370605px">Jingyue</span></div><br><div class="gmail_quote">On Tue, Mar 24, 2015 at 11:21 AM Fernando Magno Quintao Pereira <<a href="mailto:fernando@dcc.ufmg.br">fernando@dcc.ufmg.br</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Dear Jingyue,<br>
<br>
    I shall review your code, as soon as time allows it (OOPSLA's<br>
deadline is just tomorrow). But, just in case, I would like to point<br>
you out to this paper: <a href="http://dl.acm.org/citation.cfm?id=2523815" target="_blank">http://dl.acm.org/citation.<u></u>cfm?id=2523815</a> I<br>
believe that nowadays that is the most definitive description of the<br>
divergence analysis. In particular, your algorithm is Section 3.3.<br>
<br>
Regards,<br>
<br>
Fernando<br>
<br>
<br>
---------- Forwarded message ----------<br>
From: Daniel Berlin <<a href="mailto:dberlin@dberlin.org" target="_blank">dberlin@dberlin.org</a>><br>
Date: Tue, Mar 24, 2015 at 2:56 PM<br>
Subject: Re: [PATCH] Divergence analysis for GPU programs<br>
To: <a href="mailto:reviews%2BD8576%2Bpublic%2B5cb1d077b321f30e@reviews.llvm.org" target="_blank">reviews+D8576+public+<u></u>5cb1d077b321f30e@reviews.llvm.<u></u>org</a><br>
Cc: Jingyue Wu <<a href="mailto:jingyue@google.com" target="_blank">jingyue@google.com</a>>, Owen Anderson <<a href="mailto:resistor@mac.com" target="_blank">resistor@mac.com</a>>,<br>
Hal Finkel <<a href="mailto:hfinkel@anl.gov" target="_blank">hfinkel@anl.gov</a>>, Eli Bendersky <<a href="mailto:eliben@google.com" target="_blank">eliben@google.com</a>>, Mark<br>
Heffernan <<a href="mailto:meheff@google.com" target="_blank">meheff@google.com</a>>, Justin Holewinski<br>
<<a href="mailto:justin.holewinski@gmail.com" target="_blank">justin.holewinski@gmail.com</a>>, Commit Messages and Patches for LLVM<br>
<<a href="mailto:llvm-commits@cs.uiuc.edu" target="_blank">llvm-commits@cs.uiuc.edu</a>>, <a href="mailto:fernando@dcc.ufmg.br" target="_blank">fernando@dcc.ufmg.br</a><br>
<br>
<br>
+fernando, who wrote the paper on divergence analysis you cite (and<br>
some follow-ons, i believe), and had an LLVM implementation of it.<br>
It may make sense for him to look over the algorithm itself.<br>
<br>
<br>
(Note that looking at your paper, i'll point out their is a version<br>
that handles affine constraints, etc at<br>
<a href="https://hal.inria.fr/hal-00650235v1/document" target="_blank">https://hal.inria.fr/hal-<u></u>00650235v1/document</a>.  I have no opinion on<br>
whether it's better for your usecases, but I know it can be made as<br>
fast as your current algorithm :P)<br>
<br>
<br>
On Tue, Mar 24, 2015 at 10:48 AM, Eric Christopher <<a href="mailto:echristo@gmail.com" target="_blank">echristo@gmail.com</a>> wrote:<br>
><br>
> Drive by review: Needs some code comments explaining the functions (though I admit that most of them are pretty straightforward so just a simple "this is the point of this function would be good). Otherwise I don't see anything in particular. Nice big block comment at the top with the explanation. :)<br>
><br>
> -eric<br>
><br>
><br>
> <a href="http://reviews.llvm.org/D8576" target="_blank">http://reviews.llvm.org/D8576</a><br>
><br>
> EMAIL PREFERENCES<br>
>   <a href="http://reviews.llvm.org/settings/panel/emailpreferences/" target="_blank">http://reviews.llvm.org/<u></u>settings/panel/<u></u>emailpreferences/</a><br>
><br>
><br>
><br>
> ______________________________<u></u>_________________<br>
> llvm-commits mailing list<br>
> <a href="mailto:llvm-commits@cs.uiuc.edu" target="_blank">llvm-commits@cs.uiuc.edu</a><br>
> <a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits" target="_blank">http://lists.cs.uiuc.edu/<u></u>mailman/listinfo/llvm-commits</a><br>
</blockquote></div></div>