I'm having an issue compiling abinit 6.8.1 in parallel, I was able to compile it with no issues in serial.
I've cleaned the directory, and running configure like so:
Code: Select all
./configure --enable-mpi --with-mpi-prefix=/usr
I'm getting positive results regarding MPI from the configure log:
checking whether the C compiler supports MPI... yes
checking whether the C++ compiler supports MPI... yes
checking whether the Fortran Compiler supports MPI... yes
checking whether MPI is usable... yes
configure: enabling MPI I/O support
checking whether to build MPI code... yes
checking whether to build MPI I/O code... yes
when I run
Code: Select all
make mj4
Code: Select all
make
It eventually fails with this error:
Making all in 12_hide_mpi
make[3]: Entering directory `/home/XXX/Download/abinit-6.8.1/src/12_hide_mpi'
/usr/bin/mpif90 -DHAVE_CONFIG_H -I. -I../.. -I../../src/incs -I../../src/incs -ffree-form -J/home/XXX/Download/abinit-6.8.1/src/mods -O2 -mtune=native -march=native -mfpmath=sse -g -ffree-line-length-none -c -o m_xmpi.o m_xmpi.F90
m_xmpi.F90:2193.28:
call MPI_Type_hvector(ny,1,stride_x,column_type,plane_type,mpi_err)
1
Error: Type mismatch in argument 'v2' at (1); passed INTEGER(4) to INTEGER(8)
m_xmpi.F90:2195.28:
call MPI_Type_hvector(nz,1,ldy*stride_x,plane_type,vol_type,mpi_err)
1
Error: Type mismatch in argument 'v2' at (1); passed INTEGER(4) to INTEGER(8)
m_xmpi.F90:2197.28:
call MPI_Type_hvector(na,1,ldz*ldy*stride_x,vol_type,new_type,mpi_err)
1
Error: Type mismatch in argument 'v2' at (1); passed INTEGER(4) to INTEGER(8)
m_xmpi.F90:2113.28:
call MPI_Type_hvector(ny,1,stride_x,column_type,plane_type,mpi_err)
1
Error: Type mismatch in argument 'v2' at (1); passed INTEGER(4) to INTEGER(8)
m_xmpi.F90:2115.28:
call MPI_Type_hvector(nz,1,ldy*stride_x,plane_type,new_type,mpi_err)
1
Error: Type mismatch in argument 'v2' at (1); passed INTEGER(4) to INTEGER(8)
m_xmpi.F90:2036.28:
call MPI_Type_hvector(ny,1,stride_x,column_type,new_type,mpi_err)
1
Error: Type mismatch in argument 'v2' at (1); passed INTEGER(4) to INTEGER(8)
make[3]: *** [m_xmpi.o] Error 1
make[3]: Leaving directory `/home/XXX/Download/abinit-6.8.1/src/12_hide_mpi'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/XXX/Download/abinit-6.8.1/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/XXX/Download/abinit-6.8.1'
make: *** [all] Error 2
I'm not too sure what the problem is, I was wondering maybe if it was a 32-bit vs 64-bit problem (just because of the integer size mismatch).
Has anyone seen this or can offer some advice?
The machine is an Intel Xeon 64-bit install of Fedora 10 (yes, I know it's out of date but I'm hoping that's not the issue) with 16 GB of RAM.
Code: Select all
uname -a = Linux XXX 2.6.27.41-170.2.117.fc10.x86_64 #1 SMP Thu Dec 10 10:36:29 EST 2009 x86_64 x86_64 x86_64 GNU/Linux
EDIT: I forgot to mention, that I also tried it with --enable-64bit-flags in the configure settings, no dice.
Thanks for taking the time to read,
John