Comments (4)
Which branch are you using? Please always report the output of ./polycc -v as well.
from pluto.
With the pet branch,
$ ./polycc -v
PLUTO version 0.11.4-225-g598d464
$ ./polycc test/test9.c --lastwriter --pet -o kernel.out.c
test/test9.c:2:3: error: expected identifier or '('
for (i = 1; i < N+1; i++)
^
test/test9.c:9:3: error: expected identifier or '('
for (i = 1; i < N+1; i++)
^
[pluto] No SCoPs extracted or error extracting SCoPs using pet
Note that with --pet, you need a valid C program as input as opposed to the SCoP snippet; without the --pet, just a SCoP portion will work fine.
Without --pet,
$ ./polycc test/test9.c --lastwriter -o kernel.out.c
[pluto] compute_deps (isl with lastwriter)
[pluto] Number of statements: 2
[pluto] Total number of loops: 6
[pluto] Number of deps: 14
[pluto] Maximum domain dimensionality: 3
[pluto] Number of parameters: 1
[pluto] Affine transformations [<iter coeff's> ]
T(S1): (i, j, k)
loop types (loop, loop, loop)
T(S2): (i+1, j+1, k+1)
loop types (loop, loop, loop)
[pluto] using Cloog -f/-l options: 1 3
[Pluto] Output written to kernel.out.c
[pluto] Timing statistics
[pluto] SCoP extraction + dependence analysis time: 0.006503s
[pluto] Auto-transformation time: 0.055939s
[pluto] Code generation time: 0.015238s
[pluto] Other/Misc time: 0.070019s
[pluto] Total time: 0.147699s
[pluto] All times: 0.006503 0.055939 0.015238 0.070019
Both outputs are along expected lines.
from pluto.
I am using the current head of the pet branch:
% git rev-parse HEAD
bb1dbc89e42d2653cb702250830e4d3602e7aa67
% polycc -v
PLUTO version 0.11.4-252-gbb1dbc8 - An automatic parallelizer and locality optimizer
Copyright (C) 2007--2015 Uday Bondhugula
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
The complete C-file that triggers the problem can be found here: https://pastebin.com/XqGxX7J3
% polycc kernel.c --pet
[pluto] Number of statements: 2
[pluto] Total number of loops: 6
[pluto] Number of deps: 2
[pluto] Maximum domain dimensionality: 3
[pluto] Number of parameters: 0
.../polycc: line 54: 6104 Segmentation fault (core dumped) $pluto $*
from pluto.
Looks like we missed this issue. I'm able to reproduce this now, and it's due to a constraint explosion. You can work around t his by not using --pet; it works fine with the Clan frontend. But in general, addressing this requires an alternative scheme that we have as default in our internal git. We can push it here in another 3 days.
from pluto.
Related Issues (20)
- Loop Unrolling and Scalar Replacement (Register-level Tiling) HOT 2
- [Only QUERY] Any plan to update Pluto for LLVM 18.x release? HOT 1
- Can I compile pluto without -fopenmp? HOT 2
- error running make (pet): invalid use of incomplete type 'class clang::Builtin::Context HOT 4
- Compilation error and solution HOT 4
- Diamond tiling helper function cone complement hyperplane doesn't have a GLPK path
- getting errors trying to parallelize my code HOT 1
- build candl error happend when make HOT 1
- difference between cut_smart and cut_conservative HOT 7
- What compiler can I use to compile pluto? HOT 15
- Fix build configuration to properly build test_libpluto and unit_tests
- OpenScop's scatter function semantics? HOT 1
- Error running make (on pet.lo) HOT 2
- while using "make -j4", the process fails. HOT 2
- Error when unrolling HOT 4
- Error in building pluto dev version HOT 1
- problem in configure and make HOT 2
- A starter Dockerfile for pluto
- build failing for cloog-isl with error message: /usr/bin/texi2dvi: pdfetex exited with bad status, quitting. make[3]: *** [Makefile:2301: doc/cloog.pdf] Error 1 HOT 3
- pet build error: /usr/include/c++/9/bits/stl_tree.h:785:8: error: static assertion failed: comparison object must be invocable as const HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pluto.