similar to: [LLVMdev] Polly - extending its polyhedral model

Displaying 20 results from an estimated 6000 matches similar to: "[LLVMdev] Polly - extending its polyhedral model"

2016 Mar 24
3
Polly as an Analysis pass in LLVM
On 03/23, Hongbin Zheng wrote: > Hi Johannes, > > On Mon, Mar 21, 2016 at 6:35 PM, Johannes Doerfert < > doerfert at cs.uni-saarland.de> wrote: > > > Hey Utpal, > > > > First of, I think you made nice process here and have some very good > > ideas of what we could do in the future. > > > > [NOTE: I CC'ed some people that have shown
2011 Nov 02
5
[LLVMdev] How to make Polly ignore some non-affine memory accesses
Mmm I found out a very strange behavior (to me) of the SCEV analysis of the loop bound of the external loop I posted. When in ScopDetection it gets the SCEV of the external loop bound in the "isValidLoop()" function with: const SCEV *LoopCount = SE->getBackedgeTakenCount(L); It returns a SCEVCouldNotCompute, but if I change the "if" block inside the loop from: if
2016 Mar 25
0
Polly as an Analysis pass in LLVM
In the design the LLVM passes always directly communicate with PolyhedralInfo, this requires Polly tightly integrate in to LLVM. If we do not want a tight integration, we can do the following: 1. Introduce an abstract memory dependency query interface, like AliasAnalysis 2. I remember LLVM had already have dependency analysis, this can be the default implementation of the memory dependency query
2016 Mar 25
1
Polly as an Analysis pass in LLVM
Hi ether, Your suggestion is appropriate with respect to LLVM framework. However, I am not aware of such a common interface for Dependence Analysis as there is one for AliasAnalysis. The current plan is to provide the new Dependence Analysis interface that can be used when the other analysis engines fail to provide a concrete result. I do not want to overestimate things by proposing such a common
2016 Mar 21
3
Polly as an Analysis pass in LLVM
Hey Utpal, First of, I think you made nice process here and have some very good ideas of what we could do in the future. [NOTE: I CC'ed some people that have shown interest in this topic but I might have forgotten some, therefor I also added the llvm-dev list.] For the upcoming GSoC proposal we should slow down a little bit and reevaluate our goals. After talking to a couple of LLVM and
2016 Mar 23
0
Polly as an Analysis pass in LLVM
Hi Johannes, On Mon, Mar 21, 2016 at 6:35 PM, Johannes Doerfert < doerfert at cs.uni-saarland.de> wrote: > Hey Utpal, > > First of, I think you made nice process here and have some very good > ideas of what we could do in the future. > > [NOTE: I CC'ed some people that have shown interest in this topic but I > might have forgotten some, therefor I also added the
2011 Oct 01
2
[LLVMdev] How to make Polly ignore some non-affine memory accesses
Hello everyone, I'm trying to use LLVM+Polly to obtain a polyhedral representation of some loops to use later for passes I want to implement, but seems like Polly will stop when reaching any statement that has non-affine access functions of the loop bounds discarding the whole SCoP entirely. What I would like to achieve is still getting some information for the statements that , instead,
2011 Oct 01
0
[LLVMdev] How to make Polly ignore some non-affine memory accesses
On 10/01/2011 03:26 PM, Marcello Maggioni wrote: > Hello everyone, > > I'm trying to use LLVM+Polly to obtain a polyhedral representation of > some loops to use later for passes I want to implement, but seems like > Polly will stop when reaching any statement that has non-affine access > functions of the loop bounds discarding the whole SCoP entirely. > > What I would
2018 Jan 28
1
Polly Dependency Analysis in MyPass
HI Hameeza, what do mean by link is still missing? Currently it is not possible to use polyhedral information from within in-tree LLVM passes. This is because Polly is not currently part of the LLVM tree, and is only linked into the tools as an external project. I.e., you can't depend on Polly passes in an in-tree pass. What you can do, though, is use Polly from an out-of-tree context. If
2012 Feb 12
0
[LLVMdev] Polly and non affine branches in ScoPs
On 02/08/2012 08:08 PM, Marcello Maggioni wrote: > Hi, I'm using Polly to analyze memory access patterns for an > university project and I'm trying to get polly working on some loops > that polly marks as "containing non affine branches" . Hi Marcello, sorry for the long delay. > From what I understand polly skips Scops that contain these branches > (which
2012 Feb 14
1
[LLVMdev] Polly and non affine branches in ScoPs
2012/2/12 Tobias Grosser <tobias at grosser.es>: > On 02/08/2012 08:08 PM, Marcello Maggioni wrote: >> >> Hi, I'm using Polly to analyze memory access patterns for an >> university project and I'm trying to get polly working on some loops >> that polly marks as "containing non affine branches" . > > > Hi Marcello, > > sorry for the
2012 Feb 08
2
[LLVMdev] Polly and non affine branches in ScoPs
Hi, I'm using Polly to analyze memory access patterns for an university project and I'm trying to get polly working on some loops that polly marks as "containing non affine branches" . >From what I understand polly skips Scops that contain these branches (which comprises something like "if (i % 2 == 0)" where i is a loop varying variable) because these kind of
2011 Nov 18
5
[LLVMdev] How to make Polly ignore some non-affine memory accesses
2011/11/15 Marcello Maggioni <hayarms at gmail.com>: > 2011/11/14 Tobias Grosser <tobias at grosser.es>: >> On 11/14/2011 02:45 PM, Marcello Maggioni wrote: >>> >>> 2011/11/14 Tobias Grosser<tobias at grosser.es>: >>>> >>>> On 11/14/2011 01:24 AM, Marcello Maggioni wrote: >>>>> >>>>> Hi Tobias.
2011 Nov 14
1
[LLVMdev] How to make Polly ignore some non-affine memory accesses
On 11/14/2011 01:24 AM, Marcello Maggioni wrote: > Hi Tobias. > > I worked on enabling Polly accepting non affine memory accesses and I > produced a patch. Great. > I saw that there were a lot of updates in Polly recently, so I had to > redo a lot of the work I did and that slowed me quite a bit. Ups, sorry! However, I believe without these changes detecting non-affine memory
2018 Jan 28
0
Polly Dependency Analysis in MyPass
I have modified the code as follows; now i am using both scopdetection and scopinformation before dependency check but i think link is missing... virtual bool runOnFunction(Function &F) { std::unique_ptr<ScopInfo> Result; std::unique_ptr<ScopDetection> Result2; //polly::ScopDetection pl; auto &LI = getAnalysis<LoopInfoWrapperPass>().getLoopInfo(); auto
2018 Jan 28
4
Polly Dependency Analysis in MyPass
Hello, I need to analyze dependencies in my llvm ir by using polly. i created a new pass called mypass there i added polly dependency analysis pass but when i execute this pass in gdb i get no data. Why is that so? My code is follows; namespace { struct mypass : public FunctionPass { static char ID; mypass() : FunctionPass(ID) { } virtual bool runOnFunction(Function &F) {
2011 Nov 03
0
[LLVMdev] How to make Polly ignore some non-affine memory accesses
On 11/02/2011 11:17 AM, Marcello Maggioni wrote: > Mmm I found out a very strange behavior (to me) of the SCEV analysis > of the loop bound of the external loop I posted. > When in ScopDetection it gets the SCEV of the external loop bound in > the "isValidLoop()" function with: > const SCEV *LoopCount = SE->getBackedgeTakenCount(L); > > It returns a
2011 Nov 01
0
[LLVMdev] How to make Polly ignore some non-affine memory accesses
Mmm, this code seems to kill polly: #include <stdio.h> #include <stdlib.h> int main() { char *B; int i,j,k,h; const int x = 0, y=0; B = (char *)malloc(sizeof(char)*1024*1024); for (i = 1; i < 1024; i++) for (j = 1; j < 1024; j++) { if (i+j > 1000) B[j] = i; } printf("Random Value: %d", B[rand() % 1024*1024]); return 0; } running: opt
2011 Apr 07
3
[LLVMdev] [GSoC] Increase the coverage of Polly
Hi. I see that to detect scops firstly we search for regions in CFG ( by RegionInfo ) and then select regions that answer some requirements ( in ScopDetection ). Because only affine expressions in conditions and bounds are permissible, we trying to get scalar expressions into affine form by AffineSCEVIterator. At present there plugs for scev types Truncate, ZeroExtend, SignExtend, UDivExpr,
2011 Oct 03
4
[LLVMdev] How to make Polly ignore some non-affine memory accesses
Hi Tobias, thanks for the answer. I'll try to give a look to the code you pointed me to , and I'll try to make the modification myself. I'm new to LLVM and Polly, but the code of both seem clean and understandable, so I hope to be able to do it myself. In case I'll ask here for support :) Marcello 2011/10/1 Tobias Grosser <tobias at grosser.es>: > On 10/01/2011 03:26