[MPIWG Fortran] Proposal: MPI_SIZEOF not profiled

N.M. Maclaren nmm1 at cam.ac.uk
Fri May 16 11:04:17 CDT 2014

On May 16 2014, Jeff Squyres (jsquyres) wrote:
> On May 16, 2014, at 11:14 AM, Rolf Rabenseifner <rabenseifner at hlrs.de> 
> wrote:
>> We need a correct expression telling that it is allowed to be 
>> not interceptable.
>> MPI-3.0 wording: "as macro in C."
>>  [does not tell anything about Fortran]
> Per my other mail, I think we don't want to touch this in an errata. 
> Allowing WTICK/WTIME to be inlined in Fortran -- which I intentionally 
> avoided in the original proposal -- is a new thing, and should wait until 
> MPI-4.
> My proposal was amended by your prior mail, but I do not like this "Maybe 
> better proposal" you sent.
>To be clear, here's what I'm currently proposing:
> ----- An implementation is allowed to implement MPI_WTIME, MPI_WTICK, 
> PMPI_WTIME, PMPI_WTICK, and the handle- ***and status-*** conversion 
> functions (MPI_Group_f2c, etc.) in Section***s*** 17.2.4 ***and 
> 17.2.5***, and no others, as macros in C ***or inlined in Fortran***. 
> ***MPI_SIZEOF may also be inlined.***

I agree with Rolf's wording.  Talking about inlining in C is a mistake,
too - but MPI didn't start it - WG14 did.  But it is a REALLY bad idea
in Fortran, which (generally) doesn't talk about implementation at all.
It didn't even assume floating-point reals until Fortran 90!

The term "not interceptable" conveys the important restriction.  How
an implementation handles MPI_Sizeof is up to it - as I said, using a
preprocessor is one possibility, and has been and is done for other

Nick Maclaren.

More information about the mpiwg-fortran mailing list