[MPI3 Fortran] Deprecate mpif.h?
    Jeff Squyres 
    jsquyres at cisco.com
       
    Mon Mar  8 10:42:57 CST 2010
    
    
  
On Mar 5, 2010, at 2:38 AM, Supalov, Alexander wrote:
> It appears to me that you don't want to do this in the name of the  
> Forum as a whole, so, let me ask our partners what they think about  
> deprecating the mpif.h/mpi module, and introducing a backward  
> incompatible mpi3 module that will make them recheck (possibly  
> rewrite)/rebuild/revalidate/recertify their mission critical  
> applications.
>
Alexander -- you're still missing the point entirely.  Yes, I object  
to you asking customers this question because you still apparently  
don't seem to understand it.
The addition of a new mpi3 module does NOT imply anything about the  
continued existence of mpif.h and the mpi module.  When you phrase the  
question like you did above, it implies:
- that the Forum will remove mpif.h and the *ONLY* mechanism available  
will be the new mpi3 module.
- the new mpi3 module is the cause of recertification of their  
application.
That's just wrong.  If I were a customer and had no context for your  
question other than what you said, *of course* I would think a  
backwards incompatible mpi3 module would be a bad idea.
As has been said repeatedly, deprecating != removing.  We, as a Forum,  
would be criminally stupid to remove mpif.h or use mpi any time in the  
near future.
> > 2. Saying that the mpi3 module is only for Fortran 2008 compilers  
> is incorrect.  IIRC, the Open MPI prototype implementation of "use  
> mpi3" has been usable with the Intel Fortran compiler since  
> v10.something, for example (it's up to v11.1.something these days).
>
> I'm afraid you miss my point. As soon as I just say "use mpi3" in an  
> application that used "include mpif.h" or "use mpi" before, I have  
> to recheck, possibly rewrite, rebuild, revalidate, and recertify my  
> application on all OS, platforms, compilers even if I don't change  
> anything else, including the compiler. This is a huge hit that seems  
> to be ignored on this thread.
>
But by your own example, you're going to have to do that anyway  
because you're adding some new functionality into the code.  THAT's  
what causes the re-certification.  Whether that new functionality uses  
mpi3 or not is irrelevant.  Recertification is going to happen  
regardless of whether they use the new mpi3 module or not.
To be clear: you seem to be implying that to compile an existing  
legacy MPI application against an MPI-3 implementation, you *have* to  
"use mpi3" and convert all your code.  This is simply not true.  Per  
the survey data (which you cited in a later email), users strongly  
want to be able to upgrade to an MPI-3 implementation and not have to  
make any source code changes.  Hence, mpif.h and use mpi will still  
function exactly as they did before.
The point: new application functionality -- which you were going to do  
anyway -- causes re-certification.  That new functionality may or may  
not "use mpi3".  Implying that all changes require converting to mpi3  
and *therefore* it's mpi3's fault that you have to recertify is just  
FUD.
Another point: upgrading to an MPI-3 implementation, regardless of  
whether you change any code or not -- will also require re- 
certification.
> > 3. Painting a picture that only advanced / bleeding edge  
> developers will be able to use mpi3 without major disruption is  
> incorrect.  One of the reasons that the conversion functions exist  
> is for exactly this purpose: you can extend legacy Fortran MPI  
> applications with new MPI3 functionality.
>
> I most respectfully disagree. If I have to use conversion functions  
> in my old code, I have to basically rescan all of my application -  
> several million lines of code.
>
Right, and that would be pretty dumb.  Why not use the conversion  
functions in the new subroutines that use mpi3?
--
Jeff Squyres
jsquyres at cisco.com
For corporate legal information go to:
http://www.cisco.com/web/about/doing_business/legal/cri/
    
    
More information about the mpiwg-fortran
mailing list