FWIW: Terry told me in IM that he hates this RFC as well (more details
On Nov 6, 2008, at 2:58 PM, Ralf Wildenhues wrote:
>>> Hmm, OpenMPI seems not to use versioning for its shared libraries.
>> That was on the to-do list for this release, but it just didn't
> Oh well. When you start doing it, please coordinate with
> it's not likely, but some of them may have actually packaged OpenMPI
> with versioning, including (one then hopes!) adjusting versions as
> needed between releases. You might want to start out with numbers
> upward of that then.
Will do; thanks for the tip.
>> MPI API is compatible across releases; it hasn't changed. We have
>> [yet] claimed ABI compatible across releases -- we may still do this
> FWIW, this task looks quite a bit easier to me than, say, defining an
> ABI valid for several MPI implementations.
Yes; our biggest issue is the fact that gcc complains when the size of
structs change, even though those structs are never exposed to MPI
1. MPI_Comm is defined as "typedef struct ompi_communicator_t *MPI_Comm"
2. If we change the size of the ompi_communicator_t struct between two
different versions of libmpi, gcc warns when user MPI applications are
linked against a new libmpi
Everything seems to work since MPI_Comm is only ever used as an opaque
handle by the MPI application. But we haven't looked deeply [yet] to
see if there are more hidden dragons than this, and if not, if there
is a way to suppress the warning.