Re: [AMBER] Problem with "make install" after "./configure -mpi -cuda gnu"

From: Jason Swails <jason.swails.gmail.com>
Date: Mon, 8 Oct 2012 12:37:18 +0200

On Sun, Oct 7, 2012 at 11:35 PM, Su, Shiquan <ssu2.utk.edu> wrote:

> Dear Amber Team:
> Thanks Jason Swails, Tru Huynh, and David A Case. All your suggestions and
> guidances help me through the installation.
> Now I can install Amber 12 using intel compiler.
> I still have the problem using gnu compiler, I attached the module list
> result at the end:
>
> gpu.cpp:(.text._ZN3MPI9Intercomm5MergeEb[MPI::Intercomm::Merge(bool)]+0x26):
> undefined reference to `MPI::Comm::Comm()'
> ./cuda/cuda.a(gpu.o): In function `MPI::Intracomm::Clone() const':
> gpu.cpp:(.text._ZNK3MPI9Intracomm5CloneEv[MPI::Intracomm::Clone()
> const]+0x27): undefined reference to `MPI::Comm::Comm()'
> ./cuda/cuda.a(gpu.o):gpu.cpp:(.text._ZNK3MPI9Intracomm5SplitEii[MPI::Intracomm::Split(int,
> int) const]+0x24): more undefined references to `MPI::Comm::Comm()' follow
> ./cuda/cuda.a(gpu.o):(.rodata._ZTVN3MPI3WinE[vtable for MPI::Win]+0x48):
> undefined reference to `MPI::Win::Free()'
> ./cuda/cuda.a(gpu.o):(.rodata._ZTVN3MPI8DatatypeE[vtable for
> MPI::Datatype]+0x78): undefined reference to `MPI::Datatype::Free()'
> collect2: ld returned 1 exit status
> make[3]: *** [pmemd.cuda.MPI] Error 1
> make[3]: Leaving directory
> `/nics/e/sw/keeneland/amber/12/centos5.5_gnu4.4.0_10072012/amber12/src/pmemd/src'
> make[2]: *** [cuda_parallel] Error 2
> make[2]: Leaving directory
> `/nics/e/sw/keeneland/amber/12/centos5.5_gnu4.4.0_10072012/amber12/src/pmemd'
> make[1]: *** [cuda_parallel] Error 2
> make[1]: Leaving directory
> `/nics/e/sw/keeneland/amber/12/centos5.5_gnu4.4.0_10072012/amber12/src'
> make: *** [install] Error 2
>
> [shiquan1.kidlogin2 amber12]$ module list
> Currently Loaded Modulefiles:
> 1) modules 5) PE-gnu 9) swtools
> 2) torque/2.5.11 6) openmpi/1.5.1-gnu 10) numpy/1.4.1
> 3) moab/6.1.5 7) cuda/4.2 11) netcdf/4.1.1
> 4) gold 8) python/2.7 12) gcc/4.4.0
>

As Dave said, the problem here is probably the openmpi/GNU compiler combo.
 I have had problems with this combo as well, and it tends to occur because
OpenMPI does not reliably implement all of the MPI-2 features that
pmemd.cuda.MPI requires.

As a result, I think you will have to swap OpenMPI with MPICH2 in order to
get it to work for GNU. (Why it works with intel and not gnu, I don't
know, but I think this will be solved by loading mpich2).

Of course, if you can settle with just the programs compiled with the Intel
compilers, then you're done ;). However, the GNU/OpenMPI combo is unlikely
to work without changing the code to avoid features not well-implemented
within OpenMPI

HTH,
Jason

-- 
Jason M. Swails
Quantum Theory Project,
University of Florida
Ph.D. Candidate
352-392-4032
_______________________________________________
AMBER mailing list
AMBER.ambermd.org
http://lists.ambermd.org/mailman/listinfo/amber
Received on Mon Oct 08 2012 - 04:00:03 PDT
Custom Search