#12 "make check" fails on Core i5

developer
closed-fixed
5
2012-06-13
2010-04-18
No

I tried to build atlas-3.9.23 on cygwin 1.7.4, gcc 4.3.4. OS is
windows7 64bit and CPU is Core i5 430M. Although I could build
libraries, "make check" failed.

SCOPING FOR FAILURES IN CBLAS TESTS:
fgrep -e fault -e FAULT -e error -e ERROR -e fail -e FAIL \ interfaces/blas/C/testing/sanity.out | \ fgrep -v PASSED
******* FATAL ERROR - COMPUTED RESULT IS LESS THAN HALF ACCURATE *******
******* cblas_dsymv FAILED ON CALL NUMBER:
******* cblas_dsymv FAILED ON CALL NUMBER:
DONE
SCOPING FOR FAILURES IN F77BLAS TESTS:
fgrep -e fault -e FAULT -e error -e ERROR -e fail -e FAIL \ interfaces/blas/F77/testing/sanity.out | \ fgrep -v PASSED
******* FATAL ERROR - COMPUTED RESULT IS LESS THAN HALF ACCURATE *******
******* DSYMV FAILED ON CALL NUMBER:
DONE

The message showed that error occurred at cblas_dsymv. I generated a
test code dsymv_test.c to check cblas_dsymv. I used Marco' s ATLAS
library as reference. (http://matzeri.altervista.org/)

First, I compiled the test code and linked against Marco's libcblas.a
and libatlas.a. The result was OK. And then, I linked against
libcblas.a and libatlas.a which I built, and the result was NG.

Next, I extracted *.o files from *.a files, and linked against *.o
instead of *.a. Finally, I found that the result became NG if I linked
against my ATL_dgemvS_bX.o. I think that ATL_dgemvS_bX.o is
suspicious. In my environment, the command line to make
ATL_dgemvS_bX.o is as follows;

gcc -g3 -fomit-frame-pointer -mfpmath=sse -msse3 -O3
-fno-schedule-insns2 -m32 -o ATL_dgemvS_bX.o -c -DL2SIZE=4194304
-I/home/tmp/atl/lapack-3.2.1-3.9.23.i5.1/build/include
-I/home/tmp/atl/lapack-3.2.1-3.9.23.i5.1/src/ATLAS//include
-I/home/tmp/atl/lapack-3.2.1-3.9.23.i5.1/src/ATLAS//include/contrib
-DAdd_ -DF77_INTEGER=int -DStringSunStyle -DATL_OS_WinNT
-DATL_ARCH_UNKNOWNx86 -DATL_CPUMHZ=2270 -DGCCWIN -DUseClock -DATL_SSE3
-DATL_SSE2 -DATL_SSE1 -DATL_GAS_x8632 -DPentiumCPS=2270
-DATL_FULL_LAPACK -DATL_NCPU=4 -fomit-frame-pointer -O2 -DDREAL
-DATL_NOL1PREFETCH -DATL_NOL2PREFETCH -DBETAX -DALPHA1
-DATL_dgemvN_a1_x1_bX_y1=ATL_dgemvS_a1_x1_bX_y1 ATL_dgemvS.c

Discussion

  • Anonymous - 2010-04-18

    Log messages

     
  • Anonymous - 2010-04-18

    sanity.out for cblas

     
  • Anonymous - 2010-04-18

    sanity.out for f77blas

     
  • Anonymous - 2010-04-18

    test code

     
  • Anonymous - 2010-04-18

    suspicious code

     
  • Anonymous - 2010-04-18
    • summary: "make check" files on Core i5 --> "make check" fails on Core i5
     
  • R. Clint Whaley

    R. Clint Whaley - 2010-04-19

    Hi,

    I suspect (but have no proof) this is a compiler error. One thing to try is to replace '-O3' in the above compile command with '-O0'; if this fixes the problem, then there is greater reason to suspect compiler error . . .

    Thanks,
    Clint

     
  • R. Clint Whaley

    R. Clint Whaley - 2010-04-19
    • labels: 360151 --> Problems during install
    • assigned_to: nobody --> rwhaley
     
  • Nobody/Anonymous

    Hi Clint,

    Thank you for suggestion.
    I confirmed that compiling with '-O0' fixed the problem.
    '-O1' and '-O2' resulted in an incorrect calculation.
    Compiling with '-O3' ended up with errors like following.

    /tmp/ccISXZlz.s: Assembler messages:
    /tmp/ccISXZlz.s:7276: Error: symbol `dp3dpNbXm_N_as3dpNbXm' is already defined
    /tmp/ccISXZlz.s:7282: Error: symbol `dp3dpNbXm_N_loop3dpNbXm' is already defined
    (continues more)

    I have to wait for update of cygwin's gcc...

     
  • R. Clint Whaley

    R. Clint Whaley - 2010-04-20

    Another option to get something working in the meantime is to compile this file alone with gcc v 3, which is already available under cygwin (I think). Just put the full path to gccv3 for the compiler in the command you found, and at least maybe you can get a working lib . . .

    Thanks for the confirmation of the compiler problem, and for taking enough time to track this down . . .

    Thanks,
    Clint

     
  • R. Clint Whaley

    R. Clint Whaley - 2012-06-13

    Hi,

    I am very sorry for the looong delay, but I think I have gotten Windows fully supported in ATLAS 3.9.79. Using it, you can build 32-bit libs using either the cygwin compilers or the MinGW compilers, though you still need cygwin installed. The ATLAS installation guide that comes with the tarfile has Windows-specific installation instructions.

    Can you try 3.9.79 and let me know if it works for you?

    Many thanks,
    Clint

     
  • R. Clint Whaley

    R. Clint Whaley - 2012-06-13

    I think the tester failure was resolved in an earlier release, closing this as fixed. Reopen if same problem reoccurs, open new tracker item if new problem occurs.

    Thanks,
    Clint

     
  • R. Clint Whaley

    R. Clint Whaley - 2012-06-13
    • milestone: --> developer
    • status: open --> closed-fixed
     

Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks