Closed mpiforumbot closed 8 years ago
Originally by RolfRabenseifner on 2013-09-12 12:47:58 -0500
Typo-correction in the ticket's description.
Originally by jsquyres on 2014-05-09 07:46:07 -0500
The more I think about this, the more I think it is unnecessary.
Yes, I realize that this question keeps coming up -- and it's a major piece of rationale for putting this comment in the standard.
But another way to answer this question is just to have someone implement it in a major MPI implementation. If Cray wants to do so, let's have them do that. Then the implementation will be out there, and the answer to "hey, can I implement with CONTAINS?" will be publicly available via implementation.
Originally by RolfRabenseifner on 2014-05-10 12:18:16 -0500
The alternative solution is only a clarification and does not include the idea of doing anything outside the scope of the MPI specification. It is needed because the question about CONTAINS comes back to the MPI forum every few month. This clarification is therefore needed to finally finish these questions about CONTAINS.
The new alternative version is a clarification to the errata in #388 and should be prefered instead of the originally read solution. The new version should be read together with single vote as MPI-3.0 erratum because it is a clarification of the #388 erratum.
Originally by jsquyres on 2014-05-13 09:20:12 -0500
Bill Long made the point off-list that we don't want to prohibit using CONTAINS for those implementors who want to provide an extension that has an mpi_f08 module that uses CONTAINS. I proposed a new AtoI:
-Advice to implementors.* An implementation that provides a Fortran interface must provide a combination of MPI library and module or include file that uses the specific procedure names as described in Table 1.1 on page 5 such that the MPI Fortran routines are interceptable. *(End of advice to implementors.)*
Originally by jsquyres on 2014-05-13 09:22:54 -0500
Removed from CC: Darius (he's long gone), Dave Goodell (his ANL address doesn't even work any more), and George + Rajeev (I'm assuming they don't care about Fortran issues).
Originally by RolfRabenseifner on 2014-05-14 02:34:52 -0500
I removed the original text that was read together with #388:
-Advice to implementors.* An implementor may provide other specific procedure names, e.g., internal names generated by using CONTAINS to include the MPI routines in the namespace of the mpif08 and mpi modules. In this case, these specific procedure names may not be interceptable by profiling wrappers. To be compliant with the MPI standard as described in Section 17.1.1 on page 597, the implementor must also provide an additional combination of MPI library and module file that uses the specific procedure names as described in Table 1.1 on page 5. (End of advice to implementors.)_
and changed the text into a pure clarification-of-an-erratum ticket, which is therefore itself an erratum with single reading+vote.
The proposed text is already positively reviewed by Jeff Squyres, Bill Long, and Bill Gropp.
Originally by jsquyres on 2014-06-05 10:27:57 -0500
Ticket passed errata vote: 18 yes, 0 no, 1 abstain
Originally by jsquyres on 2014-12-07 09:32:39 -0600
Reviewed by Jeff Hammond.
Originally by RolfRabenseifner on 2014-12-09 22:37:24 -0600
PDF-Review: Changes look correct.
Originally by RolfRabenseifner on 2013-09-12 11:28:19 -0500
Description
In the definition of the new Section 17.1.5 in ticket #388, it was seen that more optimal implementation schemes with CONTAINS may be desired. Due to constraints with the profiling, the following advice to implementors is proposed. In the current version of Fortran and without additional non-standard compiler features, the text of this advice restrict the use of CONTAINS. This may change with future Fortran. The text of the advice will stay valid because it describes only the needed outcome, and not how it must be implemented.
Extended Scope
None.
History
This original text (about usage of CONTAINS) had its reviews and formal reading as part of ticket #388. This advice was split off into this new ticket, because it was new functionality and not an erratum.
The text was now modified that it is a pure clarification of the erratum #388. Therefore it starts again with reading and voting, but now as erratum.
Proposed Solution (as MPI-3.0 errata)
Add at the end of Section 17.1.5 (see ticket #388):
-Advice to implementors.*
An implementation that provides a Fortran interface must provide a combination of MPI library and module or include file that uses the specific procedure names as described in Table 1.1 on page 5 so that the MPI Fortran routines are interceptable as described above. -(End of advice to implementors.)*
("Table 1.1 on page 5" is the table in the pdf of ticket #388)
Impact on Implementations
None.
Impact on Applications / Users
None.
Entry for the Change Log
None.
Voting category
Single-vote in category MPI-3.0-errata.