Re: [AMBER] MPI cuda compilation error

From: case <>
Date: Sat, 2 Jul 2011 16:31:35 -0400

On Sat, Jul 02, 2011, Fabrício Bracht wrote:

> Hi. Thank you for all the advice. The error given by make
> cuda_parallel was exactly the one I have written in my first email.
> There are no more lines after that,

We needed the lines *before* the ones that were posted...that is, the actual
command that failed. (I understand that for many people, reading error
messages from "make" is very hard.)

> I have taken your advice and set MPI_HOME=/usr/lib/openmpi

My understanding (from the Amber GPU web page) was that openmpi would not
work for parallel cuda compiles, and that one needed an MPI implementation
that implements MPI2 commands. However, Ross didn't complain about your
use of openmpi, so maybe that is now OK.

Even in openmpi is OK, we don't know that the compiler used to
install whatever is in /usr/lib/openmpi is the same as you are using to
compile Amber -- be sure that this is the case

> ./cuda/cuda.a(gpu.o): In function `MPI::Cartcomm::Clone() const':
> gpu.cpp:(.text._ZNK3MPI8Cartcomm5CloneEv[MPI::Cartcomm::Clone()
> const]+0x24): undefined reference to `MPI::Comm::Comm()'

All the errors are referring to MPI::Comm::Comm(); I'm just guessing, but
this could arise because openmpi doesn't implement needed functions from MPI2,
or you have a compiler mismatch.

As stated earlier, the configure_mpich2 script is designed to handle such
problems. But with infiniband, you might need MVAPICH2 for best performance.
If so, I can't provide much help.


AMBER mailing list
Received on Sat Jul 02 2011 - 14:00:03 PDT
Custom Search