[LLVMdev] SIV tests in LoopDependence Analysis, Sanjoy's patch
Nick Lewycky
nicholas at mxc.ca
Mon May 14 17:06:27 PDT 2012
Preston Briggs wrote:
> On Sat, Apr 21, 2012 at 6:08 AM, Sanjoy Das
> <sanjoy at playingwithpointers.com <mailto:sanjoy at playingwithpointers.com>>
> wrote:
> >
> > Sorry for having been quiet for so long, I have my university exams
> > going on, and will be able to contribute only after the coming Friday.
>
> Gents,
>
> While you've been fooling around with exams, I have been focused with
> laser-like intensity, or something...
> Here are new versions of 4 SIV tests:
>
> * the Strong SIV test:
> https://sites.google.com/site/parallelizationforllvm/strong-siv-test
> * the Weak-Zero SIV test:
> https://sites.google.com/site/parallelizationforllvm/weak-zero-siv-test
> * the Weak-Crossing SIV test:
> https://sites.google.com/site/parallelizationforllvm/weak-crossing-siv-test
> * the Exact SIV test:
> https://sites.google.com/site/parallelizationforllvm/weak-siv-test
>
> and our first MIV test:
>
> * the RDIV test:
> https://sites.google.com/site/parallelizationforllvm/rdiv-test
>
> If you have any thoughts about this code, I'd be very interested in
> hearing them.
One issue: don't use floating-point in LLVM. We want LLVM to behave the
same on different computers, and practically that means avoiding floats.
This code:
double TMUL = BM.sdiv(G).roundToDouble(true);
if (TMUL > 0) {
TL = fmax(TL, (-X).roundToDouble(true) / TMUL);
from the RDIV test is not okay. You can use APFloat if you like, that's
our soft-coded float library that produces reproducible results.
Nick
> I'm going to take a break from working on these low-level tests and
> spend some time working top-down on the high-level structure of the
> Delta Test (finding coupled subscripts, etc).
>
> Preston
>
>
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
More information about the llvm-dev
mailing list