Invalid communicator!

Dear LAMMPS Developers and Users,

I was recently blocked by the ‘Invalid communicator’ error for the new version, either 12Apr12 or 17Feb12. But the old version, 27Oct11 works very well. I used the same mpich2 program to compile all lammps packages. I was wondering why this error happened to the recent versions. My linux is Scientific Linux 6.2 (RHEL 6.2).

I googled this error and the possible reason might be “using the wrong ‘mpi.h’ file”. But I am very sure I use the correct path to link the mpi.h I installed it at /usr/local/mpich2/1.4.1p1/include. I would use the new gpu and cuda package so I need work with the recent version. Please help!

Here is the error details:
Fatal error in PMPI_Comm_rank: Invalid communicator, error stack:
PMPI_Comm_rank(109): MPI_Comm_rank(comm=0x0, rank=0x7ffff9e2cc6c) failed
PMPI_Comm_rank(66).: Invalid communicator

Here are the ‘mpi.h’ files found in my workstation:
/usr/src/kernels/2.6.32-220.7.1.el6.x86_64/include/linux/crypto/mpi.h
/usr/src/kernels/2.6.32-220.7.1.el6.x86_64/include/config/usb/serial/siemens/mpi.h
/usr/src/kernels/2.6.32-220.el6.x86_64/include/linux/crypto/mpi.h
/usr/src/kernels/2.6.32-220.el6.x86_64/include/config/usb/serial/siemens/mpi.h
/usr/local/mpich2/1.4.1p1/include/mpi.h
/opt/md/lammps-12Apr12/src/STUBS/mpi.h
/opt/md/lammps-27Oct11/src/STUBS/mpi.h

Best regards,

Charlie

Dear LAMMPS Developers and Users,

I was recently blocked by the 'Invalid communicator' error for the new
version, either 12Apr12 or 17Feb12. But the old version, 27Oct11 works very
well. I used the same mpich2 program to compile all lammps packages. I was
wondering why this error happened to the recent versions. My linux is
Scientific Linux 6.2 (RHEL 6.2).

I googled this error and the possible reason might be "using the wrong
'mpi.h' file". But I am very sure I use the correct path to link the mpi.h I
installed it at /usr/local/mpich2/1.4.1p1/include. I would use the new gpu
and cuda package so I need work with the recent version. Please help!

there is very little that can be done. it *has* to be a mistake
that you made. my guess is that this happened when compiling
the GPU library, which requires a separate makefile from the
rest of lammps and here you may have pulled in the STUBS
mpi.h file, which is incompatible with MPICH (and just happens
to have the world communicator to be defined to a value of 0).

without a proper stack trace, this is difficult to tell
(it may be some other package), but the only person
that can sort this out is you.

axel.