[Beowulf] MPI ABI (Was Re: Re: Home beowulf - NIC latencies )

William Gropp gropp at mcs.anl.gov
Fri Feb 18 10:29:10 PST 2005

At 08:38 AM 2/18/2005, James Cownie wrote:
>If an ABI for MPI is so important to you and of such value to your (and
>Patrick's) clients, then there's nothing to stop you from formulating
>such a standard, or, at least starting a project to create one.

I wrote a paper that appeared in the EuroPVMMPI'02 meeting that discusses 
the issues of a common ABI.  The paper is "Building Library Components That 
Can Use Any MPI Implementation" and is available as 
http://www-unix.mcs.anl.gov/~gropp/bib/papers/2002/gmpishort.pdf .  This 
paper was relatively pragmatic and discussed an approach that allowed the 
user to link the same object files against two MPI libraries (MPICH and 
LAM/MPI were used in the example).  There are a few remaining tricky issues 
for handling the MPI opaque objects (specifically, how big are they) and 
the size and layout of MPI_Status (different implementations use different 
sizes, and the user is allowed to use an array of MPI_Status).  There are 
also some very minor tradeoffs in performance in the solution presented in 
the paper, but these probably aren't important in the context of clusters, 
and are likely to be smaller than requiring implementations to translate 
between internal and external representations.

The web site mentioned in the paper is out-of-date, mostly because there 
wasn't much interest in a (nearly) common ABI at the time.  I can make it 
available if there is interest now.


William Gropp

More information about the Beowulf mailing list