abinit-6.12.3 - getting a clean make check

option, parallelism,...

Moderators: fgoudreault, mcote

Forum rules
Please have a look at ~abinit/doc/config/build-config.ac in the source package for detailed and up-to-date information about the configuration of Abinit 8 builds.
For a video explanation on how to build Abinit 7.x for Linux, please go to: http://www.youtube.com/watch?v=DppLQ-KQA68.
IMPORTANT: when an answer solves your problem, please check the little green V-like button on its upper-right corner to accept it.
Locked
Thomas I.
Posts: 1
Joined: Tue May 22, 2012 1:11 pm

abinit-6.12.3 - getting a clean make check

Post by Thomas I. » Tue May 22, 2012 1:26 pm

I am trying to build abinit-6.12.3 on a cluster of AMD Opteron(TM) Processor 6274. I have tried multiple build configurations, but whatever I do, I cannot get make check to complete without error. Should this be reason for concern or is this expected?

For example:

Code: Select all

# software versions
 intel/12.1, fftw/3.3.1, mkl/12.1, openmpi/1.5.5

# configure line
LAPACK="-lmkl_intel_lp64 -lmkl_sequential -lmkl_core"
CC=mpicc CXX=mpiCC FC=mpif90 LAPACK="-lmkl_scalapack_lp64 -lmkl_blacs_openmpi_lp64 -lmkl_core -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_lapack -lmkl_solver_lp64" CFLAGS="-O3" FCFLAGS="-O3" CXXFLAGS="-O3" ./configure LIBS="-L$MKL_LIB $LAPACK" --with-linalg-includes="-I$MKL_INC" --with-linalg-libs="-L$MKL_LIB $LAPACK" --enable-64bit-flags --prefix=/sw/atlas/applications/abinit/6.12.3-intel-mkl --enable-mpi="yes" --enable-gui --enable-shared --with-fft-flavor="fftw3" --with-fft-include="-I$FFTW_INC" --with-fft-libs="-L$FFTW_LIB -lfftw3" --with-dft-flavor="libxc"

# make mj4

# make check end result

make[5]: Leaving directory `.../abinit-6.12.3-intel-mkl-try2/tests'
make[4]: Leaving directory `.../abinit-6.12.3-intel-mkl-try2/tests'
etsf_io/tmp-test_Linux_20120522/report:Case_06            failed
etsf_io/tmp-test_Linux_20120522/report:Case_07            failed
etsf_io/tmp-test_Linux_20120522/report:Case_08            failed
tutorespfn/tmp-test_Linux_20120522/report:Case_nlo_5            failed (too large absolute error : 0.008489203 , accepted 0.000e+00 )
tutorial/tmp-test_Linux_20120522/report:Case_gw1_5            failed (too many erroneous lines : 11 , accepted 10 )
tutorial/tmp-test_Linux_20120522/report:Case_gw1_6            failed (too many erroneous lines : 40 , accepted 36 )
tutorial/tmp-test_Linux_20120522/report:Case_gw2_3            failed (too large absolute error : 7.337 , accepted 5.010e-06 )
tutorial/tmp-test_Linux_20120522/report:Case_gw2_4            failed (too large absolute error : 5.409 , accepted 1.010e-06 )
v2/tmp-test_Linux_20120522/report:Case_13            failed
v2/tmp-test_Linux_20120522/report:Case_18            failed
v2/tmp-test_Linux_20120522/report:Case_21            failed (too large absolute error : 0.00359935108538 , accepted 2.510e-10 )
v2/tmp-test_Linux_20120522/report:Case_98            failed (too many erroneous lines : 18 , accepted 17 )
v3/tmp-test_Linux_20120522/report:Case_83            failed (too many erroneous lines : 4 , accepted 2 )
v4/tmp-test_Linux_20120522/report:Case_54            failed (too large absolute error : 0.00999999999999091 , accepted 0.000e+00 )
v4/tmp-test_Linux_20120522/report:Case_68            failed (too large absolute error : 0.00457609999999997 , accepted 5.637e-05 )
v4/tmp-test_Linux_20120522/report:Case_71            failed
v4/tmp-test_Linux_20120522/report:Case_84            failed (too large absolute error : 4.032 , accepted 1.010e-03 )
v4/tmp-test_Linux_20120522/report:Case_85            failed (too large absolute error : 6.729 , accepted 1.001e-03 )
v4/tmp-test_Linux_20120522/report:Case_86            failed (too large absolute error : 11.766 , accepted 1.010e-03 )
v5/tmp-test_Linux_20120522/report:Case_45            failed
v5/tmp-test_Linux_20120522/report:Case_71            failed (too large absolute error : 3.771 , accepted 1.010e-03 )
v6/tmp-test_Linux_20120522/report:Case_37            failed (too large absolute error : 0.6677935615 , accepted 2.0e-5 )
v6/tmp-test_Linux_20120522/report:Case_40            failed (too large absolute error : 2.09999999993826e-05 , accepted 2.0e-7 )
v6/tmp-test_Linux_20120522/report:Case_89            failed (too large relative error : 1 , accepted 6.0e-6 )
make[3]: *** [check-local] Error 1
make[3]: Leaving directory `.../abinit-6.12.3-intel-mkl-try2/tests'
make[2]: *** [check-am] Error 2
make[2]: Leaving directory `.../abinit-6.12.3-intel-mkl-try2/tests'
make[1]: *** [check-recursive] Error 1
make[1]: Leaving directory `.../abinit-6.12.3-intel-mkl-try2/tests'
make: *** [check-recursive] Error 1


I have also tried with

intel/12.1, fftw/3.3.1, acml/5.1.0, openmpi/1.5.5 (even with -prec-div -prec-sqrt -O2)

Code: Select all

[libxc][t999] File t*_xsf* erased
make[5]: Leaving directory `.../abinit-6.12.3-intel/tests'
make[4]: Leaving directory `.../abinit-6.12.3-intel/tests'
etsf_io/tmp-test_Linux_20120511/report:Case_06            failed
etsf_io/tmp-test_Linux_20120511/report:Case_07            failed
etsf_io/tmp-test_Linux_20120511/report:Case_08            failed
libxc/tmp-test_Linux_20120511/report:Case_13            failed (too large absolute error : 2981 , accepted 0.0 )
libxc/tmp-test_Linux_20120511/report:Case_19            failed
tutorespfn/tmp-test_Linux_20120511/report:Case_nlo_5            failed (too large absolute error : 0.008489203 , accepted 0.000e+00 )
tutorial/tmp-test_Linux_20120511/report:Case_gw1_2            failed (too many erroneous lines : 5 , accepted 4 )
tutorial/tmp-test_Linux_20120511/report:Case_gw1_4            failed (too many erroneous lines : 24 , accepted 20 )
tutorial/tmp-test_Linux_20120511/report:Case_gw1_5            failed (too many erroneous lines : 13 , accepted 10 )
tutorial/tmp-test_Linux_20120511/report:Case_gw1_6            failed (too many erroneous lines : 44 , accepted 36 )
tutorial/tmp-test_Linux_20120511/report:Case_gw1_7            failed (too many erroneous lines : 31 , accepted 25 )
tutorial/tmp-test_Linux_20120511/report:Case_gw1_8            failed (too many erroneous lines : 36 , accepted 27 )
tutorial/tmp-test_Linux_20120511/report:Case_gw1_9            failed (too many erroneous lines : 2 , accepted 1 )
v2/tmp-test_Linux_20120511/report:Case_13            failed
v2/tmp-test_Linux_20120511/report:Case_18            failed
v2/tmp-test_Linux_20120511/report:Case_21            failed (too large absolute error : 0.0035993510383 , accepted 2.510e-10 )
v2/tmp-test_Linux_20120511/report:Case_44            failed (too many erroneous lines : 9 , accepted 6 )
v2/tmp-test_Linux_20120511/report:Case_88            failed
v4/tmp-test_Linux_20120511/report:Case_54            failed (too large absolute error : 0.00999999999999091 , accepted 0.000e+00 )
v4/tmp-test_Linux_20120511/report:Case_68            failed (too large absolute error : 0.00423949999999995 , accepted 5.637e-05 )
v4/tmp-test_Linux_20120511/report:Case_71            failed
v5/tmp-test_Linux_20120511/report:Case_16            failed
v5/tmp-test_Linux_20120511/report:Case_45            failed
v5/tmp-test_Linux_20120511/report:Case_72            failed (too large absolute error : 9.99999999997669e-05 , accepted 1.001e-06 )
v6/tmp-test_Linux_20120511/report:Case_37            failed (too large absolute error : 0.6677935615 , accepted 2.0e-5 )
v6/tmp-test_Linux_20120511/report:Case_40            failed (too large absolute error : 2.09999999993826e-05 , accepted 2.0e-7 )
v6/tmp-test_Linux_20120511/report:Case_89            failed (too large relative error : 1 , accepted 6.0e-6 )
make[3]: *** [check-local] Error 1
make[3]: Leaving directory `.../abinit-6.12.3-intel/tests'
make[2]: *** [check-am] Error 2
make[2]: Leaving directory `.../abinit-6.12.3-intel/tests'
make[1]: *** [check-recursive] Error 1
make[1]: Leaving directory `.../abinit-6.12.3-intel/tests'
make: *** [check-recursive] Error 1


and
gcc/4.6.2 fftw/3.3.1, acml/5.1.0, openmpi/1.5.5 (even with -prec-div -prec-sqrt -O0)

resulting in an unclean make check

Code: Select all

make[5]: Leaving directory `.../abinit-6.12.3-gcc/tests'
make[4]: Leaving directory `.../abinit-6.12.3-gcc/tests'
libxc/tmp-test_Linux_20120511/report:Case_13            failed (too large absolute error : 2981 , accepted 0.0 )
libxc/tmp-test_Linux_20120511/report:Case_19            failed
tutorespfn/tmp-test_Linux_20120511/report:Case_elast_6            failed
tutorespfn/tmp-test_Linux_20120511/report:Case_rf2_1            failed
tutorespfn/tmp-test_Linux_20120511/report:Case_rf2_3            failed
tutorespfn/tmp-test_Linux_20120511/report:Case_rf2_4            failed
tutorespfn/tmp-test_Linux_20120511/report:Case_rf2_5            failed
tutorespfn/tmp-test_Linux_20120511/report:Case_rf2_7            failed
tutorial/tmp-test_Linux_20120511/report:Case_gw1_3            failed (too many erroneous lines : 14 , accepted 11 )
tutorial/tmp-test_Linux_20120511/report:Case_gw1_5            failed (too large relative error : 0.0038022813688213 , accepted 2.237e-03 )
tutorial/tmp-test_Linux_20120511/report:Case_gw1_8            failed (too many erroneous lines : 33 , accepted 27 )
tutorial/tmp-test_Linux_20120511/report:Case_gw1_9            failed (too many erroneous lines : 2 , accepted 1 )
tutorial/tmp-test_Linux_20120511/report:Case_spin_3            failed
v2/tmp-test_Linux_20120511/report:Case_30            failed (too many erroneous lines : 9 , accepted 8 )
v2/tmp-test_Linux_20120511/report:Case_44            failed (too many erroneous lines : 8 , accepted 6 )
v2/tmp-test_Linux_20120511/report:Case_84            failed (too many erroneous lines : 2 , accepted 1 )
v2/tmp-test_Linux_20120511/report:Case_88            failed
v5/tmp-test_Linux_20120511/report:Case_16            failed
v5/tmp-test_Linux_20120511/report:Case_72            failed (too large absolute error : 9.99999999997669e-05 , accepted 1.001e-06 )
v6/tmp-test_Linux_20120511/report:Case_48            failed
v6/tmp-test_Linux_20120511/report:Case_82            failed
v6/tmp-test_Linux_20120511/report:Case_89            failed (too many erroneous lines : 18 , accepted 17 )
make[3]: *** [check-local] Error 1
make[3]: Leaving directory `.../abinit-6.12.3-gcc/tests'
make[2]: *** [check-am] Error 2
make[2]: Leaving directory `.../abinit-6.12.3-gcc/tests'
make[1]: *** [check-recursive] Error 1
make[1]: Leaving directory `.../abinit-6.12.3-gcc/tests'
make: *** [check-recursive] Error 1


make tests_in runs cleanly in all cases.

Thanks, Thomas

User avatar
pouillon
Posts: 651
Joined: Wed Aug 19, 2009 10:08 am
Location: Spain
Contact:

Re: abinit-6.12.3 - getting a clean make check

Post by pouillon » Tue May 22, 2012 5:23 pm

Some tests are not completely portable. And for performance reasons, most input parameters are not converged. This is thus not surprising to obtain wrong outputs.

From what I see, most of the failures you experience seem to be linked to the peculiarities of your configuration and should be harmless. However, to be sure, you should have a look at the diff.* files associated to the failing tests.
Yann Pouillon
Simune Atomistics
Donostia-San Sebastián, Spain

User avatar
jbeuken
Posts: 365
Joined: Tue Aug 18, 2009 9:24 pm
Contact:

Re: abinit-6.12.3 - getting a clean make check

Post by jbeuken » Tue May 22, 2012 7:48 pm

Dear Thomas,

first of all, use intel compilers 11.1.073 or >= 12.1.4
when I use intel compilers, I use fftw3 implemented under mkl like :

Code: Select all

with_fft_flavor="fftw3"
with_fft_libs="-L/opt/intel/Compiler/11.1/current/mkl/lib/em64t -Wl,--start-group -lmkl_intel_lp64 -lmkl_sequential -lmkl_core -Wl,--end-group -lpthread"


you can find some configurations in "config/spec/build-examples.conf"
and some informations concerning the nightly slaves/bots in
- http://www.abinit.org/developers/dev-en ... ave-matrix
- http://www.abinit.org/developers/dev-en ... der-matrix

two "good" nightly configurations tested with AMD cpu are :

- gcc462 + mpich2-1.4.1p1 + acml 4.4.0
- open64 v4.2.5.2 + openmpi 1.4.3 + acml 4.4.0

regards

jmb
------
Jean-Michel Beuken
Computer Scientist

Locked