Oh no, you fell into the MPI ABI pit! The great and powerful sarlaac will now digest you for a thousand millennium...

(although after a few trips to the MPI ABI pit, no one seems quite as eager to enter into that discussion recently.)

There is an MPICH ABI, so one might, with some very recent versions, take a binary for Intel-MPI, IBM-MPI, and MPICH and use different libraries.

There's almost no hope of being able to take MPICH and swap it out for OpenMPI. MorphMPI might get you a bit of the way, but there are some restrictions on what you can and cannot do with that.

==rob

On 09/11/2014 01:28 PM, JR Cary wrote:

We need to build an application on our machine with one mpi (e.g. openmpi),
but for performance reasons, upon installation, we would like to runtime
link to a different, specialized mpi, such as an SGI implementation provided
for their systems.

Can one expect this to work?

I tried this with openmpi and mpich, building the code against shared
openmpi
and then changing the LD_LIBRARY_PATH to point to the shared mpich.  This
failed due to the sonames being different.

$ ldd foo  | grep mpi
     libmpi_usempi.so.1 => not found
     libmpi_mpifh.so.2 => not found
     libmpi.so.1 => not found
     libmpi_cxx.so.1 => not found

but in the mpich distribution one has different sonames

libmpi.so.12

so the runtime loader will not load the mpich libraries instead.

and the fortran libraries (which may not matter to us) have different
names,

$ \ls /contrib/mpich-shared/lib/*.so.12
/contrib/mpich-shared/lib/libmpicxx.so.12
/contrib/mpich-shared/lib/libmpifort.so.12
/contrib/mpich-shared/lib/libmpi.so.12

Is there a general approach to this?

Or in practice, must one build on a machine to use that machine's MPI?

Thx.....John Cary




_______________________________________________
users mailing list
us...@open-mpi.org
Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/users
Link to this post: 
http://www.open-mpi.org/community/lists/users/2014/09/25311.php


--
Rob Latham
Mathematics and Computer Science Division
Argonne National Lab, IL USA

Reply via email to