Jeff,
 
The problem occurs in both OpenMPI 1.3 and 1.4.  The user is also reporting 
that he's experiencing this problem on other systems as well.
 
George Petit
Lockheed Martin
ARL DSRC Customer Support Team Lead
george.pe...@us.army.mil
410-278-9283
 

________________________________

From: users-boun...@open-mpi.org on behalf of Jeff Squyres
Sent: Wed 2/16/2011 10:40 AM
To: Open MPI Users
Subject: Re: [OMPI users] MPI_TYPE_CREATE_SUBARRAY not in mpif90 library



What version of Open MPI are you using?

I just checked a trivial f90 MPI program and MPI_TYPE_CREATE_SUBARRAY seemed to 
work ok.

I am not a fortran expert, but when I have seen this type of error message 
before, it *usually* meant that there was a type mismatch between the types 
passed to the function and the function signature available in the f90 module.  
I.e., the compiler found a function matching the *name*, but wasn't able to 
find a match for the *type signature*.

Here's Open MPI's declaration of MPI_TYPE_CREATE_SUBARRAY:

-----
interface MPI_Type_create_subarray
subroutine MPI_Type_create_subarray(ndims, size_array, subsize_array, 
start_array, order, &
        oldtype, newtype, ierr)
  integer, intent(in) :: ndims
  integer, dimension(*), intent(in) :: size_array
  integer, dimension(*), intent(in) :: subsize_array
  integer, dimension(*), intent(in) :: start_array
  integer, intent(in) :: order
  integer, intent(in) :: oldtype
  integer, intent(out) :: newtype
  integer, intent(out) :: ierr
end subroutine MPI_Type_create_subarray
end interface
-----

One thing you might want to double check is that OMPI was compiled with 
MPI_REAL8 support (since MPI_REAL8 was passed to the subroutine).  Run this:

-----
shell$ ompi_info --all | grep real8
         Fort have real8: yes
         Fort real8 size: 8
        Fort real8 align: 8
shell$
-----

Finally, note that Open MPI doesn't have many of the F90 symbols that you might 
expect in libmpi_f90.so because most of our F90 support is "direct pass 
through" to the F77 subroutines.  Specifically, our F90 mpi module simply 
provides compile-time checking for expected signatures, but the subroutine call 
is actually automatically linked against the corresponding symbol in 
libmpi_f77.so.  Only a few subroutines -- i.e., the ones that have multiple 
different type signatures -- actually appear in libmpi_f90.so.

Meaning: MPI_TYPE_CREATE_SUBARRAY only has one type signature.  So it's normal 
/ expected that you don't see /mpi_type_subarray/i in libmpi_f90.so.


On Feb 15, 2011, at 1:18 PM, Petit, George (Cont, ARL/CISD) wrote:

> A user posted the following ticket to our site.  Should the referenced MPI 
> routine be included in the mpif90 library?  If not, why?  And is there a way 
> to get it added.
>
> -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
> I receive the following error when I try to compile my code with ifort with 
> the
> openmpi library:
>
> grid.f(38): error #6285: There is no matching specific subroutine for this 
> generic
> subroutine call. [MPI_TYPE_CREATE_SUBARRAY]
> call
> mpi_type_create_subarray(3,isizes,isubs,istarts,MPI_ORDER_FORTRAN,MPI_REAL8,DTghost(1),ierr)
> -------------^
>
> It looks like the 'mpi_type_create_subarray' routine is missing from the 
> openmpi
> library libmpi_f90.so. The routine is in libmpi_f77.so. Is it possible to add 
> it
> to the f90 library? The fortran 90 versions of mpi for sgi_mpt, xt-mpt, 
> ibm-mpi and
> intelmpi all include this routine. Thanks. -Rob
>
> George Petit
> Lockheed Martin
> ARL DSRC Customer Support Team Lead
> george.pe...@us.army.mil
> 410-278-9283
>
>
> _______________________________________________
> users mailing list
> us...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/users


--
Jeff Squyres
jsquy...@cisco.com
For corporate legal information go to:
http://www.cisco.com/web/about/doing_business/legal/cri/


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


<<winmail.dat>>

Reply via email to