Page 1 of 1

Can not link intel-dfti to abinit-7.10.5

Posted: Fri Apr 15, 2016 9:14 am
by kinsang
Hi, everyone.
When I tried to link intel-dfti to abinit-7.10.5, compiling error occurs as follows:
Have anyone successfully link dfti to abinit?

mpiifort -DHAVE_CONFIG_H -I. -I../.. -I../../src/32_util -I../../src/32_util -I../../src/28_numeric_noabirule -I../../src/28_numeric_noabirule -I../../src/44_abitypes_defs -I../../src/44_abitypes_defs -I../../src/41_geometry -I../../src/41_geometry -I../../src/51_manage_mpi -I../../src/51_manage_mpi -I../../src/18_timing -I../../src/18_timing -I../../src/12_hide_mpi -I../../src/12_hide_mpi -I../../src/10_defs -I../../src/10_defs -I../../src/11_memory_mpi -I../../src/11_memory_mpi -I../../src/16_hideleave -I../../src/16_hideleave -I../../src/14_hidewrite -I../../src/14_hidewrite -I../../src/incs -I../../src/incs -I/opt/intel/ICC2016/compilers_and_libraries_2016.1.150/linux/mkl/include -I/home/kinsang/new_home/kinsang/Ab_impi-cdft/abinit-7.10.5/fallbacks/exports/include -free -module /home/kinsang/new_home/kinsang/Ab_impi-cdft/abinit-7.10.5/src/mods -xHost -w -O2 -mkl -extend-source -noaltparam -nofpscomp -openmp -c -o m_sg2002.o m_sg2002.F90
./dfti_fftrisc.finc(926): error #6404: This name does not have a type, and must have an explicit type. [WEIGHT]
denpot(2*ix-1,iy,iz) = denpot(2*ix-1,iy,iz) + weight* REAL(slice_b(sidx))**2
---------------------------------------------------------------------^

compilation aborted for m_dfti.F90 (code 1)
make[4]: *** [m_dfti.o] Error 1
make[4]: *** Waiting for unfinished jobs....

Re: Can not link intel-dfti to abinit-7.10.5

Posted: Fri Apr 15, 2016 10:33 am
by gmatteo
Replace src/52_fft_mpi_noabirule/dfti_fftrisc.finc with the file attached.

btw: The DFTI library provided by MKL should be activated only if you are compiling Abint with OpenMP threads (and indeed you are doing).
Remember to pass --enable-openmp to the configure script because there are sections of code inside Abinit that should be activated
when OpenMP is used.

fft_flavor=fftw3 supports both the true FFTW3 library as well as the FFT library provided by Intel and can be used
when OpenMP is not activated.