It's hard for me to believe that would work as there are fundamental differences in the MPI-to-RTE interactions between those releases. If it does, it could be a fluke - I personally would not trust it.
> That being said, we have fixed this issue and expect to support binary
> compatibility between Open MPI releases starting with v1.3.2 (v1.3.1
As far as I can tell from reading the release notes for v1.3.2, the binary compatibility has not been announced yet. It was rather a bug fix release. Is it correct? Does it mean that the compatibility feature is pushed to later releases, v1.3.3, 1.3.4?
In my original message (see below) I was looking for advice as for a seamless transition from v1.2.x to v1.3.x in a shared multi-user environment.
Interestingly enough, recently I noticed that although it's impossible to run an application compiled with v1.2.x under v1.3.x, the opposite does actually work. An application compiled with v1.3.x runs using Open MPI v1.2.x. Specifically, I tested an application compiled with v1.3.0 and v1.3.2, running under Open MPI v1.2.7.
This gives me a perfect opportunity to recompile all the parallel applications with v1.3.x, transparently to users; and then switch the default Open MPI library from v1.2.7 to v1.3.x, when all the apps have been rebuilt.
The problem is that I am not 100% sure in this approach, even having some successful tests done.
Is it safe to run an application built with 1.3.x under 1.2.x? Does it make sense to you?
Jeff Squyres wrote:
Unfortunately, binary compatibility between Open MPI release versions has never been guaranteed (even between subreleases)._______________________________________________
That being said, we have fixed this issue and expect to support binary compatibility between Open MPI releases starting with v1.3.2 (v1.3.1 should be released soon; we're aiming for v1.3.2 towards the beginning of next month).
On Mar 10, 2009, at 11:59 AM, Serge wrote:
We have a number of applications built with Open MPI 1.2 in a shared
multi-user environment. The Open MPI library upgrade has been always
transparent and painless within the v1.2 branch. Now we would like to
switch to Open MPI 1.3 as seamlessly. However, an application built with
ompi v1.2 will not run with the 1.3 library; the typical error messages
are given below. Apparently, the type ompi_communicator_t has changed.
Symbol `ompi_mpi_comm_null' has different size in shared object,
Symbol `ompi_mpi_comm_world' has different size in shared object,
Do I have to rebuild all the applications with Open MPI 1.3?
Is there a better way to do a smooth upgrade?
users mailing list