[mpiwg-tools] [MPIWG Fortran] Proposal: MPI_SIZEOF not profiled
Martin Schulz
schulzm at llnl.gov
Mon May 19 13:03:36 CDT 2014
Yes, sounds like it - I¹ll take 428 off the list then. We should take some
time on Monday afternoon as part of the tools WG time to talk about this.
Martin
________________________________________________________________________
Martin Schulz, schulzm at llnl.gov, http://scalability.llnl.gov/
CASC @ Lawrence Livermore National Laboratory, Livermore, USA
On 5/19/14, 8:35 AM, "Jeff Squyres (jsquyres)" <jsquyres at cisco.com> wrote:
>I think we need to push this errata out to the Japan meeting. There
>seems to be a bunch of subtlety here; trying to rush this through today
>does not seem like a good idea just to meet the T-2 week deadline for the
>Chicago meeting (which technically expires at 2pm US Central time today
>-- which is about 3.5 hours from now).
>
>Let me try to summarize the salient points so far:
>
>1. The old text kinda sucks:
> a. it says "macros" (including the section title) where it really
>means "not interceptable"
> b. p19 implies that these function can only be macros in C (not
>inlined, and not in Fortran), which seems to contradict p555
>
>2. We need to add the Status conversion functions in there
>
>3. We want to add MPI_SIZEOF (which is Fortran-only, BTW) to the list
>
>4. The use of the word "inline" seems to be a bad idea because it can
>have many different meanings. We should say that these functions are not
>interceptable, which is the real requirement.
>
>5. I think it would be better to change p555 to not say "macros" (i.e.,
>"non-interceptable"), but rather to say "the routines listed in 2.6.4"
>(i.e., who cares what the reason is -- just cite 2.6.4 and let 2.6.4
>explain everything).
>
>Is that all?
>
>
>
>
>On May 19, 2014, at 11:08 AM, Rolf Rabenseifner <rabenseifner at hlrs.de>
>wrote:
>
>> Yes, the "allowed as macros" on MPI-3.0 p555:32
>> would allow a different mechanism for these routines
>> that makes them non-interceptable.
>>
>> If this "non-interceptable" is done by other means
>> than macro, then p555:35 "For routines implemented
>> as macros, it is still required that the PMPI_
>> version be supplied" would not apply!
>>
>> It is bad to use different wording for having
>> better English quality ;-(
>>
>> And your are right, my "#ifdef MPI_Wait" says
>> therefore nothing.
>>
>> Do you all agree that wording in
>> p19:48 - p20:5 and p555:31-37 is at all inconsistent
>> and therefore new and useful wording is needed
>> in this erratum?
>>
>> Rolf
>>
>> ----- Original Message -----
>>> From: "N.M. Maclaren" <nmm1 at cam.ac.uk>
>>> To: "MPI-WG Fortran working group" <mpiwg-fortran at lists.mpi-forum.org>
>>> Sent: Monday, May 19, 2014 4:35:10 PM
>>> Subject: Re: [MPIWG Fortran] [mpiwg-tools] Proposal: MPI_SIZEOF not
>>>profiled
>>>
>>> On May 19 2014, Rolf Rabenseifner wrote:
>>>>
>>>> Bill,
>>>>
>>>> your text goes beyond the errata goal.
>>>>
>>>> The errata goal was:
>>>> - adding the missing Status conversion
>>>> - adding MPI_SIZEOF
>>>>
>>>> And this works as errata.
>>>>
>>>> Your goal is to allow also
>>>> - Fortran non-interceptable for these routines.
>>>>
>>>> Your additional Change is to allow other methods
>>>> than C macros for C.
>>>> This would prevent "#ifdef MPI_Wtime".
>>>>
>>>> All this would be MPI-4.0 and not MPI-3.0 errata.
>>>
>>> Would it? I don't know what useful effect you would expect
>>> "#ifdef MPI_Wtime" to achieve, but it assuredly would NOT tell
>>> you (reliably) whether or not it can be accessed through the
>>> profiling interface. 14.2 says:
>>>
>>> 1. provide a mechanism through which all of the MPI defined
>>> functions, except those allowed as macros (See Section 2.6.4),
>>> may be accessed with a name shift.
>>>
>>> Because it says "ALLOWED as macros", MPI_Wtime may not be accessed
>>> through the profiling interface, whether or not it is implemented
>>> as a macro. Doing so is a user error, leading to undefined
>>> behaviour.
>>> Therefore, an implementation may implement them as C inline
>>> functions,
>>> and would meet all of the requirements of MPI.
>>>
>>> The error is more pervasive than just for Fortran. Because it did
>>> not say what it meant, but something that was equivalent under K&R C
>>> (sic), it wasn't strictly true in C90 and was rendered significantly
>>> misleading (arguably erroneous) by C99. And that's the reason that
>>> some people get very unhappy about the proposed partial fix.
>>>
>>> It's also why the best solution is to regard ALL of the wording as
>>> an error - which would probably mean starting a new ticket. But it's
>>> definitely an error in the wording, not a change.
>>>
>>>
>>> Regards,
>>> Nick Maclaren.
>>>
>>> _______________________________________________
>>> mpiwg-fortran mailing list
>>> mpiwg-fortran at lists.mpi-forum.org
>>> http://lists.mpi-forum.org/mailman/listinfo.cgi/mpiwg-fortran
>>>
>>
>> --
>> Dr. Rolf Rabenseifner . . . . . . . . . .. email rabenseifner at hlrs.de
>> High Performance Computing Center (HLRS) . phone ++49(0)711/685-65530
>> University of Stuttgart . . . . . . . . .. fax ++49(0)711 / 685-65832
>> Head of Dpmt Parallel Computing . . . www.hlrs.de/people/rabenseifner
>> Nobelstr. 19, D-70550 Stuttgart, Germany . . . . (Office: Room 1.307)
>> _______________________________________________
>> mpiwg-fortran mailing list
>> mpiwg-fortran at lists.mpi-forum.org
>> http://lists.mpi-forum.org/mailman/listinfo.cgi/mpiwg-fortran
>
>
>--
>Jeff Squyres
>jsquyres at cisco.com
>For corporate legal information go to:
>http://www.cisco.com/web/about/doing_business/legal/cri/
>
>_______________________________________________
>mpiwg-tools mailing list
>mpiwg-tools at lists.mpi-forum.org
>http://lists.mpi-forum.org/mailman/listinfo.cgi/mpiwg-tools
More information about the mpiwg-tools
mailing list