Re: [MPI3 Fortran] MPI function symbol naming convention for tools
I finally have had a chance to read through all of the responses. Hopefully I can clarify a few things without muddying the waters further. If Martin is correct and no tools support the "use mpi" option, then things are pretty simple. 1. mpih.f option: For the immediate future this works as it always has. I was only suggesting to deprecate it. But on reconsideration, I think this is the wrong thing to do. We are trying to deprecate mpih.f itself so the tools using mpih.f can continue using the current naming convention as long as mpih.f stays around. Fortran users could write an MPI_Send routine and it would work with the PMPI interface as before (at least as I understand how this works). 2. use mpi or use mpi_f08 option: We would mandate that these interfaces supply the names mpi_send_f, mpi_send_f_nostatus, mpi_send_desc, and mpi_send_desc_nostatus. The problem comes when a Fortran user want to use the PMPI interface. I need to understand this more and write some tests and examples we can all look at. So I suggest we schedule a conference call sometime next week (after July 5). -craig On Mon, Jun 27, 2011 at 6:38 AM, Hubert Ritzdorf <[email protected]> wrote:
-----Original Message----- From: [email protected] [mailto:mpi3-fortran- [email protected]] On Behalf Of Bill Long Sent: Saturday, June 25, 2011 11:33 AM To: Martin Schulz Cc: MPI3 Tools; MPI-3 Fortran working group Subject: Re: [MPI3 Fortran] MPI function symbol naming convention for tools
On 6/24/11 11:54 AM, Martin Schulz wrote:
This is probably my lack of knowledge in Fortran compilers, but is this all even possible with regular compilers: I would assume that you can use an MPI 3.0 implementation with Craig's proposal (case A) with an older F77 or F90 compiler, right? If so, one would use "use mpi" or "mpif.h", i.e., case A.1. Can you do the name mapping from mpi_send to mpi_send_f - I thought this was a new feature from F08?
If you still have an old f77 compiler on you system (from decades ago), it will not be adequate. �If you have a current version of a Fortran compiler available, you are in much better shape. �The meaning of "Fortran" changes over time, and the compilers progress accordingly, with some time delay.
The name mapping of a call to �MPI_send into a call to mpi_send_f �is accomplished with generic interfaces. These were part of Fortran 90 (20 year old technology now) - F08 is not required for this. �Other details of the interfaces do require more recent standards, however.
Craig's proposal would require at least Fortran 2003. Otherwise, the compiler may still generate MPI_SEND_F, mpi_send_f, mpi_send_f_ or mpi_send_f__.
Hubert
_______________________________________________ mpi3-fortran mailing list [email protected] http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi3-fortran
participants (1)
-
Rasmussen, Craig