periscop / cloog

The CLooG Code Generator in the Polyhedral Model
GNU Lesser General Public License v2.1
40 stars 23 forks source link

CLooG: SPECIAL test FAILED #25

Closed f0086 closed 9 years ago

f0086 commented 9 years ago

One test is failing for version 0.18.1 I am the maintainer of the AUR package. I've disabled the make check for now to keep the package working, but this is just a temp. solution.

             /*-----------------------------------------------*
              *       Testing CLooG: SPECIAL test set       
              *-----------------------------------------------*/
Check file ./isl/unroll.cloog \c
(options -first-unroll 1 ), \c
generating... \c
PASS
Check file ./isl/jacobi-shared.cloog \c
(options -f 4 -l -1 -override -strides 1 -sh 1 ), \c
generating... \c
--- cloog_temp  2015-01-13 22:20:38.094565777 +0100
+++ ./isl/jacobi-shared.c   2013-10-11 09:27:03.000000000 +0200
@@ -3,7 +3,7 @@
   if ((16*floord(t0-1,16) >= -N+g1+t0+1) && (16*floord(g1+t0-3,16) >= -N+g1+t0+1) && (32*floord(t1-1,32) >= -N+g2+t1+1) && (32*floord(g2+t1-3,32) >= t1-32)) {
     for (c0=max(-16*floord(t0-1,16)+t0,-16*floord(g1+t0-3,16)+t0);c0<=min(32,N-g1-1);c0+=16) {
       for (c1=-32*floord(t1-1,32)+t1;c1<=min(32,N-g2-1);c1+=32) {
-        if (c1 >= 1) {
+        if ((c1 >= 1) && (c1 <= 32)) {
           S1(c0+g1-1,c1+g2-1);
         }
       }
FAIL: ./isl/jacobi-shared.c is not the same
ftynse commented 9 years ago

I failed to reproduce this failure on different systems using both CLooG from git https://github.com/periscop/cloog/commit/88986e94581bece13c77d51ab18c7b20da14fb67 and from website bastoul.net.

CLooG uses isl library as a backend and isl evolves significantly over time. CLooG 0.18.1 is supposed to work with isl 0.12.1. It appears that a newer version of isl was used and it caused a failure. Some of functionality recently added to isl allows to eliminate spurious conditions as reported in the test case.

As a solution, you may either force CLooG to link against isl 0.12.1. Or use the latest ClooG release 0.18.3 with the latest isl release 0.14.

bondhugula commented 9 years ago

On Thursday 05 February 2015 07:26 PM, ftynse wrote:

I failed to reproduce this failure on different systems using both CLooG from git 88986e9 https://github.com/periscop/cloog/commit/88986e94581bece13c77d51ab18c7b20da14fb67 and from website bastoul.net http://www.bastoul.net/cloog/pages/download/count.php3?url=./cloog-0.18.1.tar.gz.

CLooG uses isl library as a backend and isl evolves significantly over time. CLooG 0.18.1 is supposed to work with isl 0.12.1. It appears that a newer version of isl was used and it caused a failure. Some of functionality recently added to isl allows to eliminate spurious conditions as reported in the test case.

As a solution, you may either force CLooG to link against isl 0.12.1. Or use the latest ClooG release 0.18.3 http://www.bastoul.net/cloog/pages/download/count.php3?url=./cloog-0.18.1.tar.gz with the latest isl release 0.14.

The above link points to 0.18.1 instead of 0.18.3. The right link to 0.18.3 is

http://www.bastoul.net/cloog/pages/download/count.php3?url=./cloog-0.18.3.tar.gz

~ Uday

— Reply to this email directly or view it on GitHub https://github.com/periscop/cloog/issues/25#issuecomment-73049281.Web Bug from https://github.com/notifications/beacon/AGrwkdpMizEPpmls2OwLMlfh_-gnfVQVks5no235gaJpZM4DR-GY.gif

This message has been scanned for viruses and dangerous content by MailScanner http://www.mailscanner.info/, and is believed to be clean.

This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean.

f0086 commented 9 years ago

Thanks! I've updated the package to 0.18.3

jonesrw commented 9 years ago

I have 2 tests failing on 0.18.3...one of them is the same as this thread.

Using gmake and gcc4.7.2, I compiled gmp-6.0.0 , mpfr-3.1.2, mpc-1.0.2, isl-0.14 When I attempted to compile cloog-0.18.3 configure could not find isl installed. I then compiled isl-0.12.2 and changed the sym links in lib: libisl.a (from isl-0.12.2) libisl.la (from isl-0.12.2) libisl.so -> libisl.so.10.2.2 libisl.so.10 -> libisl.so.10.2.2 libisl.so.10.2.2 (from isl-0.12.2) libisl.so.10.2.2-gdb.py (from isl-0.12.2) libisl.so.13 -> libisl.so.13.1.0 libisl.so.13.1.0 (from isl-0.14) libisl.so.13.1.0-gdb.py (from isl-0.14)

When I attempted to compile cloog-0.18.3 AGAIN, configure passed, everything compiled and all tests passed. I then compiled gcc4.9.2 with all these libraries.

I then went back and recompiled the libs once more using gcc4.9.2. All tests passed for each lib before and after each libs install.

UNTIL I got to cloog. It's failing these two tests..output below.

This thread says used isl-0.14, but cloog-0.18.3 configure does not detect it. Two questions:

  1. Does these errors really cause a problem for the package?
  2. How do you override the configure test and link with isl-0.14?

ERROR LOGS:

Check file /appl/gfpip/local_build/src/bastoul.net/cloog-0.18.3/test/reservoir/QR.cloog (no option), generating... 
--- cloog-0.18.3/test/reservoir/QR.c       2014-12-08 10:05:37.000000000 +0000
+++ cloog_temp  2015-03-20 20:41:16.431838000 +0000
@@ -1,12 +1,6 @@
-/* Generated from ./reservoir/QR.cloog by CLooG 0.18.1-2-g43fc508 gmp bits in 0.07s. */
+/* Generated from cloog-0.18.3/test/reservoir/QR.cloog by CLooG 0.18.3 gmp bits in 1.44s. */
 if (N >= 1) {
   S1(0);
-  if ((M <= 0) && (N >= 2)) {
-    S3(0);
-    S10(0);
-    S1(1);
-    S5(0);
-  }
if ((M >= 1) && (N == 1)) {
     for (c4=0;c4<=M-1;c4++) {
       S2(0,c4);
@@ -34,6 +28,12 @@
     S10(0);
     S1(1);
     S5(0);
+  }
+  if ((M <= 0) && (N >= 2)) {
+    S3(0);
+    S10(0);
+    S1(1);
+    S5(0);
   }
for (c2=2;c2<=min(M,N-1);c2++) {
     for (c4=c2-1;c4<=N-1;c4++) {
-e ^[[31mFAIL: cloog-0.18.3/test/reservoir/QR.c has a problem^[[0m
Check file cloog-0.18.3/test/reservoir/tang-xue1.cloog (no option), generating... PASS
Check file cloog-0.18.3/test/reservoir/two.cloog (no option), generating... PASS
Check file cloog-0.18.3/test/isl/mod.cloog (no option), generating... PASS
Check file cloog-0.18.3/test/isl/mod2.cloog (no option), generating... PASS
Check file cloog-0.18.3/test/isl/mod3.cloog (no option), generating... PASS
Check file cloog-0.18.3/test/isl/mod4.cloog (no option), generating... PASS
^[[31m[CLooG] FAIL: 1 tests failed in C^[[0m

FAIL: check_special.sh
======================

             /*-----------------------------------------------*
              *       Testing CLooG: SPECIAL test set
              *-----------------------------------------------*/
Check file cloog-0.18.3/test/isl/unroll.cloog (options -first-unroll 1 ), generating... PASS
Check file cloog-0.18.3/test/isl/jacobi-shared.cloog (options -f 4 -l -1 -override -strides 1 -sh 1 ), generat
ing... 

--- cloog-0.18.3/test/isl/jacobi-shared.c        2014-12-08 10:05:37.000000000 +0000
+++ cloog_temp  2015-03-20 20:41:32.965265000 +0000
@@ -3,7 +3,7 @@
   if ((16*floord(t0-1,16) >= -N+g1+t0+1) && (16*floord(g1+t0-3,16) >= -N+g1+t0+1) && (32*floord(t1-1,32) >= -N+g2+t1+1) && (32*floord(g2+t1-3,32) >=
t1-32)) {
     for (c0=max(-16*floord(t0-1,16)+t0,-16*floord(g1+t0-3,16)+t0);c0<=min(32,N-g1-1);c0+=16) {
       for (c1=-32*floord(t1-1,32)+t1;c1<=min(32,N-g2-1);c1+=32) {
-        if (c1 >= 1) {
+        if ((c1 >= 1) && (c1 <= 32)) {
           S1((c0+g1-1),(c1+g2-1));
         }
       }
-e ^[[31mFAIL: cloog-0.18.3/test/isl/jacobi-shared.c has a problem^[[0m
Check file cloog-0.18.3/test/isl/unroll2.cloog (options -first-unroll 1 ), generating... PASS
Check file cloog-0.18.3/test/backtrack.cloog (options -f 1 -backtrack ), generating... PASS
Check file cloog-0.18.3/test/vasilache.cloog (options -f 8 -l 9 ), generating... PASS
Check file cloog-0.18.3/test/merge.cloog (options -f -1 ), generating... PASS
Check file cloog-0.18.3/test/equality.cloog (options -f -1 -l 2 -override ), generating... PASS
Check file cloog-0.18.3/test/equality2.cloog (options -f -1 -l 4 -esp 1 -override ), generating... PASS
Check file cloog-0.18.3/test/otl.cloog (options -block 1 -esp 0 -otl 0 ), generating... PASS
Check file cloog-0.18.3/test/param-split.cloog (options -f -1 ), generating... PASS
Check file cloog-0.18.3/test/pouchet.cloog (options -f 3 -l 7 ), generating... PASS
Check file cloog-0.18.3/test/stride.cloog (options -f -1 -strides 1 ), generating... PASS
Check file cloog-0.18.3/test/stride2.cloog (options -f -1 -strides 1 ), generating... PASS
Check file cloog-0.18.3/test/sor1d.cloog (options -f -1 ), generating... PASS
^[[31m[CLooG] FAIL: 1 tests failed in SPECIAL^[[0m