Opened 9 years ago
Closed 5 years ago
#12666 closed enhancement (wontfix)
Optional CLooG-PPL spkg
Reported by: | SimonKing | Owned by: | tbd |
---|---|---|---|
Priority: | major | Milestone: | sage-duplicate/invalid/wontfix |
Component: | packages: optional | Keywords: | CLooG PPL ISL GCC LTO |
Cc: | leif | Merged in: | |
Authors: | Reviewers: | François Bissey | |
Report Upstream: | N/A | Work issues: | |
Branch: | Commit: | ||
Dependencies: | #12672 | Stopgaps: |
Description (last modified by )
As much as I understand, for building GCC with "graphite" one needs CLooG-PPL
(the Chunky Loop Generator) being installed. Note that CLooG
plus PPL seems not to be enough
Hence, I suggest to have an optional spkg. At least on openSuse, the straight forward way to make an spkg (no patches, and an spkg-install and spkg-check that just to ./configure --prefix...
, make
, make install
and make check
) seems to work.
This is related with #12369, and depends on #12672.
spkg: http://boxen.math.washington.edu/home/SimonKing/SAGE/spkgs/cloog_ppl-0.15.11.spkg
Change History (23)
comment:1 Changed 9 years ago by
- Status changed from new to needs_review
comment:2 Changed 9 years ago by
comment:3 Changed 9 years ago by
It turns out that the gcc package from #12369 can not use this cloog package.
I am not sure whether this is because of wrong sources (there seems to be a difference between cloog and cloog-ppl) or a missing configuration option.
Anyway. With a cloog-ppl package using the options --with-gmp --with-ppl
, the gcc package seems to pick up CLooG PPL
. I'm afraid I can not post the updated packages, as sage.math seems to be down.
comment:4 Changed 9 years ago by
- Description modified (diff)
comment:5 Changed 9 years ago by
- Status changed from needs_review to needs_work
I think you are missing the configure option
--with-gmp-prefix="$SAGE_LOCAL"
comment:6 follow-up: ↓ 7 Changed 9 years ago by
(even though CLooG seems to build without that option, which I cannot really explain...)
comment:7 in reply to: ↑ 6 Changed 9 years ago by
Replying to jdemeyer:
(even though CLooG seems to build without that option, which I cannot really explain...)
I guess it is since CLooG
looks for GMP in the standard location, "standard" being determined by the --prefix="$SAGE_LOCAL"
option that I do provide.
Anyway. What is really missing is at least the option --with-ppl
, or even a cloog-ppl package with that option.
Since sage.math seems to be down, I can't post either of the two spkgs...
comment:8 Changed 9 years ago by
- Cc leif added
- Dependencies set to #12672 #12661
- Description modified (diff)
- Keywords PPL added
- Status changed from needs_work to needs_review
- Summary changed from Optional CLooG spkg to Optional CLooG-PPL spkg
Leif cited from the GCC prerequisites page:
CLooG-PPL version( 0.15 or CLooG 0.16 Necessary to build GCC with the Graphite loop optimizations. There are two versions available. CLooG-PPL 0.15 as well as CLooG 0.16. The former is the default right now. It can be downloaded from ftp://gcc.gnu.org/pub/gcc/infrastructure/ as cloog-ppl-0.15.tar.gz. CLooG 0.16 support is still in testing stage, but will be the default in future GCC releases. It is also available at ftp://gcc.gnu.org/pub/gcc/infrastructure/ as cloog-0.16.1.tar.gz. To use it add the additional configure option --enable-cloog-backend=isl. Even if CLooG 0.16 does not use PPL, PPL is still required for Graphite.
Actually, I found that cloog-0.16.1
does not work, i.e., gcc does not build. Hence, I made a cloog_ppl-0.15.11 spkg, that I suggest to make an optional spkg.
comment:9 follow-up: ↓ 10 Changed 9 years ago by
- Dependencies changed from #12672 #12661 to #12672
- Status changed from needs_review to needs_work
You are missing the configure options
--with-gmp="$SAGE_LOCAL" --with-ppl="$SAGE_LOCAL"
If I apply the following patch, CLooG-PPL builds fine (even without the GMP spkg):
-
spkg-install
diff -r 93c792cfd365 spkg-install
a b 10 10 SAGE_CONF_OPTS="--enable-shared --disable-static" 11 11 12 12 cd src 13 ./configure --libdir="$SAGE_LOCAL/lib" --prefix="$SAGE_LOCAL" --with-gmp --with-ppl$SAGE_CONF_OPTS13 ./configure --libdir="$SAGE_LOCAL/lib" --prefix="$SAGE_LOCAL" --with-gmp="$SAGE_LOCAL" --with-ppl="$SAGE_LOCAL" $SAGE_CONF_OPTS 14 14 $MAKE 15 15 if [ $? -ne 0 ]; then 16 16 echo "Error building CLooG PPL."
comment:10 in reply to: ↑ 9 Changed 9 years ago by
- Status changed from needs_work to needs_review
Replying to jdemeyer:
You are missing the configure options
--with-gmp="$SAGE_LOCAL" --with-ppl="$SAGE_LOCAL"If I apply the following patch, CLooG-PPL builds fine (even without the GMP spkg):
Cool! I just updated my spkg on boxen.math
comment:11 Changed 9 years ago by
Thanks, that seems to work.
Unfortunately, I'm afraid your earlier performance tests with GCC are now invalidated and should be done again with this spkg and without GMP.
comment:12 Changed 9 years ago by
- Description modified (diff)
comment:13 Changed 8 years ago by
- Milestone changed from sage-5.11 to sage-5.12
comment:14 follow-up: ↓ 18 Changed 7 years ago by
- Status changed from needs_review to needs_info
Should we obsolete this? Recent gcc still use cloog but with isl instead of ppl. Plus we upgraded ppl to 1.1 I don't think anyone patch cloog anymore to interface with ppl after 0.12.x. gcc was the main consumer of that.
comment:15 Changed 7 years ago by
- Milestone changed from sage-6.1 to sage-6.2
comment:16 Changed 7 years ago by
- Milestone changed from sage-6.2 to sage-6.3
comment:17 Changed 7 years ago by
- Milestone changed from sage-6.3 to sage-6.4
comment:18 in reply to: ↑ 14 Changed 5 years ago by
- Keywords ISL GCC LTO added
- Milestone changed from sage-6.4 to sage-duplicate/invalid/wontfix
- Status changed from needs_info to needs_review
Replying to fbissey:
Should we obsolete this? Recent gcc still use cloog but with isl instead of ppl. Plus we upgraded ppl to 1.1 I don't think anyone patch cloog anymore to interface with ppl after 0.12.x. gcc was the main consumer of that.
More than two and a half years later...
I think we can close this, as while GCC 4.9 still uses CLooG and ISL, GCC 5.x and 6.x have dropped CLooG and now only use ISL (if at all, i.e., with --enable-lto
).
Feel free to open a new ticket making ISL an optional package.
comment:19 Changed 5 years ago by
P.S.: --enable-lto
is meanwhile even the default. GCC will automatically pick up ISL when present (installed library and headers, or source in the build tree) and otherwise simply disable LTO support.
comment:20 follow-up: ↓ 21 Changed 5 years ago by
- Status changed from needs_review to positive_review
cloog/isl and previously ppl were for the graphite plugin which does loop optimization, not "link time optimization" unless you know something I don't. In any case I am for closing it too.
comment:21 in reply to: ↑ 20 ; follow-up: ↓ 22 Changed 5 years ago by
- Reviewers set to François Bissey
Replying to fbissey:
cloog/isl and previously ppl were for the graphite plugin which does loop optimization, not "link time optimization" unless you know something I don't.
Yes, but that was (at least years ago) also, if not only, done at link time. But LTO has massively changed (and improved) over the last years, they say.
Not sure whether CLooG was initially used during compilation as well.
In any case I am for closing it too.
Ok, I guess Simon won't complain either.
comment:22 in reply to: ↑ 21 Changed 5 years ago by
Replying to leif:
Replying to fbissey:
cloog/isl and previously ppl were for the graphite plugin which does loop optimization, not "link time optimization" unless you know something I don't.
Yes, but that was (at least years ago) also, if not only, done at link time. But LTO has massively changed (and improved) over the last years, they say.
Not sure whether CLooG was initially used during compilation as well.
Hmmm, strike that. I couldn't find any reference, and both seem indeed independent, while combining them may of course be advantageous. (Hence you're right, --enable-lto
is orthogonal to --with-isl
.)
comment:23 Changed 5 years ago by
- Resolution set to wontfix
- Status changed from positive_review to closed
Determined to be invalid/duplicate/wontfix (closing as "wontfix" as a catch-all resolution).
I forgot to mention that
CLooG
needsGMP
. Therefore it might be needed to install the spkg from #12661 as well.