[Mpi3-tools] Comments/Questions on Fortran 08 Bindings
Jeff Squyres (jsquyres)
jsquyres at cisco.com
Sat Jul 2 15:19:11 CDT 2011
See below. I answered only those which weren't alread answered.
Sent from my phone. No type good.
On Jul 1, 2011, at 3:14 AM, "Marc-Andre Hermanns" <m.a.hermanns at grs-sim.de> wrote:
> Dear Martin,
> I gathered some feedback from some of the Scalasca team members on the
> proposed changes to profiling with the Fortran 08 interface.
> The Scalasca measurement adapter currently creates the Fortran wrappers
> for each of the four name-mangling schemes automatically (CPP macros),
> as the wrapper is the same, just the symbol name is different. Another
> name-mangling scheme for the same wrapper would probably not hurt very much.
> However, some questions arose in the discussions that I have to admit
> might stem from our limited knowledge of Fortran and Fortran 08 in
> 1) Are the Fortran handle types compatible/interchangeable with the C
> handle types, or will c2f/f2c still have to be called?
You will still need to call c2f/f2c. MPI f08 handles != MPI mpif or use MPI handles, and != C handles.
> 2) Just as John Mellor-Crummey commented: are there standardized
> routines to handle the array descriptors in C and C++ which are the
> primary languages to implement a measurement layer? If not, how to deal
> with it? Can it be interpreted as a void*? How to compare against
> 3) If the Fortran 08-C/C++ interface for the descriptors is not
> available. Does it mean I have to implement the wrappers in Fortran?
> Didn't we just agree that MPI_T does not need Fortran bindings? In this
> case it would need them again, right?
> 4) How is the support for '_f' for just the MPI functions to be done in
> the Fortran compiler? Won't it be mangled to '_f_' or '_f__' again? What
> are the actual benefits of this '_f'?
There will only be one symbol tools need to worry about: _f. If compilers mangle it further, tools won't know or care.
> 5) Why deviate from the existing MPI_STATUS_IGNORE in favor of inflating
> the API? Is there a real need for it?
> I can easily imagine users of the Fortran 08 interface, while fixing
> some older MPI code written with the Fortran 77 interface, to get
> confused about the (in 77) non-optional status parameter.
> 7) Along the lines of Todd's comment on function overloading: It would
> be great if the _f08 and _f09_nostatus could just be the same
> measurement wrapper, to keep maintenance of measurement code to a minimum.
> Marc-Andre Hermanns
> German Research School for
> Simulation Sciences GmbH
> c/o Laboratory for Parallel Programming
> 52056 Aachen | Germany
> Tel +49 241 80 99753
> Fax +49 241 80 6 99753
> Web www.grs-sim.de
> Members: Forschungszentrum Jülich GmbH | RWTH Aachen University
> Registered in the commercial register of the local court of
> Düren (Amtsgericht Düren) under registration number HRB 5268
> Registered office: Jülich
> Executive board: Prof. Marek Behr Ph.D. | Dr. Norbert Drewes
> Mpi3-tools mailing list
> Mpi3-tools at lists.mpi-forum.org
More information about the mpiwg-tools