On Oct 29, 2010, at 12:40 PM, Reuti wrote:

>> I'd have to go check 1.4.3 and 1.4.1 to be sure, but I would generally *NOT* 
>> assume that different versions like this are compatible.
> 
> I'm getting confused, as these versions are exactly fitting "x.(y+1).*" which 
> you mention below. So they should work together by design.

It depends on what you mean by "work together".

1. OMPI provides an ABI guarantee for x.y.* and x.(y+1).*, where y is odd.  So 
if you compile your MPI app with Open MPI v1.4.1, it'll work just fine with 
1.4.3.  (the only disclaimer is that this guarantee started with v1.3.2).  Note 
that y must be odd -- so if you compile your MPI app with v1.4.1, it does *not* 
necessarily work with v1.5.  Indeed, we broken ABI between the v1.3/v1.4 series 
and the v1.5 series (our ABI guarantee allows us to do this).

2. OMPI does *not* provide multi-version *interoperability* guarantees.  Say 
you compile your MPI app against OMPI v1.4.1.  Then you run it across a bunch 
of nodes, but some nodes have OMPI v1.4.1 on them and others have OMPI v1.4.3 
(i.e., your app gets libmpi.so from v1.4.1 on some nodes and libmpi.so from 
v1.4.3 on other nodes).  This is absolutely not guaranteed to work -- we don't 
even try to maintain this kind of compatibility.

Does that make sense?

-- 
Jeff Squyres
jsquy...@cisco.com
For corporate legal information go to:
http://www.cisco.com/web/about/doing_business/legal/cri/


Reply via email to