[MPI3 Fortran] [Mpi3-tools] MPI function symbol naming convention for tools

Fab Tillier ftillier at microsoft.com
Sat Jun 25 01:55:38 CDT 2011

Jeff Squyres wrote on Fri, 24 Jun 2011 at 09:46:10

> On Jun 24, 2011, at 12:20 PM, Hubert Ritzdorf wrote:
>> There are (compiled) libraries and object files containing the corresponding
>> external references to MPI_SEND, mpi_send__, mpi_send_ or mpi_send.
>> Therefore, you cannot simply change the interface of the MPI_Send routine
>> without breaking these libraries. You can also not simply expect that they will
>> be recompiled.
> I think it is reasonable to ask applications / libraries / etc. to recompile with
> MPI-3.  This has been the position of the Forum.

There's a difference between recompiling to take advantage of MPI-3 features, and recompiling because MPI-3 has broken backward compatibility.

I don't think it's reasonable to ask applications that don't take advantage of MPI-3 features to recompile - applications that may have to go through a certification process for no end-user benefit.  I don't think we want MPI-3 to require implementations to break backward compatibility for Fortran codes like this.

Merging from your other mail to make it clear:

> if (Craig's proposal is accepted) {
>   if (implementation has implemented Craig's proposal) {
>       // call this "Case A"
>       if (app uses mpif.h or "use mpi" interface) {
>          tool will find mpi_send_f

Right here, you just broke backward compatibility.

>          // ...and others listed in Craig's proposal
>       }

Now, if your "Case A" is for recompiled apps, while still providing the old upper case, lower case, one and two underscore symbols, then there's no problem.  From what I gather, this is not what you're proposing though, but it's quite likely I've missed something...


More information about the mpiwg-fortran mailing list