On Feb 24, 2009, at 4:43 AM, Olaf Lenz wrote:
We've talked about similar errors before; I thought that the issue
was caused by the Python front-end calling dlopen() to manually
open the libmpi.so library. Is that the cause in your scenario?
Not really. We have written a shared library _espresso.so, which is
a Python module that is loaded by Python, which in turn dynamically
loads libmpi.so - but only on the C++ level. Python itself never
sees libmpi.so.
If so, note that it needs to load libmpi.so with RTLD_GLOBAL. For
example:
That is not really under my control, as the library is opened by
Python.
As your later post mentioned, there's another topic going on about
exactly this issue right now. I sent a lengthy reply which I think
explains the issues:
http://www.open-mpi.org/community/lists/users/2009/02/8186.php
the problem disappears. Note also, that the same program works
when I'm
using OpenMPI 1.2.x (tested 1.2.6 and 1.2.9).
I still wonder, why everything worked fine in 1.2.x, while in
OpenMPI 1.3 it doesn't. Has anything changed between these versions
that could influence the behaviour?
Yes; we upgraded our version of Libtool (and libltdl) to the 2.x
series (specifically: Open MPI 1.2.x uses Libtool 1.5.something
whereas Open MPI v1.3.x uses Libtool 2.something). This is an
instance of a change in policy in one of these core tools has ripple
effects on lots and lots of other software...
--
Jeff Squyres
Cisco Systems