<html><body>
<p>Jeff - <br>
<br>
The statement in the standard should allow an MPI implementation the option of leaving out checking for MPI functions with single or double CHOICE buffers but should not say they "<tt>are explicitly not included in the F90 bindings.".</tt><br>
<br>
It is possible that even <tt>5,250</tt> functions would be a problem on some Fortran compilers and an implementation that has to deal with such a compiler may wish to provide checking for the MPI subroutines that do not have any CHOICE arguments but skip even the 5250 functions for single CHOICE.<br>
<br>
Some Fortran compilers have non-standard features that allow a formal parameter to be declared as what amounts to void* and with that compile feature, CHOICE becomes easy. An MPI implementation that is based on a Fortran compiler with this feature could check even double CHOICE easily.<br>
<br>
Dick <br>
<br>
Dick Treumann - MPI Team/TCEM <br>
IBM Systems & Technology Group<br>
Dept 0lva / MS P963 -- 2455 South Road -- Poughkeepsie, NY 12601<br>
Tele (845) 433-7846 Fax (845) 433-8363<br>
<br>
<br>
<tt>mpi-21-bounces@lists.mpi-forum.org wrote on 03/05/2008 09:15:35 PM:<br>
<br>
> The current MPI-2 F90 bindings are un-implementable because they <br>
> require almost 7 *million* interface functions: with 15 intrinsic <br>
> Fortran types, each with 7 possible dimensions, the current F90 <br>
> interface *requires*:<br>
> <br>
> - 50 MPI functions with one choice buffer: 15 * 7 * 50 = 5,250 functions<br>
> - 25 MPI functions with two choice buffers: (15 * 7 * 25)^2 = 6.8M <br>
> functions<br>
> - ...and a few hundred more MPI functions with no choice buffers<br>
> <br>
> This is clearly broken.<br>
> <br>
> An MPI-2.1-worthy solution could be to add a global statement saying <br>
> that MPI functions with two choice buffers are explicitly not included <br>
> in the F90 bindings. F90 MPI applications can transparently fall back <br>
> to the F77 bindings (although they won't get the strong type checking, <br>
> etc.). This idea therefore fits the requirement of not breaking any <br>
> existing MPI codes.<br>
> <br>
> Specifically: if we remove the requirement to provide all MPI <br>
> functions with two choice buffers, 5,000+ F90 interface functions is <br>
> [a pain but] implementable. I doubt that any current MPI <br>
> implementation provides more than the no-choice-buffers plus one- <br>
> choice-buffer functions anyway...<br>
> <br>
> If this seems like a good idea, I can write a proper proposal for it. <br>
> Comments?<br>
> <br>
> -- <br>
> Jeff Squyres<br>
> Cisco Systems<br>
> <br>
> _______________________________________________<br>
> mpi-21 mailing list<br>
> mpi-21@lists.mpi-forum.org<br>
> <a href="http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi-21">http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi-21</a><br>
</tt></body></html>