Re: [MPI3 Fortran] Fwd: Re: Fwd: [Mpi-comments] MPI 3.0:Fortran 2008 interface - issue with the LOGICAL kind
Dear all Fortran group members and MPI implementers, Is the solution in ticket #364 now also okay for you? https://svn.mpi-forum.org/trac/mpi-forum-web/ticket/364 Key points have been: - All routines with LOGICAL dummy arguments are put into an additional routine group. Those routines cannot be implemented with BIND(C) if the compiler is Fortran standard compliant. This does not have any implications for the MPI users, except for callback routines. - The proposed solution does not require special C based bool datatypes for the normal MPI Fortran programmer when using the mpi_f08 module and typical routines with logical flags like MPI_Test. - The abstract interfaces for the callbacks are switched from BIND(C) to non-BIND(C). This is the "hard" change in this MPI-3.0 erratum. The current definition of the callbacks in mpi_f08 module was not Fortran compliant. This was detected not earlier. It is resolved with this ticket. Implication is that also routines with callbacks as dummy arguments (e.g. MPI_OP_CREATE) cannot be implemented with BIND(C). The proposal is based on minimal surprise for the MPI users. Best regards Rolf ----- Original Message -----
From: "Bill Long" <[email protected]> To: "MPI-3 Fortran working group" <[email protected]> Sent: Tuesday, March 5, 2013 5:20:53 PM Subject: Re: [MPI3 Fortran] Fwd: Re: Fwd: [Mpi-comments] MPI 3.0:Fortran 2008 interface - issue with the LOGICAL kind I see. So, we are OK as long as there is no routine that has both a choice buffer argument and a LOGICAL argument.
Cheers, Bill
On 3/5/13 10:07 AM, Rolf Rabenseifner wrote:
Bill,
So, you are saying that MPI_SUBARRAYS_SUPPORTED = .true. is not allowed (page 605 lines 23-30)?
No, it is allowed.
The important text is p606:45 - p607:3. This is the basis for the "Upgrade" columns in table p609:18-32. These upgrades have MPI_SUBARRAYS_SUPPORTED==.TRUE. although most routine groups are still without BIND(C).
Therefore, it is no problem to have no BIND(C) for the new MPI_TEST routine group.
Best regards Rolf
----- Original Message -----
From: "Bill Long" <[email protected]> To: "Rolf Rabenseifner" <[email protected]> Cc: "MPI-3 Fortran working group" <[email protected]> Sent: Monday, March 4, 2013 5:44:04 PM Subject: Re: [MPI3 Fortran] Fwd: Re: Fwd: [Mpi-comments] MPI 3.0:Fortran 2008 interface - issue with the LOGICAL kind On 3/4/13 10:34 AM, Rolf Rabenseifner wrote:
Bill,
Without BIND(C), you have to make it according to MPI-3.0 page 605, lines 31-38.
So, you are saying that MPI_SUBARRAYS_SUPPORTED = .true. is not allowed (page 605 lines 23-30)?
This still does not solve the problem of the wrapper names being inaccessible when only the mpif.h include file is used. Unless, of course, the include file consists only of "use mpi", but this is problematic because of statement ordering rules.
Cheers, Bill
Therefore, ticket #364 should work.
Please check again.
Best regards Rolf
-- Bill Long [email protected] Fortran Technical Support & voice: 651-605-9024 Bioinformatics Software Development fax: 651-605-9142 Cray Inc./Cray Plaza, Suite 210/380 Jackson St./St. Paul, MN 55101
_______________________________________________ mpi3-fortran mailing list [email protected] http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi3-fortran
-- Dr. Rolf Rabenseifner . . . . . . . . . .. email [email protected] 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)
participants (1)
-
Rolf Rabenseifner