search for: scop

Displaying 20 results from an estimated 212 matches for "scop".

Did you mean: scope
2013 Jun 30
4
[LLVMdev] [Polly][GSOC2013] FastPolly -- SCOP Detection Pass
Hi all, I have investigated the compile-time overhead of "Polly Scop Detection" pass based on LNT testing results. This mail is to share some results I have found. (1) Analysis of "SCOP Detection Pass" for PolyBench (Attached file PolyBench_SCoPs.log) Experimental results show that the "SCOP Detection pass" does not lead to significant ex...
2013 Jun 30
0
[LLVMdev] [Polly][GSOC2013] FastPolly -- SCOP Detection Pass
On 06/29/2013 05:04 PM, Star Tan wrote: > Hi all, > > > > I have investigated the compile-time overhead of "Polly Scop Detection" pass based on LNT testing results. > This mail is to share some results I have found. > > > (1) Analysis of "SCOP Detection Pass" for PolyBench (Attached file PolyBench_SCoPs.log) > Experimental results show that the "SCOP Detection pass" does not...
2013 Jul 01
1
[LLVMdev] [Polly][GSOC2013] FastPolly -- SCOP Detection Pass
At 2013-06-30 08:34:34,"Tobias Grosser" <tobias at grosser.es> wrote: >On 06/29/2013 05:04 PM, Star Tan wrote: >> Hi all, >> >> >> >> I have investigated the compile-time overhead of "Polly Scop Detection" pass based on LNT testing results. >> This mail is to share some results I have found. >> >> >> (1) Analysis of "SCOP Detection Pass" for PolyBench (Attached file PolyBench_SCoPs.log) >> Experimental results show that the "SCOP Detection...
2013 Jul 01
0
[LLVMdev] [Polly][GSOC2013] FastPolly -- SCOP Detection Pass
...(without Polly)? > Since tramp3d-v4.ll is to large (19M with 267 thousand lines), I would focus on the oggenc benchmark at firat. > I attached the oggenc.ll (LLVM-IR produced by clang -O0 without Polly), which compressed into the file oggenc.tgz. Sounds good. >> 2) Check why the Polly scop detection is failing >> >> You can use 'opt -polly-detect -analyze' to see the most common reasons >> the scop detection failed. We should verify that we perform the most >> common and cheap tests early. >> > I also attached the output file oggenc_polly_dete...
2013 Jul 01
3
[LLVMdev] [Polly][GSOC2013] FastPolly -- SCOP Detection Pass
...LVM-IR produced by clang -O0 (without Polly)? Since tramp3d-v4.ll is to large (19M with 267 thousand lines), I would focus on the oggenc benchmark at firat. I attached the oggenc.ll (LLVM-IR produced by clang -O0 without Polly), which compressed into the file oggenc.tgz. >2) Check why the Polly scop detection is failing > >You can use 'opt -polly-detect -analyze' to see the most common reasons >the scop detection failed. We should verify that we perform the most >common and cheap tests early. > I also attached the output file oggenc_polly_detect_analyze.log produced by...
2013 Jul 01
1
[LLVMdev] [Polly][GSOC2013] FastPolly -- SCOP Detection Pass
>> (3) About detecting scop regions in bottom-up order. >> Detecting scop regions in bottom-up order can significantly speed up the scop detection pass. However, as I have discussed with Sebastian, detecting scops in bottom-up order and up-bottom order will lead to different results. As a result, we should not change t...
2011 Nov 01
0
[LLVMdev] How to make Polly ignore some non-affine memory accesses
...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 -load ${PATH_TO_POLLY_LIB}/LLVMPolly.dylib -polly-scops -analyze code.preopt.ll I get: Printing analysis 'Polly - Create polyhedral description of Scops' for region: 'for.body3 => for.inc.single_exit' in function 'main': Invalid Scop! 0 libLLVM-3.1svn.dylib 0x0000000103fab905 _ZL15PrintStackTracePv + 53 1 libLLVM-3.1svn.d...
2011 Oct 27
2
[LLVMdev] How to make Polly ignore some non-affine memory accesses
Perfect, thank you very much :) 2011/10/26 Tobias Grosser <tobias at grosser.es>: > On 10/24/2011 11:32 PM, Marcello Maggioni wrote: >> >> Strange , with --enable-shared (I use auto tool by the way ...) it gives: >> >> MacBook-Pro-di-Marcello:examples Kariddi$ ./compile_ex.sh >> not_so_simple_loop >> clang (LLVM option parsing): Unknown command line
2016 Jun 20
2
[GSoC 2016] Polly as an Analysis pass - Midterm report
...ity, I would like to summarize my work till date for GSoC 2016. Till the current phase of my project, I have mostly focused on developing the necessary infrastructure to use analysis results from Polly in LLVM. Initial plan as mentioned in the proposal: For the first month:- 1. Decouple ScopInfo pass from Polly’s pass chain and provide capability to create SCoP(Static Control Parts) objects from arbitrary SESE regions. 2. Implement new passes ScopInfoWrapperPass and DependenceInfoWrapperPass as Function Passes. 3. Provide an interface to Polly’s dependence analysis...
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 branches can make , in practice , non affine the accesses to the memory operands even if the array subscript expression is affine itself, but I need a m...
2011 Sep 08
4
[LLVMdev] multi-threading in llvm
...as I know, both llvm-gcc and Polly already offer support for OpenMP, by inserting calls to the gomp library. Can this code be reused? Is there a pass that I can call to do all these code transformations? I had a look at the CodeGeneration from Polly. Is it possible to use it without creating the Scops, by transforming it into a LoopPass? Could you indicate how is this handled in llvm-gcc? Thank you for your help. Alexandra. -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20110908/a29ab04f/attachment.html&...
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 (i+j > 1000) to: if (i &g...
2012 Feb 12
0
[LLVMdev] Polly and non affine branches in ScoPs
...gt; 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 comprises something like "if (i % 2 == 0)" where i is a loop > varying variable) because these kind of branches can make , in > practice , non affine the accesses to the memory operands even if the > array subscript expression is affine it...
2017 Oct 14
3
[RFC] Polly Status and Integration
...plicates > algorithms when we could just reuse the data structures and algorithms > that already exist and have matured. > I have a feeling that the LLVM LoopInfo/Loop datastructure, which only focus on the CFG, is not sufficient. And we build extra layer upon the LLVM LoopInfo/Loop, e.g. Scop in Polly and the Hierarchical CFG in VPlan (right?). Maybe we can have layers between the existing LoopInfo/Loop and VPlan/SCoP: 1. LoopInfo/Loop 2. LoopInfo/Loop + Hierarchical CFG 3. LoopInfo/Loop + Hierarchical CFG + Memory Accesses description 4. VPlan/Scop I think layer 2 and 3 will be ver...
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 SCEVCouldNotCompute, but if I change the "if" block > inside the loop from: > if (...
2013 Jan 02
0
[LLVMdev] [DragonEgg] [Polly] Should we expect DragonEgg to produce identical LLVM IR for identical GIMPLE?
...ocSize: 4 storeSize: 4 replacedBy: { Stmt__12_cloned_[i0, i1, i2] -> NULL[o0] : o0 >= 47248855040 + 16384i0 + 256i1 + 4i2 and o0 <= 47248855043 + 16384i0 + 256i1 + 4i2 } Number of good nested parallel loops: 3 Average size of loops: 64 64 64 <------------------------------ Scop: end -----------------------------------> <------------------------------ Scop: start ---------------------------------> <------------------- Cloog AST of Scop -------------------> for (c2=0;c2<=63;c2++) { for (c4=0;c4<=63;c4++) { for (c6=0;c6<=63;c6++) { Stmt__...
2011 Apr 08
2
[LLVMdev] [GSoC] Increase the coverage of Polly
2011/4/8 ether zhhb <etherzhhb at gmail.com>: > Hi, > > 2011/4/8 Vlad Krylov <krvladislav at gmail.com>: >> 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 A...
2013 Jul 30
3
[LLVMdev] [Polly] Update of Polly compile-time performance on LLVM test-suite
...Detect pass, it shows similar performance to "Polly-NoCodeGen". As shown in results, it reduces the compile-time overhead of some benchmarks such as tramp3dv4 (23.7%), simple_types_constant_folding(12.9%), oggenc(8.3%), loop_unroll(7.5%) At last, I also evaluated the performance of the ScopBottomUp patch that changes the up-down scop detection into bottom-up scop detection. Results can be viewed by: pNoCodeGen-ScopBottomUp: clang -O3 -load LLVMPolly.so (v.s. LLVMPolly-ScopBottomUp.so) -mllvm -polly-optimizer=none -mllvm -polly-code-generator=none http://188.40.87.11:8000/db_default/v...
2013 Aug 19
1
[LLVMdev] [Polly] Analysis of extra compile-time overhead for simple nested loops
...aster > >We can see if there are some optimization opportunities in isl to make >the code faster As shown in the above example, the key problem is the complex data dependence of the application, so I do not think it is the time to turn to ISL now. > >2) Generate a less complicated SCoP > >If possible, detect that the SCoP can be modelled with less statements >and less memory locations and do so. Do you mean we should detect smaller SCoP or represent the same SCoP with less statements and less memory locations? For the sake of execution performance, we should detect lar...
2011 Apr 08
0
[LLVMdev] [GSoC] Increase the coverage of Polly
On 04/08/2011 08:35 PM, Vlad Krylov wrote: > 2011/4/8 ether zhhb<etherzhhb at gmail.com>: >> Hi, >> >> 2011/4/8 Vlad Krylov<krvladislav at gmail.com>: >>> 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 >>>...