similar to: [LLVMdev] Problem with LoopDependenceAnalysis

Displaying 20 results from an estimated 2000 matches similar to: "[LLVMdev] Problem with LoopDependenceAnalysis"

2012 Mar 15
0
[LLVMdev] Problem with LoopDependenceAnalysis
On Thu, 15 Mar 2012 09:57:00 -0700 Preston Briggs <preston.briggs at gmail.com> wrote: > Shanmukha Rao wrote: > > I am using LLVM for implementing LoopFission pass. > > I am using LoopPass. > > I know that for checking circular dependency in loop I have to use > > LoopDependenceAnalysis > > > > This is what i want to do. > >         for(int i =
2012 Mar 20
1
[LLVMdev] Problem with LoopDependenceAnalysis
Shanmuhka wrote: > I looked at the sanjoys patch for SIV Test. And i figured out that this is exactly what i need. > as the comments said, check if subscript A can possibly have the same value as B in analyseSIV(A,B) > but i didn't get How to use this information ? > > lets just say in the above program > When i use depends function it shows the dependency from load of x to
2012 Mar 15
2
[LLVMdev] Problem with LoopDependenceAnalysis
Hi, I am using LLVM for implementing LoopFission pass. I am using LoopPass. I know that for checking circular dependency in loop I have to use LoopDependenceAnalysis This is what i want to do. for(int i = 0; i< n ; i++){ s1 : a[i] = a[i] + x[i]; s2 : x[i] = x[i+1] + i*2 ; } /**there is no dependence from s2 to s1/ so after distribution(it
2012 Apr 05
3
[LLVMdev] SIV tests in LoopDependence Analysis, Sanjoy's patch
Hi Sanjoy, Reading through LoopDependenceAnalysis::analyseStrongSIV(), I noticed one problem and one confusion. My confusion related to your naming of the two instructions as A and B. It's consistent all through LoopDependenceAnalysis. I'd prefer something like source and destination, so I can keep track of which is which. It didn't matter so much when you were simply proving or
2012 Mar 19
6
[LLVMdev] SIV tests in LoopDependence Analysis, Sanjoy's patch
Gents, I spent some time reading over Sanjoy's patch for LoopDependenceAnalysis. Unfortunately, an early version of these notes escaped; this is the complete review. First off, I agree with his choice to implement the SIV tests. For scientific Fortran, the SIV (and the simpler ZIV) tests cover about 85% of the cases in practice. For C and C++, I expect the percentage will be much higher.
2012 Apr 12
6
[LLVMdev] SIV tests in LoopDependence Analysis, Sanjoy's patch
Hi, Here is a preliminary (monolithic) version you can comment on. This is still buggy, however, and I'll be testing for and fixing bugs over the next few days. I've used your version of the strong siv test. Thanks! -- Sanjoy Das. http://playingwithpointers.com -------------- next part -------------- A non-text attachment was scrubbed... Name: patch.diff Type: application/octet-stream
2012 Apr 23
0
[LLVMdev] SIV tests in LoopDependence Analysis, Sanjoy's patch
Hi, When I write various test cases and explore how they're handled by the code in LoopDependenceAnalysis::analysePair, I'm surprised. This loop collects pairs of subscripts from the source and destination refs. * // Collect GEP operand pairs (FIXME: use GetGEPOperands from BasicAA), adding* * // trailing zeroes to the smaller GEP, if needed.* * GEPOpdsTy destOpds, srcOpds;* *
2012 Mar 26
0
[LLVMdev] SIV tests in LoopDependence Analysis, Sanjoy's patch
Hi Hal, Preston! Sorry for the delay! Got busy with some offline work. I've worked on my previous code to calculate direction and distance vectors whenever possible (strong SIV, basically). I think the current code is much clearer and would like your opinions on it. I have attached the patch and also pushed to the github repo I mentioned [1]. Thanks! [1]
2012 Mar 29
2
[LLVMdev] SIV tests in LoopDependence Analysis, Sanjoy's patch
Hi Sanjoy & Hal, Looking at LoopDependenceAnalysis::analyzeZIV ... I don't understand much about SCEV, but the code seems inadequate. Consider these three examples: int a = ...; // we can't be sure of the relationship between a and b int b = ...; // perhaps they are parameters, or the result of I/O for (int i = 0; i < n; i++) { v[a][i] = ...; v[a + 1][i] = ...; } for (int i
2012 Apr 01
0
[LLVMdev] SIV tests in LoopDependence Analysis, Sanjoy's patch
Hi Preston, Thanks for the feedback! > In LoopDependenceAnalysis::AnalyzePair, what's going to happen if we > have something like this > > for (i = 0; i < n; i++) > for (j = 0; j < n; j++) > A[i][j]++; > > versus > > for (i = 0; i < n; i++) > for (j = 0; j < n; j++) > A[j][i]++; I think this can be fixed by ordering the subscripts
2012 Apr 21
3
[LLVMdev] SIV tests in LoopDependence Analysis, Sanjoy's patch
Hi all, 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. Thanks! -- Sanjoy Das http://playingwithpointers.com
2012 May 14
0
[LLVMdev] SIV tests in LoopDependence Analysis, Sanjoy's patch
On Sat, Apr 21, 2012 at 6:08 AM, Sanjoy Das <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
2012 Apr 19
0
[LLVMdev] SIV tests in LoopDependence Analysis, Sanjoy's patch
Hi Sanjoy, Here's a version of Banerjee and Wolfe's Exact SIV test: https://sites.google.com/site/parallelizationforllvm/weak-siv-test It assumes you've already filtered out the easy cases handled by ZIV, strong SIV, etc. I'm not confident about my uses of APInt. If you have any comments, I'd love to hear them. Thanks, Preston On Thu, Apr 12, 2012 at 5:14 AM, Sanjoy Das
2012 Apr 08
0
[LLVMdev] SIV tests in LoopDependence Analysis, Sanjoy's patch
Hi Sanjoy, I reworked the code for analyzeStrongSIV to fix a couple of mistakes, plus squeeze all the advantage possible from the symbolic manipulation provided by the SCEVs. It's sketched out here: https://sites.google.com/site/parallelizationforllvm/strong-siv-test Does it makes sense to you? Thanks, Preston On Thu, Apr 5, 2012 at 4:09 PM, Preston Briggs <preston.briggs at
2012 Nov 09
1
[LLVMdev] Loop carried dependence analysis?
Hi, The DependenceAnalysis pass will find loop-carried dependences. However, it is a conservative analysis and will sometimes suggest there may be more dependences than actually exist. In your example, I expect the analysis is confused for some reason and is returning the default confused response. You could test it using the isConfused() method. Note that the DVEntry::ALL direction is always
2012 Feb 04
2
[LLVMdev] Vectorization: Next Steps
Hal wrote: > 3. Loop vectorization - It would be nice to have, in addition to > basic-block vectorization, a more-traditional loop vectorization pass. I > think that we'll need a better loop analysis pass in order for this to > happen. Some of this was started in LoopDependenceAnalysis, but that > pass is not yet finished. We'll need something like this to recognize >
2013 Aug 08
2
[LLVMdev] How to gather data dependences
Valmico <valmico88 at gmail.com> wrote: > I'm currently trying to develop new LLVM Pass that will generate > simple data dependencies graph. For now I'm trying to get familiar > with DependenceAnalysis. > My general idea is to traverse each function (runOnFunction) > top to bottom Instruction by Instruction, using DA.depends( I, I2, ...) > on every Instructions
2011 Dec 13
1
[LLVMdev] Memory Dependence Analysis
Howdy, I'm working on writing a dependence analyzer (rather like what LoopDependenceAnalysis wants to be, except a bit more general). While this is a problem of many parts, I'm currently focusing on finding pairs of memory references to test for dependence. Consider this contrived C code: double test2(int n, double *restrict A, double *restrict B, bool flag) { if (flag) { A[0] =
2012 Apr 20
2
[LLVMdev] SIV tests in LoopDependence Analysis, Sanjoy's patch
On Wed, 18 Apr 2012 18:16:47 -0700 Preston Briggs <preston.briggs at gmail.com> wrote: > Hi Sanjoy, > > Here's a version of Banerjee and Wolfe's Exact SIV test: > https://sites.google.com/site/parallelizationforllvm/weak-siv-test > It assumes you've already filtered out the easy cases handled by ZIV, > strong SIV, etc. > > I'm not confident about my
2012 May 14
2
[LLVMdev] SIV tests in LoopDependence Analysis, Sanjoy's patch
On Mon, 14 May 2012 11:46:02 -0700 Preston Briggs <preston.briggs at gmail.com> wrote: > On Sat, Apr 21, 2012 at 6:08 AM, Sanjoy Das > <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, >