Jeff,

No, the patch did not solve the problem. Looking more,
there is another place where the interfaces come up, in
mpi-f90-interfaces.h.sh in ompi/mpi/f90/scripts

If I manually change the two arguments to arrays from scalars
in both scripts after running configure but before "make",
then it works.

Stan Sazykin


On 4/21/2011 11:07, Jeff Squyres wrote:
I do believe you found a bona-fide bug.

Could you try the attached patch?  (I think it should only affect f90 "large" 
builds)  You should be able to check it quickly via:

cd top_of_ompi_source_tree
patch -p0<  scatterv-f90.patch
cd ompi/mpi/f90
make clean
rm mpi_scatterv_f90.f90
make all install



On Apr 21, 2011, at 10:37 AM, Stanislav Sazykin wrote:

Hello,

I came across what appears to be an error in implementation of
MPI_scatterv Fortran-90 version. I am using OpenMPI 1.4.3 on Linux.
This comes up when OpenMPI was configured with
--with-mpi-f90-size=medium or --with-mpi-f90-size=large

The standard specifies that the interface is
MPI_SCATTERV(SENDBUF, SENDCOUNTS, DISPLS, SENDTYPE, RECVBUF,
        RECVCOUNT, RECVTYPE, ROOT, COMM, IERROR)
    <type>     SENDBUF(*), RECVBUF(*)
    INTEGER    SENDCOUNTS(*), DISPLS(*), SENDTYPE

so that SENDCOUNTS and DISPLS are integer arrays. However, if
I compile a fortran code with calls to MPI_scatterv and compile
with argument checks, two Fortran compilers (Intel and Lahey)
produce fatal errors saying there is no matching interface.

Looking in the source code of OpenMPI, I see that  in
ompi/mpi/f90/scripts, the script mpi_scatterv_f90.f90.sh that
is invoked when running "make" produces Fortran interfaces
that list both SENDCOUNTS and DISPLS as

integer, intent(in) ::

This appears to be an error as it would be illegal to pass a scalar
variable and receive it as an array in the subroutine. I have not
figured out what happens in the code at this invocation (the code
is complicated), but seems like a segfault situation.

--
Stan Sazykin
_______________________________________________
users mailing list
us...@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/users




_______________________________________________
users mailing list
us...@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/users

Reply via email to