[MPIWG Fortran] Provide Fortran datatypes if Fortran bindings not provided?

Rolf Rabenseifner rabenseifner at hlrs.de
Thu Feb 18 15:43:49 CST 2016


> I think you have (1) and (2) backwards in this paragraph.
Yes, I did it with the wrong numbers. I corrected it below.

> I think JeffH and Jed want (1).
> I think I want (1), too.

I see the point.
I have not a strong opinion and would like to know,
what the other representatives in the Forum would like to see,
because

(2) MPI_DATATYPE_NULL is what they mainly have today.
(1) "not existing" would be a real change.

Rolf

----- Original Message -----
> From: "Jeff Squyres" <jsquyres at cisco.com>
> To: "MPI-WG Fortran working group" <mpiwg-fortran at lists.mpi-forum.org>
> Sent: Thursday, February 18, 2016 10:31:23 PM
> Subject: Re: [MPIWG Fortran] Provide Fortran datatypes if Fortran	bindings	not provided?

> On Feb 18, 2016, at 3:55 PM, Rolf Rabenseifner <rabenseifner at hlrs.de> wrote:
>> 
>> I would prefer a solution where an application or middlware can check at
>> runtime whether the Fortran MPI datatypes exist, i.e., I like mpich's
>> solution. It is more simple than all methods that People must check prior
>> to compile and must remove or Change parts of there software.
> 
> The reason that JeffH and Jed hate this solution is because it makes it quite
> difficult for an application to know whether the MPI has Fortran support or not
> -- they basically have to compile an MPI application *and then run it* to see
> if the datatypes are actually MPI_DATATYPE_NULL.
> 
> Doing this inside a GNU Autoconf/configure script is very, very difficult
> because of the huge differences in how you launch MPI applications across
> different HPC environments.
> 
> Their (strong) preference is that you can have a simple compilation test in the
> GNU Autoconf/configure script that just tries to compile something like the
> following:
> 
> -----
> #include <mpi.h>
> MPI_Datatype foo = MPI_INTEGER;
> -----
> 
> If that compiles, then your MPI has Fortran support.
> If it doesn't compile, your MPI doesn't have Fortran support.
> 
>> In the moment,in the case of a missing accompanying Fortran Compiler,
>> an application or middleware that wants to handle
>> MPI Fortran datatypes must handle both cases
>> (1) mpi.h does not provide a specific MPI Fortran datatype
>> (2) mpi.h provides this MPI Fortran datatype as MPI_DATATYPE_NULL
>> 
>> The additional case, that it is mapped to a real datatype is not
>> an exception, because it defines some sort of accompanying Fortran Compiler.
>> 
>> I would prefer that the MPI standard defines, which of the two
>> options should be implemented.
> 
> I think JeffH and Jed want (1).
> 
> I think I want (1), too.
> 
   As said at the beginning, I would prefer (2),
>> - as mpich is doing it in general, and
>> - OMPI is doing it partially,
   whereas (1) was not done by mpich nor by OMPI.
> 
> 
> --
> Jeff Squyres
> jsquyres at cisco.com
> For corporate legal information go to:
> http://www.cisco.com/web/about/doing_business/legal/cri/
> 
> _______________________________________________
> mpiwg-fortran mailing list
> mpiwg-fortran at lists.mpi-forum.org
> http://lists.mpi-forum.org/mailman/listinfo.cgi/mpiwg-fortran

-- 
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)



More information about the mpiwg-fortran mailing list