Page 1 of 1

[SOLVED] MPI problem when running 'make'

Posted: Wed Apr 07, 2010 12:37 am
by asorini
Hi forum,

I'm trying to compile the parallel version of abinit-6.0.3 with OpenMPI on my group's computing cluster. I have previously been able to compile 5.8 and 5.7 versions of abinit, but 6.0 fails to compile when I run make.

For this failed attempt at compiling I first configured using:

$ ./configure CC=mpicc CXX=mpicxx FC=mpif90 --enable-mpi=yes --disable-all-plugins --enable-mpi-io

and configure runs without any problems (I've attached config.log).

Then I use:

$ make

which runs for a while and then fails in ./src/12_hide_mpi when it chokes on some MPI_RECV and MPI_SEND for 5d arrays in xexch_mpi.F90 (lines 507 and 510). Below I've pasted some of the output from make:

Making all in 12_hide_mpi
make[3]: Entering directory `/afs/slac.stanford.edu/package/ABINIT/abinit-6.0.3/src/12_hide_mpi'
mpif90 -DHAVE_CONFIG_H -I. -I../.. -I../../src/incs -I../../src/incs -free -module /afs/slac.stanford.edu/package/ABINIT/abinit-6.0.3/src/mods -O2 -g -extend-source -vec-report0 -c -o xallgather_mpi.o xallgather_mpi.F90
mpif90 -DHAVE_CONFIG_H -I. -I../.. -I../../src/incs -I../../src/incs -free -module /afs/slac.stanford.edu/package/ABINIT/abinit-6.0.3/src/mods -O2 -g -extend-source -vec-report0 -c -o xallgatherv_mpi.o xallgatherv_mpi.F90
mpif90 -DHAVE_CONFIG_H -I. -I../.. -I../../src/incs -I../../src/incs -free -module /afs/slac.stanford.edu/package/ABINIT/abinit-6.0.3/src/mods -O2 -g -extend-source -vec-report0 -c -o xalltoallv_mpi.o xalltoallv_mpi.F90
mpif90 -DHAVE_CONFIG_H -I. -I../.. -I../../src/incs -I../../src/incs -free -module /afs/slac.stanford.edu/package/ABINIT/abinit-6.0.3/src/mods -O2 -g -extend-source -vec-report0 -c -o xalltoall_mpi.o xalltoall_mpi.F90
mpif90 -DHAVE_CONFIG_H -I. -I../.. -I../../src/incs -I../../src/incs -free -module /afs/slac.stanford.edu/package/ABINIT/abinit-6.0.3/src/mods -O2 -g -extend-source -vec-report0 -c -o xbarrier_mpi.o xbarrier_mpi.F90
mpif90 -DHAVE_CONFIG_H -I. -I../.. -I../../src/incs -I../../src/incs -free -module /afs/slac.stanford.edu/package/ABINIT/abinit-6.0.3/src/mods -O2 -g -extend-source -vec-report0 -c -o xcast_mpi.o xcast_mpi.F90
mpif90 -DHAVE_CONFIG_H -I. -I../.. -I../../src/incs -I../../src/incs -free -module /afs/slac.stanford.edu/package/ABINIT/abinit-6.0.3/src/mods -O2 -g -extend-source -vec-report0 -c -o xcomm_rank.o xcomm_rank.F90
mpif90 -DHAVE_CONFIG_H -I. -I../.. -I../../src/incs -I../../src/incs -free -module /afs/slac.stanford.edu/package/ABINIT/abinit-6.0.3/src/mods -O2 -g -extend-source -vec-report0 -c -o xcomm_size.o xcomm_size.F90
mpif90 -DHAVE_CONFIG_H -I. -I../.. -I../../src/incs -I../../src/incs -free -module /afs/slac.stanford.edu/package/ABINIT/abinit-6.0.3/src/mods -O2 -g -extend-source -vec-report0 -c -o xerror_string.o xerror_string.F90
mpif90 -DHAVE_CONFIG_H -I. -I../.. -I../../src/incs -I../../src/incs -free -module /afs/slac.stanford.edu/package/ABINIT/abinit-6.0.3/src/mods -O2 -g -extend-source -vec-report0 -c -o xexch_mpi.o xexch_mpi.F90
xexch_mpi.F90(507): error #6285: There is no matching specific subroutine for this generic subroutine call. [MPI_RECV]
call MPI_RECV(vrecv,n1*n2*n3*n4*n5,MPI_DOUBLE_PRECISION,sender,etiq,spaceComm,statux,ier)
-------^
xexch_mpi.F90(510): error #6285: There is no matching specific subroutine for this generic subroutine call. [MPI_SEND]
call MPI_SEND(vsend,n1*n2*n3*n4*n5,MPI_DOUBLE_PRECISION,recever,etiq,spaceComm,ier)
-------^
compilation aborted for xexch_mpi.F90 (code 1)
make[3]: *** [xexch_mpi.o] Error 1
make[3]: Leaving directory `/afs/slac.stanford.edu/package/ABINIT/abinit-6.0.3/src/12_hide_mpi'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/afs/slac.stanford.edu/package/ABINIT/abinit-6.0.3/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/afs/slac.stanford.edu/package/ABINIT/abinit-6.0.3'
make: *** [all] Error 2


I would greatly appreciate any help/ideas from the Abinit gurus of the forum. Thanks in advance. Cheers,

Adam

Re: MPI problem when running 'make'

Posted: Wed Apr 07, 2010 4:45 pm
by pouillon
Could you try the following?

Code: Select all

./configure --with-mpi-prefix="/afs/slac.stanford.edu/package/OpenMPI" --enable-mpi=yes --disable-all-plugins --enable-mpi-io

Re: MPI problem when running 'make'

Posted: Thu Apr 08, 2010 6:15 am
by nicheal
I'm in the same predicament with OPENMPI1.33, Intel fortran 11.1.046

Re: MPI problem when running 'make'

Posted: Thu Apr 08, 2010 9:40 am
by asorini
Hi,

Thanks for getting back to me so quickly. I tried running configure with the flags you suggested, but I get the exact same error when I run make. Any other suggestions? Cheers,
Adam

Re: MPI problem when running 'make'

Posted: Thu Apr 08, 2010 12:59 pm
by pouillon
Then the problem comes from the MPI implementation you're using. It might be related to the way it has been compiled.

You should ask your system administrator.

Re: MPI problem when running 'make'

Posted: Thu Apr 08, 2010 10:16 pm
by asorini
Thanks very much for your help. I'll talk to the system admin. Cheers,
Adam

Re: MPI problem when running 'make'

Posted: Fri Apr 09, 2010 10:29 am
by nicheal
I uninstall the OPENMPI1.3.2, and update to openmpi 1.3.3. Then No error with Openmpi 1.3.3! You can try the new version!

Re: [SOLVED] MPI problem when running 'make'

Posted: Mon Apr 12, 2010 6:57 pm
by asorini
Thanks very much for the advice. Cheers, Adam

Re: [SOLVED] MPI problem when running 'make'

Posted: Tue Apr 20, 2010 12:19 am
by mverstra