I think we can just look at OPEN_MPI as you say and then

OMPI_MAJOR_VERSION, OMPI_MINOR_VERSION & OMPI_RELEASE_VERSION

from mpi.h and if version is less than 1.2.9 implement a work around as Antony suggested. Its not the most elegant solution but it will work I think?

Nick.

Jeff Squyres wrote:
On Dec 5, 2008, at 10:55 AM, David Skinner wrote:

FWIW, if that one-liner fix works (George and I just chatted about this
on the phone), we can probably also push it into v1.2.9.

great! thanks.


It occurs to me that this is likely not going to be enough for you, though. :-\

Like it or not, there's still installed OMPI's out there that will show this old behavior. Do you need to know / adapt for those? If so, I can see two ways of you figuring it out:

1. At run time, do a simple call to (Fortran) MPI_INITIALIZED and see if you intercept it twice (both in Fortran and in C).

2. If that's not attractive, we can probably add a line into the ompi_info output that you can grep for when using OMPI (you can look for the OPEN_MPI macro from our <mpi.h> to know if it's Open MPI or not). Specifically, this line can be there for the "fixed" versions, and it simply won't be there for non-fixed versions.

Reply via email to