[MPI3 Fortran] MPI 3.0: Fortran 2008 interface - issue with the LOGICAL kind

Rolf Rabenseifner rabenseifner at hlrs.de
Wed Apr 17 12:09:59 CDT 2013


Dear all in the Fortran and Tools WGs,

#364 presents a real bug in the MPI-3.0 Fortran binding of
all three Fortran support methods.
Reason: LOGICAL is used in MPI together with BIND(C), 
        but LOGICAL is not interoperable with C.

Based on a lot of help from Bill Long, Craig, Jeff, Tobias, and Hubert,
I produced a consistent proposal on how to fix the broken Section 17.1.5.

It is attached.

It looks quite long, but most of the text rationale, advices and examples
to make life a bit easier.
The normative part is similar in length as in the broken section.

The basics are simple:
 - Three implementation schemes:
   - A = no BIND(C)
   - B = standardized wrapping to the MPI C routines
         with strong reporting to the tools people
   - C = with BIND(C), but only partial possible and only for
         the new mpi_f08.
 - A and B works for all MPI routines and all compilers
   and all three support methods (mp_f08, mipi, mpif.h).
 - B can be combined with A or C.
 - B alone would be the most efficient way to implement
   the Fortran interface with wrappers to the MPI routines 
   written in C
 - B alone or combined with A/C has the 
   smallest impact to the tools provider.
 - mpif.h and mpi module require A or A+B
   for PMPI backward compatibility.
 - mpi_f08 can be implemented with A, A+B, B only, C/A, or C/A+B,
   i.e., most freedom for the new module.
   There is smaller need for backward compatibility
   of the profiling interface. 

A+B would be a minimal solution,
A+B+C is similar to what we have in the broken section.

Because current Section 17.1.5 is broken, it should be fixed
through an erratum.

Craig and I will be at the tools telecon tomorrow.
I hope, you have time to look at the document
that I can answer your questions tomorrow.

Best regards
Rolf

-- 
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)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: binding-2_Sec.17.1.5_2013-04-17.pdf
Type: application/pdf
Size: 270436 bytes
Desc: not available
URL: <http://lists.mpi-forum.org/pipermail/mpiwg-fortran/attachments/20130417/857adb83/attachment-0001.pdf>


More information about the mpiwg-fortran mailing list