[MPIWG Fortran] Another MPI_SIZEOF question
Jeff Squyres (jsquyres)
jsquyres at cisco.com
Tue Jun 10 08:59:23 CDT 2014
On Jun 10, 2014, at 9:06 AM, William Gropp <wgropp at illinois.edu> wrote:
> This naming corresponds to MPI-3 but not to the use in MPI-1 nor to what some users may still want, which is what Jeff is talking about.
There are really two issues at play here:
1. Which MPI interface an application is using: C, Fortran mpif.h, Fortran mpi module, or Fortran mpi_f08 module
2. Which Fortran compiler an application needs
Trying to munge these two issues into a single label has led to all kinds of confusion and silly religious debates ...like this one.
> In my opinion, the use of "mpif.h" should have been to support existing programs in their existing compilation environments. That might be fixed-format early Fortran, either Fortran 77 or perhaps Fortran 90 or Fortran 95. The goal of MPI-3 should have been to ensure that new programs used the mpi or mpi_f08 modules and that existing programs could continue to be used. That is *not* the situation that we have now.
Fair enough; but note that this has been true since 1996 (MPI_SIZEOF was introduced in MPI 2.0).
> As far as I can tell from the requirement that MPI_SIZEOF be supported, mpif.h also requires Fortran 2008 + TS29113, meaning that many legacy MPI programs cannot be compiled with a standard conforming MPI implementation and a Fortran compiler that implements only, say, Fortran 2008 (but not the TS29113, which is *not* part of the standard) or Fortran 2003.
Is 2003 or 2008+TS29113 required for SIZEOF? I have no knowledge of when INTERFACE blocks were added to Fortran.
I'm asking this because DIMENSION(..) is *useful* to implement MPI_SIZEOF succinctly/easily, but it is not *required*.
Put differently: if 2003/2008+TS is required for MPI_SIZEOF, then MPI-2.0 made a terrible error in defining MPI_SIZEOF.
--
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