Thanks, Jeff,
I had stared at those lines many times and it didn't register that
(count) was explicitly specifying only 1-D is allowed. Pretty cryptic.
I wonder how many other fortran programmers will be bit by this?
T. Rosmond
On 03/23/2017 10:50 AM, Jeff Squyres (jsquyres) wrote:
Actually, MPI-3.1 p90:37-45 explicitly says that the array_of_blocklengths and
array_of_displacements arrays must be both 1D and of length count.
If my Fortran memory serves me correctly, I think you can pass in an array
subsection if your blocklengths/displacements are part of a larger array (the
compiler should be smart enough to do that without forcing a copy, when
possible).
FWIW: one of the design goals of the mpi_f08 module was to bring to light
previous practices that people used in their applications with mpif.h that,
although they worked, probably were not really correct Fortran / worked kinda
by accident. Recall that F08 is very, very strongly typed (even more so than
C++). Meaning: being picky about 1D-and-a-specific-legnth is a *feature*!
(yeah, it's kind of a PITA, but it really does help prevent bugs)
On Mar 23, 2017, at 1:06 PM, Tom Rosmond <rosm...@reachone.com> wrote:
Hello,
Attached is a simple MPI program demonstrating a problem I have encountered
with 'MPI_Type_create_hindexed' when compiling with the 'mpi_f08' module.
There are 2 blocks of code that are only different in how the length and
displacement arrays are declared. I get
indx.f90(50): error #6285: There is no matching specific subroutine for this
generic subroutine call. [MPI_TYPE_CREATE_HINDEXED]
call mpi_type_create_hindexed(lenidx,ijlena_2d,ijdispl_2d, &
for a case where the length and displacement arrays are 2-dimensional. As far
as I can find, there is nothing in the MPI-3.1 standard that requires that
these arrays be 1-dimensional. Am I missing something, or is this a OPEN-MPI
bug? I have been running successful programs with multi-dimensional versions
of these arrays for years when compiling with 'mpif.h'.
T. Rosmond
<indx.f90>_______________________________________________
users mailing list
users@lists.open-mpi.org
https://rfd.newmexicoconsortium.org/mailman/listinfo/users
_______________________________________________
users mailing list
users@lists.open-mpi.org
https://rfd.newmexicoconsortium.org/mailman/listinfo/users