
This commit adds a new configure option: --enable-mpi1-compat. Without this option we will no longer provide APIs, typedefs, and defines that were removed from the standard in MPI-3.0. This option will exist for one major release (Open MPI v4.x.x) and then the option and associated code will be removed in Open MPI v5.x.x. Open MPI has already internally prepared for this change. Please prepare your codes accordingly. Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
8142 строки
219 KiB
Fortran
8142 строки
219 KiB
Fortran
! -*- fortran -*-
|
|
!
|
|
! Copyright (c) 2006-2018 Cisco Systems, Inc. All rights reserved.
|
|
! Copyright (c) 2007 Los Alamos National Security, LLC. All rights
|
|
! reserved.
|
|
! Copyright (c) 2012 The University of Tennessee and The University
|
|
! of Tennessee Research Foundation. All rights
|
|
! reserved.
|
|
! Copyright (c) 2012 Inria. All rights reserved.
|
|
! Copyright (c) 2013-2015 Los Alamos National Security, LLC. All rights
|
|
! reserved.
|
|
! Copyright (c) 2015-2018 Research Organization for Information Science
|
|
! and Technology (RIST). All rights reserved.
|
|
! $COPYRIGHT$
|
|
!
|
|
! Additional copyrights may follow
|
|
!
|
|
! $HEADER$
|
|
|
|
|
|
interface MPI_Abort
|
|
|
|
subroutine MPI_Abort(comm, errorcode, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: errorcode
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Abort
|
|
|
|
end interface
|
|
|
|
interface PMPI_Abort
|
|
|
|
subroutine PMPI_Abort(comm, errorcode, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: errorcode
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Abort
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Accumulate
|
|
|
|
subroutine MPI_Accumulate(origin_addr, origin_count, origin_datatype, target_rank, target_disp, &
|
|
target_count, target_datatype, op, win, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ origin_addr
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: origin_addr
|
|
integer, intent(in) :: origin_count
|
|
integer, intent(in) :: origin_datatype
|
|
integer, intent(in) :: target_rank
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: target_disp
|
|
integer, intent(in) :: target_count
|
|
integer, intent(in) :: target_datatype
|
|
integer, intent(in) :: op
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Accumulate
|
|
|
|
end interface
|
|
|
|
interface PMPI_Accumulate
|
|
|
|
subroutine PMPI_Accumulate(origin_addr, origin_count, origin_datatype, target_rank, target_disp, &
|
|
target_count, target_datatype, op, win, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ origin_addr
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: origin_addr
|
|
integer, intent(in) :: origin_count
|
|
integer, intent(in) :: origin_datatype
|
|
integer, intent(in) :: target_rank
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: target_disp
|
|
integer, intent(in) :: target_count
|
|
integer, intent(in) :: target_datatype
|
|
integer, intent(in) :: op
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Accumulate
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Add_error_class
|
|
|
|
subroutine MPI_Add_error_class(errorclass, ierror)
|
|
integer, intent(out) :: errorclass
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Add_error_class
|
|
|
|
end interface
|
|
|
|
interface PMPI_Add_error_class
|
|
|
|
subroutine PMPI_Add_error_class(errorclass, ierror)
|
|
integer, intent(out) :: errorclass
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Add_error_class
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Add_error_code
|
|
|
|
subroutine MPI_Add_error_code(errorclass, errorcode, ierror)
|
|
integer, intent(in) :: errorclass
|
|
integer, intent(out) :: errorcode
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Add_error_code
|
|
|
|
end interface
|
|
|
|
interface PMPI_Add_error_code
|
|
|
|
subroutine PMPI_Add_error_code(errorclass, errorcode, ierror)
|
|
integer, intent(in) :: errorclass
|
|
integer, intent(out) :: errorcode
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Add_error_code
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Add_error_string
|
|
|
|
subroutine MPI_Add_error_string(errorcode, string, ierror)
|
|
integer, intent(in) :: errorcode
|
|
character(len=*), intent(in) :: string
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Add_error_string
|
|
|
|
end interface
|
|
|
|
interface PMPI_Add_error_string
|
|
|
|
subroutine PMPI_Add_error_string(errorcode, string, ierror)
|
|
integer, intent(in) :: errorcode
|
|
character(len=*), intent(in) :: string
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Add_error_string
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Aint_add
|
|
|
|
function MPI_Aint_add(base, diff)
|
|
include 'mpif-config.h'
|
|
integer(kind=MPI_ADDRESS_KIND) :: base
|
|
integer(kind=MPI_ADDRESS_KIND) :: diff
|
|
integer(kind=MPI_ADDRESS_KIND) MPI_Aint_add
|
|
end function MPI_Aint_add
|
|
|
|
end interface
|
|
|
|
interface PMPI_Aint_add
|
|
|
|
function PMPI_Aint_add(base, diff)
|
|
include 'mpif-config.h'
|
|
integer(kind=MPI_ADDRESS_KIND) :: base
|
|
integer(kind=MPI_ADDRESS_KIND) :: diff
|
|
integer(kind=MPI_ADDRESS_KIND) PMPI_Aint_add
|
|
end function PMPI_Aint_add
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Aint_diff
|
|
|
|
function MPI_Aint_diff(addr1, addr2)
|
|
include 'mpif-config.h'
|
|
integer(kind=MPI_ADDRESS_KIND) :: addr1
|
|
integer(kind=MPI_ADDRESS_KIND) :: addr2
|
|
integer(kind=MPI_ADDRESS_KIND) MPI_Aint_diff
|
|
end function MPI_Aint_diff
|
|
|
|
end interface
|
|
|
|
interface PMPI_Aint_diff
|
|
|
|
function PMPI_Aint_diff(addr1, addr2)
|
|
include 'mpif-config.h'
|
|
integer(kind=MPI_ADDRESS_KIND) :: addr1
|
|
integer(kind=MPI_ADDRESS_KIND) :: addr2
|
|
integer(kind=MPI_ADDRESS_KIND) PMPI_Aint_diff
|
|
end function PMPI_Aint_diff
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Allgather
|
|
|
|
subroutine MPI_Allgather(sendbuf, sendcount, sendtype, recvbuf, recvcount, &
|
|
recvtype, comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: recvcount
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Allgather
|
|
|
|
end interface
|
|
|
|
interface PMPI_Allgather
|
|
|
|
subroutine PMPI_Allgather(sendbuf, sendcount, sendtype, recvbuf, recvcount, &
|
|
recvtype, comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: recvcount
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Allgather
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Allgatherv
|
|
|
|
subroutine MPI_Allgatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, &
|
|
displs, recvtype, comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, dimension(*), intent(in) :: recvcounts
|
|
integer, dimension(*), intent(in) :: displs
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Allgatherv
|
|
|
|
end interface
|
|
|
|
interface PMPI_Allgatherv
|
|
|
|
subroutine PMPI_Allgatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, &
|
|
displs, recvtype, comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, dimension(*), intent(in) :: recvcounts
|
|
integer, dimension(*), intent(in) :: displs
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Allgatherv
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Alloc_mem
|
|
|
|
subroutine MPI_Alloc_mem(size, info, baseptr, ierror)
|
|
include 'mpif-config.h'
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: size
|
|
integer, intent(in) :: info
|
|
integer(kind=MPI_ADDRESS_KIND), intent(out) :: baseptr
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Alloc_mem
|
|
|
|
subroutine MPI_Alloc_mem_cptr(size, info, baseptr, ierror)
|
|
use, intrinsic :: iso_c_binding, only : c_ptr
|
|
include 'mpif-config.h'
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: size
|
|
integer, intent(in) :: info
|
|
type(c_ptr), intent(out) :: baseptr
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Alloc_mem_cptr
|
|
|
|
end interface
|
|
|
|
interface PMPI_Alloc_mem
|
|
|
|
subroutine PMPI_Alloc_mem(size, info, baseptr, ierror)
|
|
include 'mpif-config.h'
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: size
|
|
integer, intent(in) :: info
|
|
integer(kind=MPI_ADDRESS_KIND), intent(out) :: baseptr
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Alloc_mem
|
|
|
|
subroutine PMPI_Alloc_mem_cptr(size, info, baseptr, ierror)
|
|
use, intrinsic :: iso_c_binding, only : c_ptr
|
|
include 'mpif-config.h'
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: size
|
|
integer, intent(in) :: info
|
|
type(c_ptr), intent(out) :: baseptr
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Alloc_mem_cptr
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Allreduce
|
|
|
|
subroutine MPI_Allreduce(sendbuf, recvbuf, count, datatype, op, &
|
|
comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: op
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Allreduce
|
|
|
|
end interface
|
|
|
|
interface PMPI_Allreduce
|
|
|
|
subroutine PMPI_Allreduce(sendbuf, recvbuf, count, datatype, op, &
|
|
comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: op
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Allreduce
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Alltoall
|
|
|
|
subroutine MPI_Alltoall(sendbuf, sendcount, sendtype, recvbuf, recvcount, &
|
|
recvtype, comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: recvcount
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Alltoall
|
|
|
|
end interface
|
|
|
|
interface PMPI_Alltoall
|
|
|
|
subroutine PMPI_Alltoall(sendbuf, sendcount, sendtype, recvbuf, recvcount, &
|
|
recvtype, comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: recvcount
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Alltoall
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Alltoallv
|
|
|
|
subroutine MPI_Alltoallv(sendbuf, sendcounts, sdispls, sendtype, recvbuf, &
|
|
recvcounts, rdispls, recvtype, comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, dimension(*), intent(in) :: sendcounts
|
|
integer, dimension(*), intent(in) :: sdispls
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, dimension(*), intent(in) :: recvcounts
|
|
integer, dimension(*), intent(in) :: rdispls
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Alltoallv
|
|
|
|
end interface
|
|
|
|
interface PMPI_Alltoallv
|
|
|
|
subroutine PMPI_Alltoallv(sendbuf, sendcounts, sdispls, sendtype, recvbuf, &
|
|
recvcounts, rdispls, recvtype, comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, dimension(*), intent(in) :: sendcounts
|
|
integer, dimension(*), intent(in) :: sdispls
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, dimension(*), intent(in) :: recvcounts
|
|
integer, dimension(*), intent(in) :: rdispls
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Alltoallv
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Alltoallw
|
|
|
|
subroutine MPI_Alltoallw(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, &
|
|
recvcounts, rdispls, recvtypes, comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, dimension(*), intent(in) :: sendcounts
|
|
integer, dimension(*), intent(in) :: sdispls
|
|
integer, dimension(*), intent(in) :: sendtypes
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, dimension(*), intent(in) :: recvcounts
|
|
integer, dimension(*), intent(in) :: rdispls
|
|
integer, dimension(*), intent(in) :: recvtypes
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Alltoallw
|
|
|
|
end interface
|
|
|
|
interface PMPI_Alltoallw
|
|
|
|
subroutine PMPI_Alltoallw(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, &
|
|
recvcounts, rdispls, recvtypes, comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, dimension(*), intent(in) :: sendcounts
|
|
integer, dimension(*), intent(in) :: sdispls
|
|
integer, dimension(*), intent(in) :: sendtypes
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, dimension(*), intent(in) :: recvcounts
|
|
integer, dimension(*), intent(in) :: rdispls
|
|
integer, dimension(*), intent(in) :: recvtypes
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Alltoallw
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Barrier
|
|
|
|
subroutine MPI_Barrier(comm, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Barrier
|
|
|
|
end interface
|
|
|
|
interface PMPI_Barrier
|
|
|
|
subroutine PMPI_Barrier(comm, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Barrier
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Bcast
|
|
|
|
subroutine MPI_Bcast(buffer, count, datatype, root, comm&
|
|
, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buffer
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: buffer
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: root
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Bcast
|
|
|
|
end interface
|
|
|
|
interface PMPI_Bcast
|
|
|
|
subroutine PMPI_Bcast(buffer, count, datatype, root, comm&
|
|
, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buffer
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: buffer
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: root
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Bcast
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Bsend
|
|
|
|
subroutine MPI_Bsend(buf, count, datatype, dest, tag, &
|
|
comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: buf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: dest
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Bsend
|
|
|
|
end interface
|
|
|
|
interface PMPI_Bsend
|
|
|
|
subroutine PMPI_Bsend(buf, count, datatype, dest, tag, &
|
|
comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: buf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: dest
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Bsend
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Bsend_init
|
|
|
|
subroutine MPI_Bsend_init(buf, count, datatype, dest, tag, &
|
|
comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: buf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: dest
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Bsend_init
|
|
|
|
end interface
|
|
|
|
interface PMPI_Bsend_init
|
|
|
|
subroutine PMPI_Bsend_init(buf, count, datatype, dest, tag, &
|
|
comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: buf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: dest
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Bsend_init
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Buffer_attach
|
|
|
|
subroutine MPI_Buffer_attach(buffer, size, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buffer
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: buffer
|
|
integer, intent(in) :: size
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Buffer_attach
|
|
|
|
end interface
|
|
|
|
interface PMPI_Buffer_attach
|
|
|
|
subroutine PMPI_Buffer_attach(buffer, size, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buffer
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: buffer
|
|
integer, intent(in) :: size
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Buffer_attach
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Buffer_detach
|
|
|
|
subroutine MPI_Buffer_detach(buffer, size, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buffer
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: buffer
|
|
integer, intent(out) :: size
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Buffer_detach
|
|
|
|
end interface
|
|
|
|
interface PMPI_Buffer_detach
|
|
|
|
subroutine PMPI_Buffer_detach(buffer, size, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buffer
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: buffer
|
|
integer, intent(out) :: size
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Buffer_detach
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Cancel
|
|
|
|
subroutine MPI_Cancel(request, ierror)
|
|
integer, intent(in) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Cancel
|
|
|
|
end interface
|
|
|
|
interface PMPI_Cancel
|
|
|
|
subroutine PMPI_Cancel(request, ierror)
|
|
integer, intent(in) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Cancel
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Cart_coords
|
|
|
|
subroutine MPI_Cart_coords(comm, rank, maxdims, coords, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: rank
|
|
integer, intent(in) :: maxdims
|
|
integer, dimension(*), intent(out) :: coords
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Cart_coords
|
|
|
|
end interface
|
|
|
|
interface PMPI_Cart_coords
|
|
|
|
subroutine PMPI_Cart_coords(comm, rank, maxdims, coords, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: rank
|
|
integer, intent(in) :: maxdims
|
|
integer, dimension(*), intent(out) :: coords
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Cart_coords
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Cart_create
|
|
|
|
subroutine MPI_Cart_create(old_comm, ndims, dims, periods, reorder, &
|
|
comm_cart, ierror)
|
|
integer, intent(in) :: old_comm
|
|
integer, intent(in) :: ndims
|
|
integer, dimension(*), intent(in) :: dims
|
|
logical, dimension(*), intent(in) :: periods
|
|
logical, intent(in) :: reorder
|
|
integer, intent(out) :: comm_cart
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Cart_create
|
|
|
|
end interface
|
|
|
|
interface PMPI_Cart_create
|
|
|
|
subroutine PMPI_Cart_create(old_comm, ndims, dims, periods, reorder, &
|
|
comm_cart, ierror)
|
|
integer, intent(in) :: old_comm
|
|
integer, intent(in) :: ndims
|
|
integer, dimension(*), intent(in) :: dims
|
|
logical, dimension(*), intent(in) :: periods
|
|
logical, intent(in) :: reorder
|
|
integer, intent(out) :: comm_cart
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Cart_create
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Cart_get
|
|
|
|
subroutine MPI_Cart_get(comm, maxdims, dims, periods, coords&
|
|
, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: maxdims
|
|
integer, dimension(*), intent(out) :: dims
|
|
logical, dimension(*), intent(out) :: periods
|
|
integer, dimension(*), intent(out) :: coords
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Cart_get
|
|
|
|
end interface
|
|
|
|
interface PMPI_Cart_get
|
|
|
|
subroutine PMPI_Cart_get(comm, maxdims, dims, periods, coords&
|
|
, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: maxdims
|
|
integer, dimension(*), intent(out) :: dims
|
|
logical, dimension(*), intent(out) :: periods
|
|
integer, dimension(*), intent(out) :: coords
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Cart_get
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Cart_map
|
|
|
|
subroutine MPI_Cart_map(comm, ndims, dims, periods, newrank&
|
|
, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: ndims
|
|
integer, dimension(*), intent(in) :: dims
|
|
logical, dimension(*), intent(in) :: periods
|
|
integer, intent(out) :: newrank
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Cart_map
|
|
|
|
end interface
|
|
|
|
interface PMPI_Cart_map
|
|
|
|
subroutine PMPI_Cart_map(comm, ndims, dims, periods, newrank&
|
|
, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: ndims
|
|
integer, dimension(*), intent(in) :: dims
|
|
logical, dimension(*), intent(in) :: periods
|
|
integer, intent(out) :: newrank
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Cart_map
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Cart_rank
|
|
|
|
subroutine MPI_Cart_rank(comm, coords, rank, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, dimension(*), intent(in) :: coords
|
|
integer, intent(out) :: rank
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Cart_rank
|
|
|
|
end interface
|
|
|
|
interface PMPI_Cart_rank
|
|
|
|
subroutine PMPI_Cart_rank(comm, coords, rank, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, dimension(*), intent(in) :: coords
|
|
integer, intent(out) :: rank
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Cart_rank
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Cart_shift
|
|
|
|
subroutine MPI_Cart_shift(comm, direction, disp, rank_source, rank_dest&
|
|
, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: direction
|
|
integer, intent(in) :: disp
|
|
integer, intent(out) :: rank_source
|
|
integer, intent(out) :: rank_dest
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Cart_shift
|
|
|
|
end interface
|
|
|
|
interface PMPI_Cart_shift
|
|
|
|
subroutine PMPI_Cart_shift(comm, direction, disp, rank_source, rank_dest&
|
|
, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: direction
|
|
integer, intent(in) :: disp
|
|
integer, intent(out) :: rank_source
|
|
integer, intent(out) :: rank_dest
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Cart_shift
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Cart_sub
|
|
|
|
subroutine MPI_Cart_sub(comm, remain_dims, new_comm, ierror)
|
|
integer, intent(in) :: comm
|
|
logical, dimension(*), intent(in) :: remain_dims
|
|
integer, intent(out) :: new_comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Cart_sub
|
|
|
|
end interface
|
|
|
|
interface PMPI_Cart_sub
|
|
|
|
subroutine PMPI_Cart_sub(comm, remain_dims, new_comm, ierror)
|
|
integer, intent(in) :: comm
|
|
logical, dimension(*), intent(in) :: remain_dims
|
|
integer, intent(out) :: new_comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Cart_sub
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Cartdim_get
|
|
|
|
subroutine MPI_Cartdim_get(comm, ndims, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ndims
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Cartdim_get
|
|
|
|
end interface
|
|
|
|
interface PMPI_Cartdim_get
|
|
|
|
subroutine PMPI_Cartdim_get(comm, ndims, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ndims
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Cartdim_get
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Close_port
|
|
|
|
subroutine MPI_Close_port(port_name, ierror)
|
|
character(len=*), intent(in) :: port_name
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Close_port
|
|
|
|
end interface
|
|
|
|
interface PMPI_Close_port
|
|
|
|
subroutine PMPI_Close_port(port_name, ierror)
|
|
character(len=*), intent(in) :: port_name
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Close_port
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Comm_accept
|
|
|
|
subroutine MPI_Comm_accept(port_name, info, root, comm, newcomm&
|
|
, ierror)
|
|
character(len=*), intent(in) :: port_name
|
|
integer, intent(in) :: info
|
|
integer, intent(in) :: root
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: newcomm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Comm_accept
|
|
|
|
end interface
|
|
|
|
interface PMPI_Comm_accept
|
|
|
|
subroutine PMPI_Comm_accept(port_name, info, root, comm, newcomm&
|
|
, ierror)
|
|
character(len=*), intent(in) :: port_name
|
|
integer, intent(in) :: info
|
|
integer, intent(in) :: root
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: newcomm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Comm_accept
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Comm_call_errhandler
|
|
|
|
subroutine MPI_Comm_call_errhandler(comm, errorcode, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: errorcode
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Comm_call_errhandler
|
|
|
|
end interface
|
|
|
|
interface PMPI_Comm_call_errhandler
|
|
|
|
subroutine PMPI_Comm_call_errhandler(comm, errorcode, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: errorcode
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Comm_call_errhandler
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Comm_compare
|
|
|
|
subroutine MPI_Comm_compare(comm1, comm2, result, ierror)
|
|
integer, intent(in) :: comm1
|
|
integer, intent(in) :: comm2
|
|
integer, intent(out) :: result
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Comm_compare
|
|
|
|
end interface
|
|
|
|
interface PMPI_Comm_compare
|
|
|
|
subroutine PMPI_Comm_compare(comm1, comm2, result, ierror)
|
|
integer, intent(in) :: comm1
|
|
integer, intent(in) :: comm2
|
|
integer, intent(out) :: result
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Comm_compare
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Comm_connect
|
|
|
|
subroutine MPI_Comm_connect(port_name, info, root, comm, newcomm&
|
|
, ierror)
|
|
character(len=*), intent(in) :: port_name
|
|
integer, intent(in) :: info
|
|
integer, intent(in) :: root
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: newcomm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Comm_connect
|
|
|
|
end interface
|
|
|
|
interface PMPI_Comm_connect
|
|
|
|
subroutine PMPI_Comm_connect(port_name, info, root, comm, newcomm&
|
|
, ierror)
|
|
character(len=*), intent(in) :: port_name
|
|
integer, intent(in) :: info
|
|
integer, intent(in) :: root
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: newcomm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Comm_connect
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Comm_create
|
|
|
|
subroutine MPI_Comm_create(comm, group, newcomm, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: group
|
|
integer, intent(out) :: newcomm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Comm_create
|
|
|
|
end interface
|
|
|
|
interface PMPI_Comm_create
|
|
|
|
subroutine PMPI_Comm_create(comm, group, newcomm, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: group
|
|
integer, intent(out) :: newcomm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Comm_create
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Comm_create_errhandler
|
|
|
|
subroutine MPI_Comm_create_errhandler(function, errhandler, ierror)
|
|
external :: function
|
|
integer, intent(out) :: errhandler
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Comm_create_errhandler
|
|
|
|
end interface
|
|
|
|
interface PMPI_Comm_create_errhandler
|
|
|
|
subroutine PMPI_Comm_create_errhandler(function, errhandler, ierror)
|
|
external :: function
|
|
integer, intent(out) :: errhandler
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Comm_create_errhandler
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Comm_create_group
|
|
|
|
subroutine MPI_Comm_create_group(comm, group, tag, newcomm, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: group
|
|
integer, intent(in) :: tag
|
|
integer, intent(out) :: newcomm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Comm_create_group
|
|
|
|
end interface
|
|
|
|
interface PMPI_Comm_create_group
|
|
|
|
subroutine PMPI_Comm_create_group(comm, group, tag, newcomm, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: group
|
|
integer, intent(in) :: tag
|
|
integer, intent(out) :: newcomm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Comm_create_group
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Comm_create_keyval
|
|
|
|
subroutine MPI_Comm_create_keyval(comm_copy_attr_fn, comm_delete_attr_fn, comm_keyval, extra_state, ierror)
|
|
include 'mpif-config.h'
|
|
external :: comm_copy_attr_fn
|
|
external :: comm_delete_attr_fn
|
|
integer, intent(out) :: comm_keyval
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: extra_state
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Comm_create_keyval
|
|
|
|
end interface
|
|
|
|
interface PMPI_Comm_create_keyval
|
|
|
|
subroutine PMPI_Comm_create_keyval(comm_copy_attr_fn, comm_delete_attr_fn, comm_keyval, extra_state, ierror)
|
|
include 'mpif-config.h'
|
|
external :: comm_copy_attr_fn
|
|
external :: comm_delete_attr_fn
|
|
integer, intent(out) :: comm_keyval
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: extra_state
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Comm_create_keyval
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Comm_delete_attr
|
|
|
|
subroutine MPI_Comm_delete_attr(comm, comm_keyval, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: comm_keyval
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Comm_delete_attr
|
|
|
|
end interface
|
|
|
|
interface PMPI_Comm_delete_attr
|
|
|
|
subroutine PMPI_Comm_delete_attr(comm, comm_keyval, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: comm_keyval
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Comm_delete_attr
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Comm_disconnect
|
|
|
|
subroutine MPI_Comm_disconnect(comm, ierror)
|
|
integer, intent(inout) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Comm_disconnect
|
|
|
|
end interface
|
|
|
|
interface PMPI_Comm_disconnect
|
|
|
|
subroutine PMPI_Comm_disconnect(comm, ierror)
|
|
integer, intent(inout) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Comm_disconnect
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Comm_dup
|
|
|
|
subroutine MPI_Comm_dup(comm, newcomm, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: newcomm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Comm_dup
|
|
|
|
end interface
|
|
|
|
interface PMPI_Comm_dup
|
|
|
|
subroutine PMPI_Comm_dup(comm, newcomm, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: newcomm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Comm_dup
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Comm_dup_with_info
|
|
|
|
subroutine MPI_Comm_dup_with_info(comm, info, newcomm, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: info
|
|
integer, intent(out) :: newcomm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Comm_dup_with_info
|
|
|
|
end interface
|
|
|
|
interface PMPI_Comm_dup_with_info
|
|
|
|
subroutine PMPI_Comm_dup_with_info(comm, info, newcomm, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: info
|
|
integer, intent(out) :: newcomm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Comm_dup_with_info
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Comm_free
|
|
|
|
subroutine MPI_Comm_free(comm, ierror)
|
|
integer, intent(inout) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Comm_free
|
|
|
|
end interface
|
|
|
|
interface PMPI_Comm_free
|
|
|
|
subroutine PMPI_Comm_free(comm, ierror)
|
|
integer, intent(inout) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Comm_free
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Comm_free_keyval
|
|
|
|
subroutine MPI_Comm_free_keyval(comm_keyval, ierror)
|
|
integer, intent(inout) :: comm_keyval
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Comm_free_keyval
|
|
|
|
end interface
|
|
|
|
interface PMPI_Comm_free_keyval
|
|
|
|
subroutine PMPI_Comm_free_keyval(comm_keyval, ierror)
|
|
integer, intent(inout) :: comm_keyval
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Comm_free_keyval
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Comm_get_attr
|
|
|
|
subroutine MPI_Comm_get_attr(comm, comm_keyval, attribute_val, flag, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: comm_keyval
|
|
integer(kind=MPI_ADDRESS_KIND), intent(out) :: attribute_val
|
|
logical, intent(out) :: flag
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Comm_get_attr
|
|
|
|
end interface
|
|
|
|
interface PMPI_Comm_get_attr
|
|
|
|
subroutine PMPI_Comm_get_attr(comm, comm_keyval, attribute_val, flag, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: comm_keyval
|
|
integer(kind=MPI_ADDRESS_KIND), intent(out) :: attribute_val
|
|
logical, intent(out) :: flag
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Comm_get_attr
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Comm_get_errhandler
|
|
|
|
subroutine MPI_Comm_get_errhandler(comm, erhandler, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: erhandler
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Comm_get_errhandler
|
|
|
|
end interface
|
|
|
|
interface PMPI_Comm_get_errhandler
|
|
|
|
subroutine PMPI_Comm_get_errhandler(comm, erhandler, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: erhandler
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Comm_get_errhandler
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Comm_get_info
|
|
|
|
subroutine MPI_Comm_get_info(comm, info_used, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: info_used
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Comm_get_info
|
|
|
|
end interface
|
|
|
|
interface PMPI_Comm_get_info
|
|
|
|
subroutine PMPI_Comm_get_info(comm, info_used, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: info_used
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Comm_get_info
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Comm_get_name
|
|
|
|
subroutine MPI_Comm_get_name(comm, comm_name, resultlen, ierror)
|
|
integer, intent(in) :: comm
|
|
character(len=*), intent(out) :: comm_name
|
|
integer, intent(out) :: resultlen
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Comm_get_name
|
|
|
|
end interface
|
|
|
|
interface PMPI_Comm_get_name
|
|
|
|
subroutine PMPI_Comm_get_name(comm, comm_name, resultlen, ierror)
|
|
integer, intent(in) :: comm
|
|
character(len=*), intent(out) :: comm_name
|
|
integer, intent(out) :: resultlen
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Comm_get_name
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Comm_get_parent
|
|
|
|
subroutine MPI_Comm_get_parent(parent, ierror)
|
|
integer, intent(out) :: parent
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Comm_get_parent
|
|
|
|
end interface
|
|
|
|
interface PMPI_Comm_get_parent
|
|
|
|
subroutine PMPI_Comm_get_parent(parent, ierror)
|
|
integer, intent(out) :: parent
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Comm_get_parent
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Comm_group
|
|
|
|
subroutine MPI_Comm_group(comm, group, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: group
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Comm_group
|
|
|
|
end interface
|
|
|
|
interface PMPI_Comm_group
|
|
|
|
subroutine PMPI_Comm_group(comm, group, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: group
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Comm_group
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Comm_idup
|
|
|
|
subroutine MPI_Comm_idup(comm, newcomm, request, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: newcomm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Comm_idup
|
|
|
|
end interface
|
|
|
|
interface PMPI_Comm_idup
|
|
|
|
subroutine PMPI_Comm_idup(comm, newcomm, request, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: newcomm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Comm_idup
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Comm_join
|
|
|
|
subroutine MPI_Comm_join(fd, intercomm, ierror)
|
|
integer, intent(in) :: fd
|
|
integer, intent(out) :: intercomm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Comm_join
|
|
|
|
end interface
|
|
|
|
interface PMPI_Comm_join
|
|
|
|
subroutine PMPI_Comm_join(fd, intercomm, ierror)
|
|
integer, intent(in) :: fd
|
|
integer, intent(out) :: intercomm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Comm_join
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Comm_rank
|
|
|
|
subroutine MPI_Comm_rank(comm, rank, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: rank
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Comm_rank
|
|
|
|
end interface
|
|
|
|
interface PMPI_Comm_rank
|
|
|
|
subroutine PMPI_Comm_rank(comm, rank, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: rank
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Comm_rank
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Comm_remote_group
|
|
|
|
subroutine MPI_Comm_remote_group(comm, group, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: group
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Comm_remote_group
|
|
|
|
end interface
|
|
|
|
interface PMPI_Comm_remote_group
|
|
|
|
subroutine PMPI_Comm_remote_group(comm, group, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: group
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Comm_remote_group
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Comm_remote_size
|
|
|
|
subroutine MPI_Comm_remote_size(comm, size, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: size
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Comm_remote_size
|
|
|
|
end interface
|
|
|
|
interface PMPI_Comm_remote_size
|
|
|
|
subroutine PMPI_Comm_remote_size(comm, size, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: size
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Comm_remote_size
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Comm_set_attr
|
|
|
|
subroutine MPI_Comm_set_attr(comm, comm_keyval, attribute_val, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: comm_keyval
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: attribute_val
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Comm_set_attr
|
|
|
|
end interface
|
|
|
|
interface PMPI_Comm_set_attr
|
|
|
|
subroutine PMPI_Comm_set_attr(comm, comm_keyval, attribute_val, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: comm_keyval
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: attribute_val
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Comm_set_attr
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Comm_set_errhandler
|
|
|
|
subroutine MPI_Comm_set_errhandler(comm, errhandler, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: errhandler
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Comm_set_errhandler
|
|
|
|
end interface
|
|
|
|
interface PMPI_Comm_set_errhandler
|
|
|
|
subroutine PMPI_Comm_set_errhandler(comm, errhandler, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: errhandler
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Comm_set_errhandler
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Comm_set_info
|
|
|
|
subroutine MPI_Comm_set_info(comm, info, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: info
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Comm_set_info
|
|
|
|
end interface
|
|
|
|
interface PMPI_Comm_set_info
|
|
|
|
subroutine PMPI_Comm_set_info(comm, info, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: info
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Comm_set_info
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Comm_set_name
|
|
|
|
subroutine MPI_Comm_set_name(comm, comm_name, ierror)
|
|
integer, intent(in) :: comm
|
|
character(len=*), intent(in) :: comm_name
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Comm_set_name
|
|
|
|
end interface
|
|
|
|
interface PMPI_Comm_set_name
|
|
|
|
subroutine PMPI_Comm_set_name(comm, comm_name, ierror)
|
|
integer, intent(in) :: comm
|
|
character(len=*), intent(in) :: comm_name
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Comm_set_name
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Comm_size
|
|
|
|
subroutine MPI_Comm_size(comm, size, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: size
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Comm_size
|
|
|
|
end interface
|
|
|
|
interface PMPI_Comm_size
|
|
|
|
subroutine PMPI_Comm_size(comm, size, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: size
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Comm_size
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Comm_spawn
|
|
|
|
subroutine MPI_Comm_spawn(command, argv, maxprocs, info, root, &
|
|
comm, intercomm, array_of_errcodes, ierror)
|
|
character(len=*), intent(in) :: command
|
|
character(len=*), dimension(*), intent(in) :: argv
|
|
integer, intent(in) :: maxprocs
|
|
integer, intent(in) :: info
|
|
integer, intent(in) :: root
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: intercomm
|
|
integer, dimension(*), intent(out) :: array_of_errcodes
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Comm_spawn
|
|
|
|
end interface
|
|
|
|
interface PMPI_Comm_spawn
|
|
|
|
subroutine PMPI_Comm_spawn(command, argv, maxprocs, info, root, &
|
|
comm, intercomm, array_of_errcodes, ierror)
|
|
character(len=*), intent(in) :: command
|
|
character(len=*), dimension(*), intent(in) :: argv
|
|
integer, intent(in) :: maxprocs
|
|
integer, intent(in) :: info
|
|
integer, intent(in) :: root
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: intercomm
|
|
integer, dimension(*), intent(out) :: array_of_errcodes
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Comm_spawn
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Comm_spawn_multiple
|
|
|
|
subroutine MPI_Comm_spawn_multiple(count, array_of_commands, array_of_argv, array_of_maxprocs, array_of_info, &
|
|
root, comm, intercomm, array_of_errcodes, ierror)
|
|
integer, intent(in) :: count
|
|
character(len=*), dimension(*), intent(in) :: array_of_commands
|
|
character(len=*), dimension(count, *), intent(in) :: array_of_argv
|
|
integer, dimension(*), intent(in) :: array_of_maxprocs
|
|
integer, dimension(*), intent(in) :: array_of_info
|
|
integer, intent(in) :: root
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: intercomm
|
|
integer, dimension(*), intent(out) :: array_of_errcodes
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Comm_spawn_multiple
|
|
|
|
end interface
|
|
|
|
interface PMPI_Comm_spawn_multiple
|
|
|
|
subroutine PMPI_Comm_spawn_multiple(count, array_of_commands, array_of_argv, array_of_maxprocs, array_of_info, &
|
|
root, comm, intercomm, array_of_errcodes, ierror)
|
|
integer, intent(in) :: count
|
|
character(len=*), dimension(*), intent(in) :: array_of_commands
|
|
character(len=*), dimension(count, *), intent(in) :: array_of_argv
|
|
integer, dimension(*), intent(in) :: array_of_maxprocs
|
|
integer, dimension(*), intent(in) :: array_of_info
|
|
integer, intent(in) :: root
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: intercomm
|
|
integer, dimension(*), intent(out) :: array_of_errcodes
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Comm_spawn_multiple
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Comm_split
|
|
|
|
subroutine MPI_Comm_split(comm, color, key, newcomm, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: color
|
|
integer, intent(in) :: key
|
|
integer, intent(out) :: newcomm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Comm_split
|
|
|
|
end interface
|
|
|
|
interface PMPI_Comm_split
|
|
|
|
subroutine PMPI_Comm_split(comm, color, key, newcomm, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: color
|
|
integer, intent(in) :: key
|
|
integer, intent(out) :: newcomm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Comm_split
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Comm_split_type
|
|
|
|
subroutine MPI_Comm_split_type(comm, split_type, key, info, newcomm, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: split_type
|
|
integer, intent(in) :: key
|
|
integer, intent(in) :: info
|
|
integer, intent(out) :: newcomm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Comm_split_type
|
|
|
|
end interface
|
|
|
|
interface PMPI_Comm_split_type
|
|
|
|
subroutine PMPI_Comm_split_type(comm, split_type, key, info, newcomm, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: split_type
|
|
integer, intent(in) :: key
|
|
integer, intent(in) :: info
|
|
integer, intent(out) :: newcomm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Comm_split_type
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Comm_test_inter
|
|
|
|
subroutine MPI_Comm_test_inter(comm, flag, ierror)
|
|
integer, intent(in) :: comm
|
|
logical, intent(out) :: flag
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Comm_test_inter
|
|
|
|
end interface
|
|
|
|
interface PMPI_Comm_test_inter
|
|
|
|
subroutine PMPI_Comm_test_inter(comm, flag, ierror)
|
|
integer, intent(in) :: comm
|
|
logical, intent(out) :: flag
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Comm_test_inter
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Compare_and_swap
|
|
|
|
subroutine MPI_Compare_and_swap(origin_addr, compare_addr, result_addr, &
|
|
datatype, target_rank, target_disp, win, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ origin_addr, compare_addr
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: origin_addr, compare_addr
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ result_addr
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: result_addr
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: target_rank
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: target_disp
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Compare_and_swap
|
|
|
|
end interface
|
|
|
|
interface PMPI_Compare_and_swap
|
|
|
|
subroutine PMPI_Compare_and_swap(origin_addr, compare_addr, result_addr, &
|
|
datatype, target_rank, target_disp, win, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ origin_addr, compare_addr
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: origin_addr, compare_addr
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ result_addr
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: result_addr
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: target_rank
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: target_disp
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Compare_and_swap
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Dims_create
|
|
|
|
subroutine MPI_Dims_create(nnodes, ndims, dims, ierror)
|
|
integer, intent(in) :: nnodes
|
|
integer, intent(in) :: ndims
|
|
integer, dimension(*), intent(inout) :: dims
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Dims_create
|
|
|
|
end interface
|
|
|
|
interface PMPI_Dims_create
|
|
|
|
subroutine PMPI_Dims_create(nnodes, ndims, dims, ierror)
|
|
integer, intent(in) :: nnodes
|
|
integer, intent(in) :: ndims
|
|
integer, dimension(*), intent(inout) :: dims
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Dims_create
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Dist_graph_create
|
|
|
|
subroutine MPI_Dist_graph_create(comm_old,n,sources,degrees,destinations,weights, &
|
|
info,reorder,comm_dist_graph,ierror)
|
|
implicit none
|
|
integer, intent(in) :: comm_old
|
|
integer, intent(in) :: n, sources(n), degrees(n), destinations(*), weights(*)
|
|
integer, intent(in) :: info
|
|
logical, intent(in) :: reorder
|
|
integer, intent(out) :: comm_dist_graph
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Dist_graph_create
|
|
|
|
end interface
|
|
|
|
interface PMPI_Dist_graph_create
|
|
|
|
subroutine PMPI_Dist_graph_create(comm_old,n,sources,degrees,destinations,weights, &
|
|
info,reorder,comm_dist_graph,ierror)
|
|
implicit none
|
|
integer, intent(in) :: comm_old
|
|
integer, intent(in) :: n, sources(n), degrees(n), destinations(*), weights(*)
|
|
integer, intent(in) :: info
|
|
logical, intent(in) :: reorder
|
|
integer, intent(out) :: comm_dist_graph
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Dist_graph_create
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Dist_graph_create_adjacent
|
|
|
|
subroutine MPI_Dist_graph_create_adjacent(comm_old,indegree,sources,sourceweights, &
|
|
outdegree,destinations,destweights,info,reorder, &
|
|
comm_dist_graph,ierror)
|
|
implicit none
|
|
integer, intent(in) :: comm_old
|
|
integer, intent(in) :: indegree, sources(indegree), outdegree, destinations(outdegree)
|
|
integer, intent(in) :: sourceweights(indegree), destweights(outdegree)
|
|
integer, intent(in) :: info
|
|
logical, intent(in) :: reorder
|
|
integer, intent(out) :: comm_dist_graph
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Dist_graph_create_adjacent
|
|
|
|
end interface
|
|
|
|
interface PMPI_Dist_graph_create_adjacent
|
|
|
|
subroutine PMPI_Dist_graph_create_adjacent(comm_old,indegree,sources,sourceweights, &
|
|
outdegree,destinations,destweights,info,reorder, &
|
|
comm_dist_graph,ierror)
|
|
implicit none
|
|
integer, intent(in) :: comm_old
|
|
integer, intent(in) :: indegree, sources(indegree), outdegree, destinations(outdegree)
|
|
integer, intent(in) :: sourceweights(indegree), destweights(outdegree)
|
|
integer, intent(in) :: info
|
|
logical, intent(in) :: reorder
|
|
integer, intent(out) :: comm_dist_graph
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Dist_graph_create_adjacent
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Dist_graph_neighbors
|
|
|
|
subroutine MPI_Dist_graph_neighbors(comm,maxindegree,sources,sourceweights, &
|
|
maxoutdegree,destinations,destweights,ierror)
|
|
implicit none
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: maxindegree, maxoutdegree
|
|
integer, intent(out) :: sources(maxindegree), destinations(maxoutdegree)
|
|
integer, intent(out) :: sourceweights(maxindegree), destweights(maxoutdegree)
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Dist_graph_neighbors
|
|
|
|
end interface
|
|
|
|
interface PMPI_Dist_graph_neighbors
|
|
|
|
subroutine PMPI_Dist_graph_neighbors(comm,maxindegree,sources,sourceweights, &
|
|
maxoutdegree,destinations,destweights,ierror)
|
|
implicit none
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: maxindegree, maxoutdegree
|
|
integer, intent(out) :: sources(maxindegree), destinations(maxoutdegree)
|
|
integer, intent(out) :: sourceweights(maxindegree), destweights(maxoutdegree)
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Dist_graph_neighbors
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Dist_graph_neighbors_count
|
|
|
|
subroutine MPI_Dist_graph_neighbors_count(comm,indegree,outdegree,weighted,ierror)
|
|
implicit none
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: indegree, outdegree
|
|
logical, intent(out) :: weighted
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Dist_graph_neighbors_count
|
|
|
|
end interface
|
|
|
|
interface PMPI_Dist_graph_neighbors_count
|
|
|
|
subroutine PMPI_Dist_graph_neighbors_count(comm,indegree,outdegree,weighted,ierror)
|
|
implicit none
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: indegree, outdegree
|
|
logical, intent(out) :: weighted
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Dist_graph_neighbors_count
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Errhandler_free
|
|
|
|
subroutine MPI_Errhandler_free(errhandler, ierror)
|
|
integer, intent(inout) :: errhandler
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Errhandler_free
|
|
|
|
end interface
|
|
|
|
interface PMPI_Errhandler_free
|
|
|
|
subroutine PMPI_Errhandler_free(errhandler, ierror)
|
|
integer, intent(inout) :: errhandler
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Errhandler_free
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Error_class
|
|
|
|
subroutine MPI_Error_class(errorcode, errorclass, ierror)
|
|
integer, intent(in) :: errorcode
|
|
integer, intent(out) :: errorclass
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Error_class
|
|
|
|
end interface
|
|
|
|
interface PMPI_Error_class
|
|
|
|
subroutine PMPI_Error_class(errorcode, errorclass, ierror)
|
|
integer, intent(in) :: errorcode
|
|
integer, intent(out) :: errorclass
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Error_class
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Error_string
|
|
|
|
subroutine MPI_Error_string(errorcode, string, resultlen, ierror)
|
|
integer, intent(in) :: errorcode
|
|
character(len=*), intent(out) :: string
|
|
integer, intent(out) :: resultlen
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Error_string
|
|
|
|
end interface
|
|
|
|
interface PMPI_Error_string
|
|
|
|
subroutine PMPI_Error_string(errorcode, string, resultlen, ierror)
|
|
integer, intent(in) :: errorcode
|
|
character(len=*), intent(out) :: string
|
|
integer, intent(out) :: resultlen
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Error_string
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Exscan
|
|
|
|
subroutine MPI_Exscan(sendbuf, recvbuf, count, datatype, op, &
|
|
comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: op
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Exscan
|
|
|
|
end interface
|
|
|
|
interface PMPI_Exscan
|
|
|
|
subroutine PMPI_Exscan(sendbuf, recvbuf, count, datatype, op, &
|
|
comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: op
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Exscan
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_F_sync_reg
|
|
|
|
subroutine MPI_F_sync_reg(buf)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(inout) :: buf
|
|
end subroutine MPI_F_sync_reg
|
|
|
|
end interface
|
|
|
|
interface PMPI_F_sync_reg
|
|
|
|
subroutine PMPI_F_sync_reg(buf)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(inout) :: buf
|
|
end subroutine PMPI_F_sync_reg
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Fetch_and_op
|
|
|
|
subroutine MPI_Fetch_and_op(origin_addr, result_addr, datatype, target_rank,&
|
|
target_disp, op, win, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ origin_addr
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: origin_addr
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ result_addr
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: result_addr
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: target_rank
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: target_disp
|
|
integer, intent(in) :: op
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Fetch_and_op
|
|
|
|
end interface
|
|
|
|
interface PMPI_Fetch_and_op
|
|
|
|
subroutine PMPI_Fetch_and_op(origin_addr, result_addr, datatype, target_rank,&
|
|
target_disp, op, win, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ origin_addr
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: origin_addr
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ result_addr
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: result_addr
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: target_rank
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: target_disp
|
|
integer, intent(in) :: op
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Fetch_and_op
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Finalize
|
|
|
|
subroutine MPI_Finalize(ierror)
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Finalize
|
|
|
|
end interface
|
|
|
|
interface PMPI_Finalize
|
|
|
|
subroutine PMPI_Finalize(ierror)
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Finalize
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Finalized
|
|
|
|
subroutine MPI_Finalized(flag, ierror)
|
|
logical, intent(out) :: flag
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Finalized
|
|
|
|
end interface
|
|
|
|
interface PMPI_Finalized
|
|
|
|
subroutine PMPI_Finalized(flag, ierror)
|
|
logical, intent(out) :: flag
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Finalized
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Free_mem
|
|
|
|
subroutine MPI_Free_mem(base, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ base
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: base
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Free_mem
|
|
|
|
end interface
|
|
|
|
interface PMPI_Free_mem
|
|
|
|
subroutine PMPI_Free_mem(base, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ base
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: base
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Free_mem
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Gather
|
|
|
|
subroutine MPI_Gather(sendbuf, sendcount, sendtype, recvbuf, recvcount, &
|
|
recvtype, root, comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: recvcount
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: root
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Gather
|
|
|
|
end interface
|
|
|
|
interface PMPI_Gather
|
|
|
|
subroutine PMPI_Gather(sendbuf, sendcount, sendtype, recvbuf, recvcount, &
|
|
recvtype, root, comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: recvcount
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: root
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Gather
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Gatherv
|
|
|
|
subroutine MPI_Gatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, &
|
|
displs, recvtype, root, comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, dimension(*), intent(in) :: recvcounts
|
|
integer, dimension(*), intent(in) :: displs
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: root
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Gatherv
|
|
|
|
end interface
|
|
|
|
interface PMPI_Gatherv
|
|
|
|
subroutine PMPI_Gatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, &
|
|
displs, recvtype, root, comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, dimension(*), intent(in) :: recvcounts
|
|
integer, dimension(*), intent(in) :: displs
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: root
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Gatherv
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Get
|
|
|
|
subroutine MPI_Get(origin_addr, origin_count, origin_datatype, target_rank, target_disp, &
|
|
target_count, target_datatype, win, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ origin_addr
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: origin_addr
|
|
integer, intent(in) :: origin_count
|
|
integer, intent(in) :: origin_datatype
|
|
integer, intent(in) :: target_rank
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: target_disp
|
|
integer, intent(in) :: target_count
|
|
integer, intent(in) :: target_datatype
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Get
|
|
|
|
end interface
|
|
|
|
interface PMPI_Get
|
|
|
|
subroutine PMPI_Get(origin_addr, origin_count, origin_datatype, target_rank, target_disp, &
|
|
target_count, target_datatype, win, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ origin_addr
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: origin_addr
|
|
integer, intent(in) :: origin_count
|
|
integer, intent(in) :: origin_datatype
|
|
integer, intent(in) :: target_rank
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: target_disp
|
|
integer, intent(in) :: target_count
|
|
integer, intent(in) :: target_datatype
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Get
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Get_accumulate
|
|
|
|
subroutine MPI_Get_accumulate(origin_addr, origin_count, origin_datatype,&
|
|
result_addr, result_count, result_datatype,&
|
|
target_rank, target_disp, target_count, &
|
|
target_datatype, op, win, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ origin_addr
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: origin_addr
|
|
integer, intent(in) :: origin_count
|
|
integer, intent(in) :: origin_datatype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ result_addr
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: result_addr
|
|
integer, intent(in) :: result_count
|
|
integer, intent(in) :: result_datatype
|
|
integer, intent(in) :: target_rank
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: target_disp
|
|
integer, intent(in) :: target_count
|
|
integer, intent(in) :: target_datatype
|
|
integer, intent(in) :: op
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Get_accumulate
|
|
|
|
end interface
|
|
|
|
interface PMPI_Get_accumulate
|
|
|
|
subroutine PMPI_Get_accumulate(origin_addr, origin_count, origin_datatype,&
|
|
result_addr, result_count, result_datatype,&
|
|
target_rank, target_disp, target_count, &
|
|
target_datatype, op, win, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ origin_addr
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: origin_addr
|
|
integer, intent(in) :: origin_count
|
|
integer, intent(in) :: origin_datatype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ result_addr
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: result_addr
|
|
integer, intent(in) :: result_count
|
|
integer, intent(in) :: result_datatype
|
|
integer, intent(in) :: target_rank
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: target_disp
|
|
integer, intent(in) :: target_count
|
|
integer, intent(in) :: target_datatype
|
|
integer, intent(in) :: op
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Get_accumulate
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Get_address
|
|
|
|
subroutine MPI_Get_address(location, address, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ location
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: location
|
|
integer(kind=MPI_ADDRESS_KIND), intent(out) :: address
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Get_address
|
|
|
|
end interface
|
|
|
|
interface PMPI_Get_address
|
|
|
|
subroutine PMPI_Get_address(location, address, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ location
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: location
|
|
integer(kind=MPI_ADDRESS_KIND), intent(out) :: address
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Get_address
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Get_count
|
|
|
|
subroutine MPI_Get_count(status, datatype, count, ierror)
|
|
include 'mpif-config.h'
|
|
integer, dimension(MPI_STATUS_SIZE), intent(in) :: status
|
|
integer, intent(in) :: datatype
|
|
integer, intent(out) :: count
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Get_count
|
|
|
|
end interface
|
|
|
|
interface PMPI_Get_count
|
|
|
|
subroutine PMPI_Get_count(status, datatype, count, ierror)
|
|
include 'mpif-config.h'
|
|
integer, dimension(MPI_STATUS_SIZE), intent(in) :: status
|
|
integer, intent(in) :: datatype
|
|
integer, intent(out) :: count
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Get_count
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Get_elements
|
|
|
|
subroutine MPI_Get_elements(status, datatype, count, ierror)
|
|
include 'mpif-config.h'
|
|
integer, dimension(MPI_STATUS_SIZE), intent(in) :: status
|
|
integer, intent(in) :: datatype
|
|
integer, intent(out) :: count
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Get_elements
|
|
|
|
end interface
|
|
|
|
interface PMPI_Get_elements
|
|
|
|
subroutine PMPI_Get_elements(status, datatype, count, ierror)
|
|
include 'mpif-config.h'
|
|
integer, dimension(MPI_STATUS_SIZE), intent(in) :: status
|
|
integer, intent(in) :: datatype
|
|
integer, intent(out) :: count
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Get_elements
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Get_elements_x
|
|
|
|
subroutine MPI_Get_elements_x(status, datatype, count, ierror)
|
|
include 'mpif-config.h'
|
|
integer, dimension(MPI_STATUS_SIZE), intent(in) :: status
|
|
integer, intent(in) :: datatype
|
|
integer(kind=MPI_COUNT_KIND), intent(out) :: count
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Get_elements_x
|
|
|
|
end interface
|
|
|
|
interface PMPI_Get_elements_x
|
|
|
|
subroutine PMPI_Get_elements_x(status, datatype, count, ierror)
|
|
include 'mpif-config.h'
|
|
integer, dimension(MPI_STATUS_SIZE), intent(in) :: status
|
|
integer, intent(in) :: datatype
|
|
integer(kind=MPI_COUNT_KIND), intent(out) :: count
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Get_elements_x
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Get_library_version
|
|
|
|
subroutine MPI_Get_library_version(version, resultlen, ierror)
|
|
character(len=*), intent(out) :: version
|
|
integer, intent(out) :: resultlen
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Get_library_version
|
|
|
|
end interface
|
|
|
|
interface PMPI_Get_library_version
|
|
|
|
subroutine PMPI_Get_library_version(version, resultlen, ierror)
|
|
character(len=*), intent(out) :: version
|
|
integer, intent(out) :: resultlen
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Get_library_version
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Get_processor_name
|
|
|
|
subroutine MPI_Get_processor_name(name, resultlen, ierror)
|
|
character(len=*), intent(out) :: name
|
|
integer, intent(out) :: resultlen
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Get_processor_name
|
|
|
|
end interface
|
|
|
|
interface PMPI_Get_processor_name
|
|
|
|
subroutine PMPI_Get_processor_name(name, resultlen, ierror)
|
|
character(len=*), intent(out) :: name
|
|
integer, intent(out) :: resultlen
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Get_processor_name
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Get_version
|
|
|
|
subroutine MPI_Get_version(version, subversion, ierror)
|
|
integer, intent(out) :: version
|
|
integer, intent(out) :: subversion
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Get_version
|
|
|
|
end interface
|
|
|
|
interface PMPI_Get_version
|
|
|
|
subroutine PMPI_Get_version(version, subversion, ierror)
|
|
integer, intent(out) :: version
|
|
integer, intent(out) :: subversion
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Get_version
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Graph_create
|
|
|
|
subroutine MPI_Graph_create(comm_old, nnodes, index, edges, reorder, &
|
|
comm_graph, ierror)
|
|
integer, intent(in) :: comm_old
|
|
integer, intent(in) :: nnodes
|
|
integer, dimension(*), intent(in) :: index
|
|
integer, dimension(*), intent(in) :: edges
|
|
logical, intent(in) :: reorder
|
|
integer, intent(out) :: comm_graph
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Graph_create
|
|
|
|
end interface
|
|
|
|
interface PMPI_Graph_create
|
|
|
|
subroutine PMPI_Graph_create(comm_old, nnodes, index, edges, reorder, &
|
|
comm_graph, ierror)
|
|
integer, intent(in) :: comm_old
|
|
integer, intent(in) :: nnodes
|
|
integer, dimension(*), intent(in) :: index
|
|
integer, dimension(*), intent(in) :: edges
|
|
logical, intent(in) :: reorder
|
|
integer, intent(out) :: comm_graph
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Graph_create
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Graph_get
|
|
|
|
subroutine MPI_Graph_get(comm, maxindex, maxedges, index, edges&
|
|
, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: maxindex
|
|
integer, intent(in) :: maxedges
|
|
integer, dimension(*), intent(out) :: index
|
|
integer, dimension(*), intent(out) :: edges
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Graph_get
|
|
|
|
end interface
|
|
|
|
interface PMPI_Graph_get
|
|
|
|
subroutine PMPI_Graph_get(comm, maxindex, maxedges, index, edges&
|
|
, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: maxindex
|
|
integer, intent(in) :: maxedges
|
|
integer, dimension(*), intent(out) :: index
|
|
integer, dimension(*), intent(out) :: edges
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Graph_get
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Graph_map
|
|
|
|
subroutine MPI_Graph_map(comm, nnodes, index, edges, newrank&
|
|
, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: nnodes
|
|
integer, dimension(*), intent(in) :: index
|
|
integer, dimension(*), intent(in) :: edges
|
|
integer, intent(out) :: newrank
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Graph_map
|
|
|
|
end interface
|
|
|
|
interface PMPI_Graph_map
|
|
|
|
subroutine PMPI_Graph_map(comm, nnodes, index, edges, newrank&
|
|
, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: nnodes
|
|
integer, dimension(*), intent(in) :: index
|
|
integer, dimension(*), intent(in) :: edges
|
|
integer, intent(out) :: newrank
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Graph_map
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Graph_neighbors
|
|
|
|
subroutine MPI_Graph_neighbors(comm, rank, maxneighbors, neighbors, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: rank
|
|
integer, intent(in) :: maxneighbors
|
|
integer, dimension(*), intent(out) :: neighbors
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Graph_neighbors
|
|
|
|
end interface
|
|
|
|
interface PMPI_Graph_neighbors
|
|
|
|
subroutine PMPI_Graph_neighbors(comm, rank, maxneighbors, neighbors, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: rank
|
|
integer, intent(in) :: maxneighbors
|
|
integer, dimension(*), intent(out) :: neighbors
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Graph_neighbors
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Graph_neighbors_count
|
|
|
|
subroutine MPI_Graph_neighbors_count(comm, rank, nneighbors, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: rank
|
|
integer, intent(out) :: nneighbors
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Graph_neighbors_count
|
|
|
|
end interface
|
|
|
|
interface PMPI_Graph_neighbors_count
|
|
|
|
subroutine PMPI_Graph_neighbors_count(comm, rank, nneighbors, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: rank
|
|
integer, intent(out) :: nneighbors
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Graph_neighbors_count
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Graphdims_get
|
|
|
|
subroutine MPI_Graphdims_get(comm, nnodes, nedges, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: nnodes
|
|
integer, intent(out) :: nedges
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Graphdims_get
|
|
|
|
end interface
|
|
|
|
interface PMPI_Graphdims_get
|
|
|
|
subroutine PMPI_Graphdims_get(comm, nnodes, nedges, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: nnodes
|
|
integer, intent(out) :: nedges
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Graphdims_get
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Grequest_complete
|
|
|
|
subroutine MPI_Grequest_complete(request, ierror)
|
|
integer, intent(in) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Grequest_complete
|
|
|
|
end interface
|
|
|
|
interface PMPI_Grequest_complete
|
|
|
|
subroutine PMPI_Grequest_complete(request, ierror)
|
|
integer, intent(in) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Grequest_complete
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Grequest_start
|
|
|
|
subroutine MPI_Grequest_start(query_fn, free_fn, cancel_fn, extra_state, request&
|
|
, ierror)
|
|
include 'mpif-config.h'
|
|
external :: query_fn
|
|
external :: free_fn
|
|
external :: cancel_fn
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: extra_state
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Grequest_start
|
|
|
|
end interface
|
|
|
|
interface PMPI_Grequest_start
|
|
|
|
subroutine PMPI_Grequest_start(query_fn, free_fn, cancel_fn, extra_state, request&
|
|
, ierror)
|
|
include 'mpif-config.h'
|
|
external :: query_fn
|
|
external :: free_fn
|
|
external :: cancel_fn
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: extra_state
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Grequest_start
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Group_compare
|
|
|
|
subroutine MPI_Group_compare(group1, group2, result, ierror)
|
|
integer, intent(in) :: group1
|
|
integer, intent(in) :: group2
|
|
integer, intent(out) :: result
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Group_compare
|
|
|
|
end interface
|
|
|
|
interface PMPI_Group_compare
|
|
|
|
subroutine PMPI_Group_compare(group1, group2, result, ierror)
|
|
integer, intent(in) :: group1
|
|
integer, intent(in) :: group2
|
|
integer, intent(out) :: result
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Group_compare
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Group_difference
|
|
|
|
subroutine MPI_Group_difference(group1, group2, newgroup, ierror)
|
|
integer, intent(in) :: group1
|
|
integer, intent(in) :: group2
|
|
integer, intent(out) :: newgroup
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Group_difference
|
|
|
|
end interface
|
|
|
|
interface PMPI_Group_difference
|
|
|
|
subroutine PMPI_Group_difference(group1, group2, newgroup, ierror)
|
|
integer, intent(in) :: group1
|
|
integer, intent(in) :: group2
|
|
integer, intent(out) :: newgroup
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Group_difference
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Group_excl
|
|
|
|
subroutine MPI_Group_excl(group, n, ranks, newgroup, ierror)
|
|
integer, intent(in) :: group
|
|
integer, intent(in) :: n
|
|
integer, dimension(*), intent(in) :: ranks
|
|
integer, intent(out) :: newgroup
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Group_excl
|
|
|
|
end interface
|
|
|
|
interface PMPI_Group_excl
|
|
|
|
subroutine PMPI_Group_excl(group, n, ranks, newgroup, ierror)
|
|
integer, intent(in) :: group
|
|
integer, intent(in) :: n
|
|
integer, dimension(*), intent(in) :: ranks
|
|
integer, intent(out) :: newgroup
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Group_excl
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Group_free
|
|
|
|
subroutine MPI_Group_free(group, ierror)
|
|
integer, intent(inout) :: group
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Group_free
|
|
|
|
end interface
|
|
|
|
interface PMPI_Group_free
|
|
|
|
subroutine PMPI_Group_free(group, ierror)
|
|
integer, intent(inout) :: group
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Group_free
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Group_incl
|
|
|
|
subroutine MPI_Group_incl(group, n, ranks, newgroup, ierror)
|
|
integer, intent(in) :: group
|
|
integer, intent(in) :: n
|
|
integer, dimension(*), intent(in) :: ranks
|
|
integer, intent(out) :: newgroup
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Group_incl
|
|
|
|
end interface
|
|
|
|
interface PMPI_Group_incl
|
|
|
|
subroutine PMPI_Group_incl(group, n, ranks, newgroup, ierror)
|
|
integer, intent(in) :: group
|
|
integer, intent(in) :: n
|
|
integer, dimension(*), intent(in) :: ranks
|
|
integer, intent(out) :: newgroup
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Group_incl
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Group_intersection
|
|
|
|
subroutine MPI_Group_intersection(group1, group2, newgroup, ierror)
|
|
integer, intent(in) :: group1
|
|
integer, intent(in) :: group2
|
|
integer, intent(out) :: newgroup
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Group_intersection
|
|
|
|
end interface
|
|
|
|
interface PMPI_Group_intersection
|
|
|
|
subroutine PMPI_Group_intersection(group1, group2, newgroup, ierror)
|
|
integer, intent(in) :: group1
|
|
integer, intent(in) :: group2
|
|
integer, intent(out) :: newgroup
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Group_intersection
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Group_range_excl
|
|
|
|
subroutine MPI_Group_range_excl(group, n, ranges, newgroup, ierror)
|
|
integer, intent(in) :: group
|
|
integer, intent(in) :: n
|
|
integer, dimension(3, *), intent(in) :: ranges
|
|
integer, intent(out) :: newgroup
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Group_range_excl
|
|
|
|
end interface
|
|
|
|
interface PMPI_Group_range_excl
|
|
|
|
subroutine PMPI_Group_range_excl(group, n, ranges, newgroup, ierror)
|
|
integer, intent(in) :: group
|
|
integer, intent(in) :: n
|
|
integer, dimension(3, *), intent(in) :: ranges
|
|
integer, intent(out) :: newgroup
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Group_range_excl
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Group_range_incl
|
|
|
|
subroutine MPI_Group_range_incl(group, n, ranges, newgroup, ierror)
|
|
integer, intent(in) :: group
|
|
integer, intent(in) :: n
|
|
integer, dimension(3, *), intent(in) :: ranges
|
|
integer, intent(out) :: newgroup
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Group_range_incl
|
|
|
|
end interface
|
|
|
|
interface PMPI_Group_range_incl
|
|
|
|
subroutine PMPI_Group_range_incl(group, n, ranges, newgroup, ierror)
|
|
integer, intent(in) :: group
|
|
integer, intent(in) :: n
|
|
integer, dimension(3, *), intent(in) :: ranges
|
|
integer, intent(out) :: newgroup
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Group_range_incl
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Group_rank
|
|
|
|
subroutine MPI_Group_rank(group, rank, ierror)
|
|
integer, intent(in) :: group
|
|
integer, intent(out) :: rank
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Group_rank
|
|
|
|
end interface
|
|
|
|
interface PMPI_Group_rank
|
|
|
|
subroutine PMPI_Group_rank(group, rank, ierror)
|
|
integer, intent(in) :: group
|
|
integer, intent(out) :: rank
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Group_rank
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Group_size
|
|
|
|
subroutine MPI_Group_size(group, size, ierror)
|
|
integer, intent(in) :: group
|
|
integer, intent(out) :: size
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Group_size
|
|
|
|
end interface
|
|
|
|
interface PMPI_Group_size
|
|
|
|
subroutine PMPI_Group_size(group, size, ierror)
|
|
integer, intent(in) :: group
|
|
integer, intent(out) :: size
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Group_size
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Group_translate_ranks
|
|
|
|
subroutine MPI_Group_translate_ranks(group1, n, ranks1, group2, ranks2&
|
|
, ierror)
|
|
integer, intent(in) :: group1
|
|
integer, intent(in) :: n
|
|
integer, dimension(*), intent(in) :: ranks1
|
|
integer, intent(in) :: group2
|
|
integer, dimension(*), intent(out) :: ranks2
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Group_translate_ranks
|
|
|
|
end interface
|
|
|
|
interface PMPI_Group_translate_ranks
|
|
|
|
subroutine PMPI_Group_translate_ranks(group1, n, ranks1, group2, ranks2&
|
|
, ierror)
|
|
integer, intent(in) :: group1
|
|
integer, intent(in) :: n
|
|
integer, dimension(*), intent(in) :: ranks1
|
|
integer, intent(in) :: group2
|
|
integer, dimension(*), intent(out) :: ranks2
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Group_translate_ranks
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Group_union
|
|
|
|
subroutine MPI_Group_union(group1, group2, newgroup, ierror)
|
|
integer, intent(in) :: group1
|
|
integer, intent(in) :: group2
|
|
integer, intent(out) :: newgroup
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Group_union
|
|
|
|
end interface
|
|
|
|
interface PMPI_Group_union
|
|
|
|
subroutine PMPI_Group_union(group1, group2, newgroup, ierror)
|
|
integer, intent(in) :: group1
|
|
integer, intent(in) :: group2
|
|
integer, intent(out) :: newgroup
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Group_union
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Iallgather
|
|
|
|
subroutine MPI_Iallgather(sendbuf, sendcount, sendtype, recvbuf, recvcount, &
|
|
recvtype, comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: recvcount
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Iallgather
|
|
|
|
end interface
|
|
|
|
interface PMPI_Iallgather
|
|
|
|
subroutine PMPI_Iallgather(sendbuf, sendcount, sendtype, recvbuf, recvcount, &
|
|
recvtype, comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: recvcount
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Iallgather
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Iallgatherv
|
|
|
|
subroutine MPI_Iallgatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, &
|
|
displs, recvtype, comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, dimension(*), intent(in) :: recvcounts
|
|
integer, dimension(*), intent(in) :: displs
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Iallgatherv
|
|
|
|
end interface
|
|
|
|
interface PMPI_Iallgatherv
|
|
|
|
subroutine PMPI_Iallgatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, &
|
|
displs, recvtype, comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, dimension(*), intent(in) :: recvcounts
|
|
integer, dimension(*), intent(in) :: displs
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Iallgatherv
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Iallreduce
|
|
|
|
subroutine MPI_Iallreduce(sendbuf, recvbuf, count, datatype, op, &
|
|
comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: op
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Iallreduce
|
|
|
|
end interface
|
|
|
|
interface PMPI_Iallreduce
|
|
|
|
subroutine PMPI_Iallreduce(sendbuf, recvbuf, count, datatype, op, &
|
|
comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: op
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Iallreduce
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Ialltoall
|
|
|
|
subroutine MPI_Ialltoall(sendbuf, sendcount, sendtype, recvbuf, recvcount, &
|
|
recvtype, comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: recvcount
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Ialltoall
|
|
|
|
end interface
|
|
|
|
interface PMPI_Ialltoall
|
|
|
|
subroutine PMPI_Ialltoall(sendbuf, sendcount, sendtype, recvbuf, recvcount, &
|
|
recvtype, comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: recvcount
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Ialltoall
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Ialltoallv
|
|
|
|
subroutine MPI_Ialltoallv(sendbuf, sendcounts, sdispls, sendtype, recvbuf, &
|
|
recvcounts, rdispls, recvtype, comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, dimension(*), intent(in) :: sendcounts
|
|
integer, dimension(*), intent(in) :: sdispls
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, dimension(*), intent(in) :: recvcounts
|
|
integer, dimension(*), intent(in) :: rdispls
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Ialltoallv
|
|
|
|
end interface
|
|
|
|
interface PMPI_Ialltoallv
|
|
|
|
subroutine PMPI_Ialltoallv(sendbuf, sendcounts, sdispls, sendtype, recvbuf, &
|
|
recvcounts, rdispls, recvtype, comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, dimension(*), intent(in) :: sendcounts
|
|
integer, dimension(*), intent(in) :: sdispls
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, dimension(*), intent(in) :: recvcounts
|
|
integer, dimension(*), intent(in) :: rdispls
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Ialltoallv
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Ialltoallw
|
|
|
|
subroutine MPI_Ialltoallw(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, &
|
|
recvcounts, rdispls, recvtypes, comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, dimension(*), intent(in) :: sendcounts
|
|
integer, dimension(*), intent(in) :: sdispls
|
|
integer, dimension(*), intent(in) :: sendtypes
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, dimension(*), intent(in) :: recvcounts
|
|
integer, dimension(*), intent(in) :: rdispls
|
|
integer, dimension(*), intent(in) :: recvtypes
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Ialltoallw
|
|
|
|
end interface
|
|
|
|
interface PMPI_Ialltoallw
|
|
|
|
subroutine PMPI_Ialltoallw(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, &
|
|
recvcounts, rdispls, recvtypes, comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, dimension(*), intent(in) :: sendcounts
|
|
integer, dimension(*), intent(in) :: sdispls
|
|
integer, dimension(*), intent(in) :: sendtypes
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, dimension(*), intent(in) :: recvcounts
|
|
integer, dimension(*), intent(in) :: rdispls
|
|
integer, dimension(*), intent(in) :: recvtypes
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Ialltoallw
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Ibarrier
|
|
|
|
subroutine MPI_Ibarrier(comm, request, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Ibarrier
|
|
|
|
end interface
|
|
|
|
interface PMPI_Ibarrier
|
|
|
|
subroutine PMPI_Ibarrier(comm, request, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Ibarrier
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Ibcast
|
|
|
|
subroutine MPI_Ibcast(buffer, count, datatype, root, comm&
|
|
, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buffer
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: buffer
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: root
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Ibcast
|
|
|
|
end interface
|
|
|
|
interface PMPI_Ibcast
|
|
|
|
subroutine PMPI_Ibcast(buffer, count, datatype, root, comm&
|
|
, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buffer
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: buffer
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: root
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Ibcast
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Ibsend
|
|
|
|
subroutine MPI_Ibsend(buf, count, datatype, dest, tag, &
|
|
comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: buf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: dest
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Ibsend
|
|
|
|
end interface
|
|
|
|
interface PMPI_Ibsend
|
|
|
|
subroutine PMPI_Ibsend(buf, count, datatype, dest, tag, &
|
|
comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: buf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: dest
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Ibsend
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Iexscan
|
|
|
|
subroutine MPI_Iexscan(sendbuf, recvbuf, count, datatype, op, &
|
|
comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: op
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Iexscan
|
|
|
|
end interface
|
|
|
|
interface PMPI_Iexscan
|
|
|
|
subroutine PMPI_Iexscan(sendbuf, recvbuf, count, datatype, op, &
|
|
comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: op
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Iexscan
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Igather
|
|
|
|
subroutine MPI_Igather(sendbuf, sendcount, sendtype, recvbuf, recvcount, &
|
|
recvtype, root, comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: recvcount
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: root
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Igather
|
|
|
|
end interface
|
|
|
|
interface PMPI_Igather
|
|
|
|
subroutine PMPI_Igather(sendbuf, sendcount, sendtype, recvbuf, recvcount, &
|
|
recvtype, root, comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: recvcount
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: root
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Igather
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Igatherv
|
|
|
|
subroutine MPI_Igatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, &
|
|
displs, recvtype, root, comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, dimension(*), intent(in) :: recvcounts
|
|
integer, dimension(*), intent(in) :: displs
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: root
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Igatherv
|
|
|
|
end interface
|
|
|
|
interface PMPI_Igatherv
|
|
|
|
subroutine PMPI_Igatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, &
|
|
displs, recvtype, root, comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, dimension(*), intent(in) :: recvcounts
|
|
integer, dimension(*), intent(in) :: displs
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: root
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Igatherv
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Improbe
|
|
|
|
subroutine MPI_Improbe(source, tag, comm, flag, message, status, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: source
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
logical, intent(out) :: flag
|
|
integer, intent(out) :: message
|
|
integer, dimension(MPI_STATUS_SIZE), intent(out) :: status
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Improbe
|
|
|
|
end interface
|
|
|
|
interface PMPI_Improbe
|
|
|
|
subroutine PMPI_Improbe(source, tag, comm, flag, message, status, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: source
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
logical, intent(out) :: flag
|
|
integer, intent(out) :: message
|
|
integer, dimension(MPI_STATUS_SIZE), intent(out) :: status
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Improbe
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Imrecv
|
|
|
|
subroutine MPI_Imrecv(buf, count, datatype, message, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: buf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(inout) :: message
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Imrecv
|
|
|
|
end interface
|
|
|
|
interface PMPI_Imrecv
|
|
|
|
subroutine PMPI_Imrecv(buf, count, datatype, message, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: buf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(inout) :: message
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Imrecv
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Ineighbor_allgather
|
|
|
|
subroutine MPI_Ineighbor_allgather(sendbuf, sendcount, sendtype, recvbuf, recvcount, &
|
|
recvtype, comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: recvcount
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Ineighbor_allgather
|
|
|
|
end interface
|
|
|
|
interface PMPI_Ineighbor_allgather
|
|
|
|
subroutine PMPI_Ineighbor_allgather(sendbuf, sendcount, sendtype, recvbuf, recvcount, &
|
|
recvtype, comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: recvcount
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Ineighbor_allgather
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Ineighbor_allgatherv
|
|
|
|
subroutine MPI_Ineighbor_allgatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, &
|
|
displs, recvtype, comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, dimension(*), intent(in) :: recvcounts
|
|
integer, dimension(*), intent(in) :: displs
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Ineighbor_allgatherv
|
|
|
|
end interface
|
|
|
|
interface PMPI_Ineighbor_allgatherv
|
|
|
|
subroutine PMPI_Ineighbor_allgatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, &
|
|
displs, recvtype, comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, dimension(*), intent(in) :: recvcounts
|
|
integer, dimension(*), intent(in) :: displs
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Ineighbor_allgatherv
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Ineighbor_alltoall
|
|
|
|
subroutine MPI_Ineighbor_alltoall(sendbuf, sendcount, sendtype, recvbuf, recvcount, &
|
|
recvtype, comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: recvcount
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Ineighbor_alltoall
|
|
|
|
end interface
|
|
|
|
interface PMPI_Ineighbor_alltoall
|
|
|
|
subroutine PMPI_Ineighbor_alltoall(sendbuf, sendcount, sendtype, recvbuf, recvcount, &
|
|
recvtype, comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: recvcount
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Ineighbor_alltoall
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Ineighbor_alltoallv
|
|
|
|
subroutine MPI_Ineighbor_alltoallv(sendbuf, sendcounts, sdispls, sendtype, recvbuf, &
|
|
recvcounts, rdispls, recvtype, comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, dimension(*), intent(in) :: sendcounts
|
|
integer, dimension(*), intent(in) :: sdispls
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, dimension(*), intent(in) :: recvcounts
|
|
integer, dimension(*), intent(in) :: rdispls
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Ineighbor_alltoallv
|
|
|
|
end interface
|
|
|
|
interface PMPI_Ineighbor_alltoallv
|
|
|
|
subroutine PMPI_Ineighbor_alltoallv(sendbuf, sendcounts, sdispls, sendtype, recvbuf, &
|
|
recvcounts, rdispls, recvtype, comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, dimension(*), intent(in) :: sendcounts
|
|
integer, dimension(*), intent(in) :: sdispls
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, dimension(*), intent(in) :: recvcounts
|
|
integer, dimension(*), intent(in) :: rdispls
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Ineighbor_alltoallv
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Ineighbor_alltoallw
|
|
|
|
subroutine MPI_Ineighbor_alltoallw(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, &
|
|
recvcounts, rdispls, recvtypes, comm, request, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, dimension(*), intent(in) :: sendcounts
|
|
integer(kind=MPI_ADDRESS_KIND), dimension(*), intent(in) :: sdispls
|
|
integer, dimension(*), intent(in) :: sendtypes
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, dimension(*), intent(in) :: recvcounts
|
|
integer(kind=MPI_ADDRESS_KIND), dimension(*), intent(in) :: rdispls
|
|
integer, dimension(*), intent(in) :: recvtypes
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Ineighbor_alltoallw
|
|
|
|
end interface
|
|
|
|
interface PMPI_Ineighbor_alltoallw
|
|
|
|
subroutine PMPI_Ineighbor_alltoallw(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, &
|
|
recvcounts, rdispls, recvtypes, comm, request, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, dimension(*), intent(in) :: sendcounts
|
|
integer(kind=MPI_ADDRESS_KIND), dimension(*), intent(in) :: sdispls
|
|
integer, dimension(*), intent(in) :: sendtypes
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, dimension(*), intent(in) :: recvcounts
|
|
integer(kind=MPI_ADDRESS_KIND), dimension(*), intent(in) :: rdispls
|
|
integer, dimension(*), intent(in) :: recvtypes
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Ineighbor_alltoallw
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Info_create
|
|
|
|
subroutine MPI_Info_create(info, ierror)
|
|
integer, intent(out) :: info
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Info_create
|
|
|
|
end interface
|
|
|
|
interface PMPI_Info_create
|
|
|
|
subroutine PMPI_Info_create(info, ierror)
|
|
integer, intent(out) :: info
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Info_create
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Info_delete
|
|
|
|
subroutine MPI_Info_delete(info, key, ierror)
|
|
integer, intent(in) :: info
|
|
character(len=*), intent(in) :: key
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Info_delete
|
|
|
|
end interface
|
|
|
|
interface PMPI_Info_delete
|
|
|
|
subroutine PMPI_Info_delete(info, key, ierror)
|
|
integer, intent(in) :: info
|
|
character(len=*), intent(in) :: key
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Info_delete
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Info_dup
|
|
|
|
subroutine MPI_Info_dup(info, newinfo, ierror)
|
|
integer, intent(in) :: info
|
|
integer, intent(out) :: newinfo
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Info_dup
|
|
|
|
end interface
|
|
|
|
interface PMPI_Info_dup
|
|
|
|
subroutine PMPI_Info_dup(info, newinfo, ierror)
|
|
integer, intent(in) :: info
|
|
integer, intent(out) :: newinfo
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Info_dup
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Info_free
|
|
|
|
subroutine MPI_Info_free(info, ierror)
|
|
integer, intent(inout) :: info
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Info_free
|
|
|
|
end interface
|
|
|
|
interface PMPI_Info_free
|
|
|
|
subroutine PMPI_Info_free(info, ierror)
|
|
integer, intent(inout) :: info
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Info_free
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Info_get
|
|
|
|
subroutine MPI_Info_get(info, key, valuelen, value, flag&
|
|
, ierror)
|
|
integer, intent(in) :: info
|
|
character(len=*), intent(in) :: key
|
|
integer, intent(in) :: valuelen
|
|
character(len=*), intent(out) :: value
|
|
logical, intent(out) :: flag
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Info_get
|
|
|
|
end interface
|
|
|
|
interface PMPI_Info_get
|
|
|
|
subroutine PMPI_Info_get(info, key, valuelen, value, flag&
|
|
, ierror)
|
|
integer, intent(in) :: info
|
|
character(len=*), intent(in) :: key
|
|
integer, intent(in) :: valuelen
|
|
character(len=*), intent(out) :: value
|
|
logical, intent(out) :: flag
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Info_get
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Info_get_nkeys
|
|
|
|
subroutine MPI_Info_get_nkeys(info, nkeys, ierror)
|
|
integer, intent(in) :: info
|
|
integer, intent(out) :: nkeys
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Info_get_nkeys
|
|
|
|
end interface
|
|
|
|
interface PMPI_Info_get_nkeys
|
|
|
|
subroutine PMPI_Info_get_nkeys(info, nkeys, ierror)
|
|
integer, intent(in) :: info
|
|
integer, intent(out) :: nkeys
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Info_get_nkeys
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Info_get_nthkey
|
|
|
|
subroutine MPI_Info_get_nthkey(info, n, key, ierror)
|
|
integer, intent(in) :: info
|
|
integer, intent(in) :: n
|
|
character(len=*), intent(out) :: key
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Info_get_nthkey
|
|
|
|
end interface
|
|
|
|
interface PMPI_Info_get_nthkey
|
|
|
|
subroutine PMPI_Info_get_nthkey(info, n, key, ierror)
|
|
integer, intent(in) :: info
|
|
integer, intent(in) :: n
|
|
character(len=*), intent(out) :: key
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Info_get_nthkey
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Info_get_valuelen
|
|
|
|
subroutine MPI_Info_get_valuelen(info, key, valuelen, flag, ierror)
|
|
integer, intent(in) :: info
|
|
character(len=*), intent(in) :: key
|
|
integer, intent(out) :: valuelen
|
|
logical, intent(out) :: flag
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Info_get_valuelen
|
|
|
|
end interface
|
|
|
|
interface PMPI_Info_get_valuelen
|
|
|
|
subroutine PMPI_Info_get_valuelen(info, key, valuelen, flag, ierror)
|
|
integer, intent(in) :: info
|
|
character(len=*), intent(in) :: key
|
|
integer, intent(out) :: valuelen
|
|
logical, intent(out) :: flag
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Info_get_valuelen
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Info_set
|
|
|
|
subroutine MPI_Info_set(info, key, value, ierror)
|
|
integer, intent(in) :: info
|
|
character(len=*), intent(in) :: key
|
|
character(len=*), intent(in) :: value
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Info_set
|
|
|
|
end interface
|
|
|
|
interface PMPI_Info_set
|
|
|
|
subroutine PMPI_Info_set(info, key, value, ierror)
|
|
integer, intent(in) :: info
|
|
character(len=*), intent(in) :: key
|
|
character(len=*), intent(in) :: value
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Info_set
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Init
|
|
|
|
subroutine MPI_Init(ierror)
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Init
|
|
|
|
end interface
|
|
|
|
interface PMPI_Init
|
|
|
|
subroutine PMPI_Init(ierror)
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Init
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Init_thread
|
|
|
|
subroutine MPI_Init_thread(required, provided, ierror)
|
|
integer, intent(in) :: required
|
|
integer, intent(out) :: provided
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Init_thread
|
|
|
|
end interface
|
|
|
|
interface PMPI_Init_thread
|
|
|
|
subroutine PMPI_Init_thread(required, provided, ierror)
|
|
integer, intent(in) :: required
|
|
integer, intent(out) :: provided
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Init_thread
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Initialized
|
|
|
|
subroutine MPI_Initialized(flag, ierror)
|
|
logical, intent(out) :: flag
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Initialized
|
|
|
|
end interface
|
|
|
|
interface PMPI_Initialized
|
|
|
|
subroutine PMPI_Initialized(flag, ierror)
|
|
logical, intent(out) :: flag
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Initialized
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Intercomm_create
|
|
|
|
subroutine MPI_Intercomm_create(local_comm, local_leader, bridge_comm, remote_leader, tag, &
|
|
newintercomm, ierror)
|
|
integer, intent(in) :: local_comm
|
|
integer, intent(in) :: local_leader
|
|
integer, intent(in) :: bridge_comm
|
|
integer, intent(in) :: remote_leader
|
|
integer, intent(in) :: tag
|
|
integer, intent(out) :: newintercomm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Intercomm_create
|
|
|
|
end interface
|
|
|
|
interface PMPI_Intercomm_create
|
|
|
|
subroutine PMPI_Intercomm_create(local_comm, local_leader, bridge_comm, remote_leader, tag, &
|
|
newintercomm, ierror)
|
|
integer, intent(in) :: local_comm
|
|
integer, intent(in) :: local_leader
|
|
integer, intent(in) :: bridge_comm
|
|
integer, intent(in) :: remote_leader
|
|
integer, intent(in) :: tag
|
|
integer, intent(out) :: newintercomm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Intercomm_create
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Intercomm_merge
|
|
|
|
subroutine MPI_Intercomm_merge(intercomm, high, newintercomm, ierror)
|
|
integer, intent(in) :: intercomm
|
|
logical, intent(in) :: high
|
|
integer, intent(out) :: newintercomm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Intercomm_merge
|
|
|
|
end interface
|
|
|
|
interface PMPI_Intercomm_merge
|
|
|
|
subroutine PMPI_Intercomm_merge(intercomm, high, newintercomm, ierror)
|
|
integer, intent(in) :: intercomm
|
|
logical, intent(in) :: high
|
|
integer, intent(out) :: newintercomm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Intercomm_merge
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Iprobe
|
|
|
|
subroutine MPI_Iprobe(source, tag, comm, flag, status&
|
|
, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: source
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
logical, intent(out) :: flag
|
|
integer, dimension(MPI_STATUS_SIZE), intent(out) :: status
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Iprobe
|
|
|
|
end interface
|
|
|
|
interface PMPI_Iprobe
|
|
|
|
subroutine PMPI_Iprobe(source, tag, comm, flag, status&
|
|
, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: source
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
logical, intent(out) :: flag
|
|
integer, dimension(MPI_STATUS_SIZE), intent(out) :: status
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Iprobe
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Irecv
|
|
|
|
subroutine MPI_Irecv(buf, count, datatype, source, tag, &
|
|
comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: buf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: source
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Irecv
|
|
|
|
end interface
|
|
|
|
interface PMPI_Irecv
|
|
|
|
subroutine PMPI_Irecv(buf, count, datatype, source, tag, &
|
|
comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: buf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: source
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Irecv
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Ireduce
|
|
|
|
subroutine MPI_Ireduce(sendbuf, recvbuf, count, datatype, op, &
|
|
root, comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: op
|
|
integer, intent(in) :: root
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Ireduce
|
|
|
|
end interface
|
|
|
|
interface PMPI_Ireduce
|
|
|
|
subroutine PMPI_Ireduce(sendbuf, recvbuf, count, datatype, op, &
|
|
root, comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: op
|
|
integer, intent(in) :: root
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Ireduce
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Ireduce_scatter
|
|
|
|
subroutine MPI_Ireduce_scatter(sendbuf, recvbuf, recvcounts, datatype, op, &
|
|
comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, dimension(*), intent(in) :: recvcounts
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: op
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Ireduce_scatter
|
|
|
|
end interface
|
|
|
|
interface PMPI_Ireduce_scatter
|
|
|
|
subroutine PMPI_Ireduce_scatter(sendbuf, recvbuf, recvcounts, datatype, op, &
|
|
comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, dimension(*), intent(in) :: recvcounts
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: op
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Ireduce_scatter
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Ireduce_scatter_block
|
|
|
|
subroutine MPI_Ireduce_scatter_block(sendbuf, recvbuf, recvcount, datatype, op, &
|
|
comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: recvcount
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: op
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Ireduce_scatter_block
|
|
|
|
end interface
|
|
|
|
interface PMPI_Ireduce_scatter_block
|
|
|
|
subroutine PMPI_Ireduce_scatter_block(sendbuf, recvbuf, recvcount, datatype, op, &
|
|
comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: recvcount
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: op
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Ireduce_scatter_block
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Irsend
|
|
|
|
subroutine MPI_Irsend(buf, count, datatype, dest, tag, &
|
|
comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: buf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: dest
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Irsend
|
|
|
|
end interface
|
|
|
|
interface PMPI_Irsend
|
|
|
|
subroutine PMPI_Irsend(buf, count, datatype, dest, tag, &
|
|
comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: buf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: dest
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Irsend
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Is_thread_main
|
|
|
|
subroutine MPI_Is_thread_main(flag, ierror)
|
|
logical, intent(out) :: flag
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Is_thread_main
|
|
|
|
end interface
|
|
|
|
interface PMPI_Is_thread_main
|
|
|
|
subroutine PMPI_Is_thread_main(flag, ierror)
|
|
logical, intent(out) :: flag
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Is_thread_main
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Iscan
|
|
|
|
subroutine MPI_Iscan(sendbuf, recvbuf, count, datatype, op, &
|
|
comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: op
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Iscan
|
|
|
|
end interface
|
|
|
|
interface PMPI_Iscan
|
|
|
|
subroutine PMPI_Iscan(sendbuf, recvbuf, count, datatype, op, &
|
|
comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: op
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Iscan
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Iscatter
|
|
|
|
subroutine MPI_Iscatter(sendbuf, sendcount, sendtype, recvbuf, recvcount, &
|
|
recvtype, root, comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: recvcount
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: root
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Iscatter
|
|
|
|
end interface
|
|
|
|
interface PMPI_Iscatter
|
|
|
|
subroutine PMPI_Iscatter(sendbuf, sendcount, sendtype, recvbuf, recvcount, &
|
|
recvtype, root, comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: recvcount
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: root
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Iscatter
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Iscatterv
|
|
|
|
subroutine MPI_Iscatterv(sendbuf, sendcounts, displs, sendtype, recvbuf, &
|
|
recvcount, recvtype, root, comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, dimension(*), intent(in) :: sendcounts
|
|
integer, dimension(*), intent(in) :: displs
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: recvcount
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: root
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Iscatterv
|
|
|
|
end interface
|
|
|
|
interface PMPI_Iscatterv
|
|
|
|
subroutine PMPI_Iscatterv(sendbuf, sendcounts, displs, sendtype, recvbuf, &
|
|
recvcount, recvtype, root, comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, dimension(*), intent(in) :: sendcounts
|
|
integer, dimension(*), intent(in) :: displs
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: recvcount
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: root
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Iscatterv
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Isend
|
|
|
|
subroutine MPI_Isend(buf, count, datatype, dest, tag, &
|
|
comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: buf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: dest
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Isend
|
|
|
|
end interface
|
|
|
|
interface PMPI_Isend
|
|
|
|
subroutine PMPI_Isend(buf, count, datatype, dest, tag, &
|
|
comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: buf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: dest
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Isend
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Issend
|
|
|
|
subroutine MPI_Issend(buf, count, datatype, dest, tag, &
|
|
comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: buf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: dest
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Issend
|
|
|
|
end interface
|
|
|
|
interface PMPI_Issend
|
|
|
|
subroutine PMPI_Issend(buf, count, datatype, dest, tag, &
|
|
comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: buf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: dest
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Issend
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Lookup_name
|
|
|
|
subroutine MPI_Lookup_name(service_name, info, port_name, ierror)
|
|
character(len=*), intent(in) :: service_name
|
|
integer, intent(in) :: info
|
|
character(len=*), intent(out) :: port_name
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Lookup_name
|
|
|
|
end interface
|
|
|
|
interface PMPI_Lookup_name
|
|
|
|
subroutine PMPI_Lookup_name(service_name, info, port_name, ierror)
|
|
character(len=*), intent(in) :: service_name
|
|
integer, intent(in) :: info
|
|
character(len=*), intent(out) :: port_name
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Lookup_name
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Mprobe
|
|
|
|
subroutine MPI_Mprobe(source, tag, comm, message, status, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: source
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: message
|
|
integer, dimension(MPI_STATUS_SIZE), intent(out) :: status
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Mprobe
|
|
|
|
end interface
|
|
|
|
interface PMPI_Mprobe
|
|
|
|
subroutine PMPI_Mprobe(source, tag, comm, message, status, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: source
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: message
|
|
integer, dimension(MPI_STATUS_SIZE), intent(out) :: status
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Mprobe
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Mrecv
|
|
|
|
subroutine MPI_Mrecv(buf, count, datatype, message, status, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: buf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(inout) :: message
|
|
integer, dimension(MPI_STATUS_SIZE), intent(out) :: status
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Mrecv
|
|
|
|
end interface
|
|
|
|
interface PMPI_Mrecv
|
|
|
|
subroutine PMPI_Mrecv(buf, count, datatype, message, status, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: buf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(inout) :: message
|
|
integer, dimension(MPI_STATUS_SIZE), intent(out) :: status
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Mrecv
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Neighbor_allgather
|
|
|
|
subroutine MPI_Neighbor_allgather(sendbuf, sendcount, sendtype, recvbuf, recvcount, &
|
|
recvtype, comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: recvcount
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Neighbor_allgather
|
|
|
|
end interface
|
|
|
|
interface PMPI_Neighbor_allgather
|
|
|
|
subroutine PMPI_Neighbor_allgather(sendbuf, sendcount, sendtype, recvbuf, recvcount, &
|
|
recvtype, comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: recvcount
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Neighbor_allgather
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Neighbor_allgatherv
|
|
|
|
subroutine MPI_Neighbor_allgatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, &
|
|
displs, recvtype, comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, dimension(*), intent(in) :: recvcounts
|
|
integer, dimension(*), intent(in) :: displs
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Neighbor_allgatherv
|
|
|
|
end interface
|
|
|
|
interface PMPI_Neighbor_allgatherv
|
|
|
|
subroutine PMPI_Neighbor_allgatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, &
|
|
displs, recvtype, comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, dimension(*), intent(in) :: recvcounts
|
|
integer, dimension(*), intent(in) :: displs
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Neighbor_allgatherv
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Neighbor_alltoall
|
|
|
|
subroutine MPI_Neighbor_alltoall(sendbuf, sendcount, sendtype, recvbuf, recvcount, &
|
|
recvtype, comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: recvcount
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Neighbor_alltoall
|
|
|
|
end interface
|
|
|
|
interface PMPI_Neighbor_alltoall
|
|
|
|
subroutine PMPI_Neighbor_alltoall(sendbuf, sendcount, sendtype, recvbuf, recvcount, &
|
|
recvtype, comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: recvcount
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Neighbor_alltoall
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Neighbor_alltoallv
|
|
|
|
subroutine MPI_Neighbor_alltoallv(sendbuf, sendcounts, sdispls, sendtype, recvbuf, &
|
|
recvcounts, rdispls, recvtype, comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, dimension(*), intent(in) :: sendcounts
|
|
integer, dimension(*), intent(in) :: sdispls
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, dimension(*), intent(in) :: recvcounts
|
|
integer, dimension(*), intent(in) :: rdispls
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Neighbor_alltoallv
|
|
|
|
end interface
|
|
|
|
interface PMPI_Neighbor_alltoallv
|
|
|
|
subroutine PMPI_Neighbor_alltoallv(sendbuf, sendcounts, sdispls, sendtype, recvbuf, &
|
|
recvcounts, rdispls, recvtype, comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, dimension(*), intent(in) :: sendcounts
|
|
integer, dimension(*), intent(in) :: sdispls
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, dimension(*), intent(in) :: recvcounts
|
|
integer, dimension(*), intent(in) :: rdispls
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Neighbor_alltoallv
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Neighbor_alltoallw
|
|
|
|
subroutine MPI_Neighbor_alltoallw(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, &
|
|
recvcounts, rdispls, recvtypes, comm, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, dimension(*), intent(in) :: sendcounts
|
|
integer(kind=MPI_ADDRESS_KIND), dimension(*), intent(in) :: sdispls
|
|
integer, dimension(*), intent(in) :: sendtypes
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, dimension(*), intent(in) :: recvcounts
|
|
integer(kind=MPI_ADDRESS_KIND), dimension(*), intent(in) :: rdispls
|
|
integer, dimension(*), intent(in) :: recvtypes
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Neighbor_alltoallw
|
|
|
|
end interface
|
|
|
|
interface PMPI_Neighbor_alltoallw
|
|
|
|
subroutine PMPI_Neighbor_alltoallw(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, &
|
|
recvcounts, rdispls, recvtypes, comm, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, dimension(*), intent(in) :: sendcounts
|
|
integer(kind=MPI_ADDRESS_KIND), dimension(*), intent(in) :: sdispls
|
|
integer, dimension(*), intent(in) :: sendtypes
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, dimension(*), intent(in) :: recvcounts
|
|
integer(kind=MPI_ADDRESS_KIND), dimension(*), intent(in) :: rdispls
|
|
integer, dimension(*), intent(in) :: recvtypes
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Neighbor_alltoallw
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Op_commutative
|
|
|
|
subroutine MPI_Op_commutative(op, commute, ierror)
|
|
integer, intent(in) :: op
|
|
logical, intent(out) :: commute
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Op_commutative
|
|
|
|
end interface
|
|
|
|
interface PMPI_Op_commutative
|
|
|
|
subroutine PMPI_Op_commutative(op, commute, ierror)
|
|
integer, intent(in) :: op
|
|
logical, intent(out) :: commute
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Op_commutative
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Op_create
|
|
|
|
subroutine MPI_Op_create(function, commute, op, ierror)
|
|
external :: function
|
|
logical, intent(in) :: commute
|
|
integer, intent(out) :: op
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Op_create
|
|
|
|
end interface
|
|
|
|
interface PMPI_Op_create
|
|
|
|
subroutine PMPI_Op_create(function, commute, op, ierror)
|
|
external :: function
|
|
logical, intent(in) :: commute
|
|
integer, intent(out) :: op
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Op_create
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Op_free
|
|
|
|
subroutine MPI_Op_free(op, ierror)
|
|
integer, intent(inout) :: op
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Op_free
|
|
|
|
end interface
|
|
|
|
interface PMPI_Op_free
|
|
|
|
subroutine PMPI_Op_free(op, ierror)
|
|
integer, intent(inout) :: op
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Op_free
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Open_port
|
|
|
|
subroutine MPI_Open_port(info, port_name, ierror)
|
|
integer, intent(in) :: info
|
|
character(len=*), intent(out) :: port_name
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Open_port
|
|
|
|
end interface
|
|
|
|
interface PMPI_Open_port
|
|
|
|
subroutine PMPI_Open_port(info, port_name, ierror)
|
|
integer, intent(in) :: info
|
|
character(len=*), intent(out) :: port_name
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Open_port
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Pack
|
|
|
|
subroutine MPI_Pack(inbuf, incount, datatype, outbuf, outsize, &
|
|
position, comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ inbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: inbuf
|
|
integer, intent(in) :: incount
|
|
integer, intent(in) :: datatype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ outbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: outbuf
|
|
integer, intent(in) :: outsize
|
|
integer, intent(inout) :: position
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Pack
|
|
|
|
end interface
|
|
|
|
interface PMPI_Pack
|
|
|
|
subroutine PMPI_Pack(inbuf, incount, datatype, outbuf, outsize, &
|
|
position, comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ inbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: inbuf
|
|
integer, intent(in) :: incount
|
|
integer, intent(in) :: datatype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ outbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: outbuf
|
|
integer, intent(in) :: outsize
|
|
integer, intent(inout) :: position
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Pack
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Pack_external
|
|
|
|
subroutine MPI_Pack_external(datarep, inbuf, incount, datatype, outbuf, &
|
|
outsize, position, ierror)
|
|
include 'mpif-config.h'
|
|
character(len=*), intent(in) :: datarep
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ inbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: inbuf
|
|
integer, intent(in) :: incount
|
|
integer, intent(in) :: datatype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ outbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: outbuf
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: outsize
|
|
integer(kind=MPI_ADDRESS_KIND), intent(inout) :: position
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Pack_external
|
|
|
|
end interface
|
|
|
|
interface PMPI_Pack_external
|
|
|
|
subroutine PMPI_Pack_external(datarep, inbuf, incount, datatype, outbuf, &
|
|
outsize, position, ierror)
|
|
include 'mpif-config.h'
|
|
character(len=*), intent(in) :: datarep
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ inbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: inbuf
|
|
integer, intent(in) :: incount
|
|
integer, intent(in) :: datatype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ outbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: outbuf
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: outsize
|
|
integer(kind=MPI_ADDRESS_KIND), intent(inout) :: position
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Pack_external
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Pack_external_size
|
|
|
|
subroutine MPI_Pack_external_size(datarep, incount, datatype, size, ierror)
|
|
include 'mpif-config.h'
|
|
character(len=*), intent(in) :: datarep
|
|
integer, intent(in) :: incount
|
|
integer, intent(in) :: datatype
|
|
integer(kind=MPI_ADDRESS_KIND), intent(out) :: size
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Pack_external_size
|
|
|
|
end interface
|
|
|
|
interface PMPI_Pack_external_size
|
|
|
|
subroutine PMPI_Pack_external_size(datarep, incount, datatype, size, ierror)
|
|
include 'mpif-config.h'
|
|
character(len=*), intent(in) :: datarep
|
|
integer, intent(in) :: incount
|
|
integer, intent(in) :: datatype
|
|
integer(kind=MPI_ADDRESS_KIND), intent(out) :: size
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Pack_external_size
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Pack_size
|
|
|
|
subroutine MPI_Pack_size(incount, datatype, comm, size, ierror)
|
|
integer, intent(in) :: incount
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: size
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Pack_size
|
|
|
|
end interface
|
|
|
|
interface PMPI_Pack_size
|
|
|
|
subroutine PMPI_Pack_size(incount, datatype, comm, size, ierror)
|
|
integer, intent(in) :: incount
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: size
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Pack_size
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Pcontrol
|
|
|
|
subroutine MPI_Pcontrol(level)
|
|
integer, intent(in) :: level
|
|
|
|
end subroutine MPI_Pcontrol
|
|
|
|
end interface
|
|
|
|
interface PMPI_Pcontrol
|
|
|
|
subroutine PMPI_Pcontrol(level)
|
|
integer, intent(in) :: level
|
|
|
|
end subroutine PMPI_Pcontrol
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Probe
|
|
|
|
subroutine MPI_Probe(source, tag, comm, status, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: source
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
integer, dimension(MPI_STATUS_SIZE), intent(out) :: status
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Probe
|
|
|
|
end interface
|
|
|
|
interface PMPI_Probe
|
|
|
|
subroutine PMPI_Probe(source, tag, comm, status, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: source
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
integer, dimension(MPI_STATUS_SIZE), intent(out) :: status
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Probe
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Publish_name
|
|
|
|
subroutine MPI_Publish_name(service_name, info, port_name, ierror)
|
|
character(len=*), intent(in) :: service_name
|
|
integer, intent(in) :: info
|
|
character(len=*), intent(in) :: port_name
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Publish_name
|
|
|
|
end interface
|
|
|
|
interface PMPI_Publish_name
|
|
|
|
subroutine PMPI_Publish_name(service_name, info, port_name, ierror)
|
|
character(len=*), intent(in) :: service_name
|
|
integer, intent(in) :: info
|
|
character(len=*), intent(in) :: port_name
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Publish_name
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Put
|
|
|
|
subroutine MPI_Put(origin_addr, origin_count, origin_datatype, target_rank, target_disp, &
|
|
target_count, target_datatype, win, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ origin_addr
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: origin_addr
|
|
integer, intent(in) :: origin_count
|
|
integer, intent(in) :: origin_datatype
|
|
integer, intent(in) :: target_rank
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: target_disp
|
|
integer, intent(in) :: target_count
|
|
integer, intent(in) :: target_datatype
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Put
|
|
|
|
end interface
|
|
|
|
interface PMPI_Put
|
|
|
|
subroutine PMPI_Put(origin_addr, origin_count, origin_datatype, target_rank, target_disp, &
|
|
target_count, target_datatype, win, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ origin_addr
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: origin_addr
|
|
integer, intent(in) :: origin_count
|
|
integer, intent(in) :: origin_datatype
|
|
integer, intent(in) :: target_rank
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: target_disp
|
|
integer, intent(in) :: target_count
|
|
integer, intent(in) :: target_datatype
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Put
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Query_thread
|
|
|
|
subroutine MPI_Query_thread(provided, ierror)
|
|
integer, intent(out) :: provided
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Query_thread
|
|
|
|
end interface
|
|
|
|
interface PMPI_Query_thread
|
|
|
|
subroutine PMPI_Query_thread(provided, ierror)
|
|
integer, intent(out) :: provided
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Query_thread
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Raccumulate
|
|
|
|
subroutine MPI_Raccumulate(origin_addr, origin_count, origin_datatype,&
|
|
target_rank, target_disp, target_count, &
|
|
target_datatype, op, win, request, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ origin_addr
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: origin_addr
|
|
integer, intent(in) :: origin_count
|
|
integer, intent(in) :: origin_datatype
|
|
integer, intent(in) :: target_rank
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: target_disp
|
|
integer, intent(in) :: target_count
|
|
integer, intent(in) :: target_datatype
|
|
integer, intent(in) :: op
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Raccumulate
|
|
|
|
end interface
|
|
|
|
interface PMPI_Raccumulate
|
|
|
|
subroutine PMPI_Raccumulate(origin_addr, origin_count, origin_datatype,&
|
|
target_rank, target_disp, target_count, &
|
|
target_datatype, op, win, request, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ origin_addr
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: origin_addr
|
|
integer, intent(in) :: origin_count
|
|
integer, intent(in) :: origin_datatype
|
|
integer, intent(in) :: target_rank
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: target_disp
|
|
integer, intent(in) :: target_count
|
|
integer, intent(in) :: target_datatype
|
|
integer, intent(in) :: op
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Raccumulate
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Recv
|
|
|
|
subroutine MPI_Recv(buf, count, datatype, source, tag, &
|
|
comm, status, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: buf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: source
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
integer, dimension(MPI_STATUS_SIZE), intent(out) :: status
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Recv
|
|
|
|
end interface
|
|
|
|
interface PMPI_Recv
|
|
|
|
subroutine PMPI_Recv(buf, count, datatype, source, tag, &
|
|
comm, status, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: buf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: source
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
integer, dimension(MPI_STATUS_SIZE), intent(out) :: status
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Recv
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Recv_init
|
|
|
|
subroutine MPI_Recv_init(buf, count, datatype, source, tag, &
|
|
comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: buf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: source
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Recv_init
|
|
|
|
end interface
|
|
|
|
interface PMPI_Recv_init
|
|
|
|
subroutine PMPI_Recv_init(buf, count, datatype, source, tag, &
|
|
comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: buf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: source
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Recv_init
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Reduce
|
|
|
|
subroutine MPI_Reduce(sendbuf, recvbuf, count, datatype, op, &
|
|
root, comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: op
|
|
integer, intent(in) :: root
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Reduce
|
|
|
|
end interface
|
|
|
|
interface PMPI_Reduce
|
|
|
|
subroutine PMPI_Reduce(sendbuf, recvbuf, count, datatype, op, &
|
|
root, comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: op
|
|
integer, intent(in) :: root
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Reduce
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Reduce_local
|
|
|
|
subroutine MPI_Reduce_local(inbuf, inout, count, datatype, op, &
|
|
ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ inbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: inbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ inout
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: inout
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: op
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Reduce_local
|
|
|
|
end interface
|
|
|
|
interface PMPI_Reduce_local
|
|
|
|
subroutine PMPI_Reduce_local(inbuf, inout, count, datatype, op, &
|
|
ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ inbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: inbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ inout
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: inout
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: op
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Reduce_local
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Reduce_scatter
|
|
|
|
subroutine MPI_Reduce_scatter(sendbuf, recvbuf, recvcounts, datatype, op, &
|
|
comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, dimension(*), intent(in) :: recvcounts
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: op
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Reduce_scatter
|
|
|
|
end interface
|
|
|
|
interface PMPI_Reduce_scatter
|
|
|
|
subroutine PMPI_Reduce_scatter(sendbuf, recvbuf, recvcounts, datatype, op, &
|
|
comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, dimension(*), intent(in) :: recvcounts
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: op
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Reduce_scatter
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Reduce_scatter_block
|
|
|
|
subroutine MPI_Reduce_scatter_block(sendbuf, recvbuf, recvcount, datatype, op, &
|
|
comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: recvcount
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: op
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Reduce_scatter_block
|
|
|
|
end interface
|
|
|
|
interface PMPI_Reduce_scatter_block
|
|
|
|
subroutine PMPI_Reduce_scatter_block(sendbuf, recvbuf, recvcount, datatype, op, &
|
|
comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: recvcount
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: op
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Reduce_scatter_block
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Register_datarep
|
|
|
|
subroutine MPI_Register_datarep(datarep, read_conversion_fn, write_conversion_fn, dtype_file_extent_fn, extra_state&
|
|
, ierror)
|
|
include 'mpif-config.h'
|
|
character(len=*), intent(in) :: datarep
|
|
external :: read_conversion_fn
|
|
external :: write_conversion_fn
|
|
external :: dtype_file_extent_fn
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: extra_state
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Register_datarep
|
|
|
|
end interface
|
|
|
|
interface PMPI_Register_datarep
|
|
|
|
subroutine PMPI_Register_datarep(datarep, read_conversion_fn, write_conversion_fn, dtype_file_extent_fn, extra_state&
|
|
, ierror)
|
|
include 'mpif-config.h'
|
|
character(len=*), intent(in) :: datarep
|
|
external :: read_conversion_fn
|
|
external :: write_conversion_fn
|
|
external :: dtype_file_extent_fn
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: extra_state
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Register_datarep
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Request_free
|
|
|
|
subroutine MPI_Request_free(request, ierror)
|
|
integer, intent(inout) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Request_free
|
|
|
|
end interface
|
|
|
|
interface PMPI_Request_free
|
|
|
|
subroutine PMPI_Request_free(request, ierror)
|
|
integer, intent(inout) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Request_free
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Request_get_status
|
|
|
|
subroutine MPI_Request_get_status(request, flag, status, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: request
|
|
logical, intent(out) :: flag
|
|
integer, dimension(MPI_STATUS_SIZE), intent(out) :: status
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Request_get_status
|
|
|
|
end interface
|
|
|
|
interface PMPI_Request_get_status
|
|
|
|
subroutine PMPI_Request_get_status(request, flag, status, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: request
|
|
logical, intent(out) :: flag
|
|
integer, dimension(MPI_STATUS_SIZE), intent(out) :: status
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Request_get_status
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Rget
|
|
|
|
subroutine MPI_Rget(origin_addr, origin_count, origin_datatype, &
|
|
target_rank, target_disp, target_count, &
|
|
target_datatype, win, request, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ origin_addr
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: origin_addr
|
|
integer, intent(in) :: origin_count
|
|
integer, intent(in) :: origin_datatype
|
|
integer, intent(in) :: target_rank
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: target_disp
|
|
integer, intent(in) :: target_count
|
|
integer, intent(in) :: target_datatype
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Rget
|
|
|
|
end interface
|
|
|
|
interface PMPI_Rget
|
|
|
|
subroutine PMPI_Rget(origin_addr, origin_count, origin_datatype, &
|
|
target_rank, target_disp, target_count, &
|
|
target_datatype, win, request, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ origin_addr
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: origin_addr
|
|
integer, intent(in) :: origin_count
|
|
integer, intent(in) :: origin_datatype
|
|
integer, intent(in) :: target_rank
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: target_disp
|
|
integer, intent(in) :: target_count
|
|
integer, intent(in) :: target_datatype
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Rget
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Rget_accumulate
|
|
|
|
subroutine MPI_Rget_accumulate(origin_addr, origin_count, origin_datatype,&
|
|
result_addr, result_count, result_datatype,&
|
|
target_rank, target_disp, target_count, &
|
|
target_datatype, op, win, request, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ origin_addr
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: origin_addr
|
|
integer, intent(in) :: origin_count
|
|
integer, intent(in) :: origin_datatype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ result_addr
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: result_addr
|
|
integer, intent(in) :: result_count
|
|
integer, intent(in) :: result_datatype
|
|
integer, intent(in) :: target_rank
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: target_disp
|
|
integer, intent(in) :: target_count
|
|
integer, intent(in) :: target_datatype
|
|
integer, intent(in) :: op
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Rget_accumulate
|
|
|
|
end interface
|
|
|
|
interface PMPI_Rget_accumulate
|
|
|
|
subroutine PMPI_Rget_accumulate(origin_addr, origin_count, origin_datatype,&
|
|
result_addr, result_count, result_datatype,&
|
|
target_rank, target_disp, target_count, &
|
|
target_datatype, op, win, request, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ origin_addr
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: origin_addr
|
|
integer, intent(in) :: origin_count
|
|
integer, intent(in) :: origin_datatype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ result_addr
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: result_addr
|
|
integer, intent(in) :: result_count
|
|
integer, intent(in) :: result_datatype
|
|
integer, intent(in) :: target_rank
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: target_disp
|
|
integer, intent(in) :: target_count
|
|
integer, intent(in) :: target_datatype
|
|
integer, intent(in) :: op
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Rget_accumulate
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Rput
|
|
|
|
subroutine MPI_Rput(origin_addr, origin_count, origin_datatype, &
|
|
target_rank, target_disp, target_count, &
|
|
target_datatype, win, request, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ origin_addr
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: origin_addr
|
|
integer, intent(in) :: origin_count
|
|
integer, intent(in) :: origin_datatype
|
|
integer, intent(in) :: target_rank
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: target_disp
|
|
integer, intent(in) :: target_count
|
|
integer, intent(in) :: target_datatype
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Rput
|
|
|
|
end interface
|
|
|
|
interface PMPI_Rput
|
|
|
|
subroutine PMPI_Rput(origin_addr, origin_count, origin_datatype, &
|
|
target_rank, target_disp, target_count, &
|
|
target_datatype, win, request, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ origin_addr
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: origin_addr
|
|
integer, intent(in) :: origin_count
|
|
integer, intent(in) :: origin_datatype
|
|
integer, intent(in) :: target_rank
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: target_disp
|
|
integer, intent(in) :: target_count
|
|
integer, intent(in) :: target_datatype
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Rput
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Rsend
|
|
|
|
subroutine MPI_Rsend(ibuf, count, datatype, dest, tag, &
|
|
comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ ibuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: ibuf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: dest
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Rsend
|
|
|
|
end interface
|
|
|
|
interface PMPI_Rsend
|
|
|
|
subroutine PMPI_Rsend(ibuf, count, datatype, dest, tag, &
|
|
comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ ibuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: ibuf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: dest
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Rsend
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Rsend_init
|
|
|
|
subroutine MPI_Rsend_init(buf, count, datatype, dest, tag, &
|
|
comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: buf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: dest
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Rsend_init
|
|
|
|
end interface
|
|
|
|
interface PMPI_Rsend_init
|
|
|
|
subroutine PMPI_Rsend_init(buf, count, datatype, dest, tag, &
|
|
comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: buf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: dest
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Rsend_init
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Scan
|
|
|
|
subroutine MPI_Scan(sendbuf, recvbuf, count, datatype, op, &
|
|
comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: op
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Scan
|
|
|
|
end interface
|
|
|
|
interface PMPI_Scan
|
|
|
|
subroutine PMPI_Scan(sendbuf, recvbuf, count, datatype, op, &
|
|
comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: op
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Scan
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Scatter
|
|
|
|
subroutine MPI_Scatter(sendbuf, sendcount, sendtype, recvbuf, recvcount, &
|
|
recvtype, root, comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: recvcount
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: root
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Scatter
|
|
|
|
end interface
|
|
|
|
interface PMPI_Scatter
|
|
|
|
subroutine PMPI_Scatter(sendbuf, sendcount, sendtype, recvbuf, recvcount, &
|
|
recvtype, root, comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: recvcount
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: root
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Scatter
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Scatterv
|
|
|
|
subroutine MPI_Scatterv(sendbuf, sendcounts, displs, sendtype, recvbuf, &
|
|
recvcount, recvtype, root, comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, dimension(*), intent(in) :: sendcounts
|
|
integer, dimension(*), intent(in) :: displs
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: recvcount
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: root
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Scatterv
|
|
|
|
end interface
|
|
|
|
interface PMPI_Scatterv
|
|
|
|
subroutine PMPI_Scatterv(sendbuf, sendcounts, displs, sendtype, recvbuf, &
|
|
recvcount, recvtype, root, comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, dimension(*), intent(in) :: sendcounts
|
|
integer, dimension(*), intent(in) :: displs
|
|
integer, intent(in) :: sendtype
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: recvcount
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: root
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Scatterv
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Send
|
|
|
|
subroutine MPI_Send(buf, count, datatype, dest, tag, &
|
|
comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: buf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: dest
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Send
|
|
|
|
end interface
|
|
|
|
interface PMPI_Send
|
|
|
|
subroutine PMPI_Send(buf, count, datatype, dest, tag, &
|
|
comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: buf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: dest
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Send
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Send_init
|
|
|
|
subroutine MPI_Send_init(buf, count, datatype, dest, tag, &
|
|
comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: buf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: dest
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Send_init
|
|
|
|
end interface
|
|
|
|
interface PMPI_Send_init
|
|
|
|
subroutine PMPI_Send_init(buf, count, datatype, dest, tag, &
|
|
comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: buf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: dest
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Send_init
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Sendrecv
|
|
|
|
subroutine MPI_Sendrecv(sendbuf, sendcount, sendtype, dest, sendtag, &
|
|
recvbuf, recvcount, recvtype, source, recvtag, comm, status, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
integer, intent(in) :: dest
|
|
integer, intent(in) :: sendtag
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: recvcount
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: source
|
|
integer, intent(in) :: recvtag
|
|
integer, intent(in) :: comm
|
|
integer, dimension(MPI_STATUS_SIZE), intent(out) :: status
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Sendrecv
|
|
|
|
end interface
|
|
|
|
interface PMPI_Sendrecv
|
|
|
|
subroutine PMPI_Sendrecv(sendbuf, sendcount, sendtype, dest, sendtag, &
|
|
recvbuf, recvcount, recvtype, source, recvtag, comm, status, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ sendbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: sendbuf
|
|
integer, intent(in) :: sendcount
|
|
integer, intent(in) :: sendtype
|
|
integer, intent(in) :: dest
|
|
integer, intent(in) :: sendtag
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ recvbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: recvbuf
|
|
integer, intent(in) :: recvcount
|
|
integer, intent(in) :: recvtype
|
|
integer, intent(in) :: source
|
|
integer, intent(in) :: recvtag
|
|
integer, intent(in) :: comm
|
|
integer, dimension(MPI_STATUS_SIZE), intent(out) :: status
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Sendrecv
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Sendrecv_replace
|
|
|
|
subroutine MPI_Sendrecv_replace(buf, count, datatype, dest, sendtag, &
|
|
source, recvtag, comm, status, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: buf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: dest
|
|
integer, intent(in) :: sendtag
|
|
integer, intent(in) :: source
|
|
integer, intent(in) :: recvtag
|
|
integer, intent(in) :: comm
|
|
integer, dimension(MPI_STATUS_SIZE), intent(out) :: status
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Sendrecv_replace
|
|
|
|
end interface
|
|
|
|
interface PMPI_Sendrecv_replace
|
|
|
|
subroutine PMPI_Sendrecv_replace(buf, count, datatype, dest, sendtag, &
|
|
source, recvtag, comm, status, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: buf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: dest
|
|
integer, intent(in) :: sendtag
|
|
integer, intent(in) :: source
|
|
integer, intent(in) :: recvtag
|
|
integer, intent(in) :: comm
|
|
integer, dimension(MPI_STATUS_SIZE), intent(out) :: status
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Sendrecv_replace
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Ssend
|
|
|
|
subroutine MPI_Ssend(buf, count, datatype, dest, tag, &
|
|
comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: buf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: dest
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Ssend
|
|
|
|
end interface
|
|
|
|
interface PMPI_Ssend
|
|
|
|
subroutine PMPI_Ssend(buf, count, datatype, dest, tag, &
|
|
comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: buf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: dest
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Ssend
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Ssend_init
|
|
|
|
subroutine MPI_Ssend_init(buf, count, datatype, dest, tag, &
|
|
comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: buf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: dest
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Ssend_init
|
|
|
|
end interface
|
|
|
|
interface PMPI_Ssend_init
|
|
|
|
subroutine PMPI_Ssend_init(buf, count, datatype, dest, tag, &
|
|
comm, request, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: buf
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: dest
|
|
integer, intent(in) :: tag
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Ssend_init
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Start
|
|
|
|
subroutine MPI_Start(request, ierror)
|
|
integer, intent(inout) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Start
|
|
|
|
end interface
|
|
|
|
interface PMPI_Start
|
|
|
|
subroutine PMPI_Start(request, ierror)
|
|
integer, intent(inout) :: request
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Start
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Startall
|
|
|
|
subroutine MPI_Startall(count, array_of_requests, ierror)
|
|
integer, intent(in) :: count
|
|
integer, dimension(*), intent(inout) :: array_of_requests
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Startall
|
|
|
|
end interface
|
|
|
|
interface PMPI_Startall
|
|
|
|
subroutine PMPI_Startall(count, array_of_requests, ierror)
|
|
integer, intent(in) :: count
|
|
integer, dimension(*), intent(inout) :: array_of_requests
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Startall
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Status_set_cancelled
|
|
|
|
subroutine MPI_Status_set_cancelled(status, flag, ierror)
|
|
include 'mpif-config.h'
|
|
integer, dimension(MPI_STATUS_SIZE), intent(inout) :: status
|
|
logical, intent(in) :: flag
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Status_set_cancelled
|
|
|
|
end interface
|
|
|
|
interface PMPI_Status_set_cancelled
|
|
|
|
subroutine PMPI_Status_set_cancelled(status, flag, ierror)
|
|
include 'mpif-config.h'
|
|
integer, dimension(MPI_STATUS_SIZE), intent(inout) :: status
|
|
logical, intent(in) :: flag
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Status_set_cancelled
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Status_set_elements
|
|
|
|
subroutine MPI_Status_set_elements(status, datatype, count, ierror)
|
|
include 'mpif-config.h'
|
|
integer, dimension(MPI_STATUS_SIZE), intent(inout) :: status
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: count
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Status_set_elements
|
|
|
|
end interface
|
|
|
|
interface PMPI_Status_set_elements
|
|
|
|
subroutine PMPI_Status_set_elements(status, datatype, count, ierror)
|
|
include 'mpif-config.h'
|
|
integer, dimension(MPI_STATUS_SIZE), intent(inout) :: status
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: count
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Status_set_elements
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Status_set_elements_x
|
|
|
|
subroutine MPI_Status_set_elements_x(status, datatype, count, ierror)
|
|
include 'mpif-config.h'
|
|
integer, dimension(MPI_STATUS_SIZE), intent(inout) :: status
|
|
integer, intent(in) :: datatype
|
|
integer(kind=MPI_COUNT_KIND), intent(in) :: count
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Status_set_elements_x
|
|
|
|
end interface
|
|
|
|
interface PMPI_Status_set_elements_x
|
|
|
|
subroutine PMPI_Status_set_elements_x(status, datatype, count, ierror)
|
|
include 'mpif-config.h'
|
|
integer, dimension(MPI_STATUS_SIZE), intent(inout) :: status
|
|
integer, intent(in) :: datatype
|
|
integer(kind=MPI_COUNT_KIND), intent(in) :: count
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Status_set_elements_x
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Test
|
|
|
|
subroutine MPI_Test(request, flag, status, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(inout) :: request
|
|
logical, intent(out) :: flag
|
|
integer, dimension(MPI_STATUS_SIZE), intent(out) :: status
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Test
|
|
|
|
end interface
|
|
|
|
interface PMPI_Test
|
|
|
|
subroutine PMPI_Test(request, flag, status, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(inout) :: request
|
|
logical, intent(out) :: flag
|
|
integer, dimension(MPI_STATUS_SIZE), intent(out) :: status
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Test
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Test_cancelled
|
|
|
|
subroutine MPI_Test_cancelled(status, flag, ierror)
|
|
include 'mpif-config.h'
|
|
integer, dimension(MPI_STATUS_SIZE), intent(in) :: status
|
|
logical, intent(out) :: flag
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Test_cancelled
|
|
|
|
end interface
|
|
|
|
interface PMPI_Test_cancelled
|
|
|
|
subroutine PMPI_Test_cancelled(status, flag, ierror)
|
|
include 'mpif-config.h'
|
|
integer, dimension(MPI_STATUS_SIZE), intent(in) :: status
|
|
logical, intent(out) :: flag
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Test_cancelled
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Testall
|
|
|
|
subroutine MPI_Testall(count, array_of_requests, flag, array_of_statuses, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: count
|
|
integer, dimension(count), intent(inout) :: array_of_requests
|
|
logical, intent(out) :: flag
|
|
integer, dimension(MPI_STATUS_SIZE, *), intent(out) :: array_of_statuses
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Testall
|
|
|
|
end interface
|
|
|
|
interface PMPI_Testall
|
|
|
|
subroutine PMPI_Testall(count, array_of_requests, flag, array_of_statuses, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: count
|
|
integer, dimension(count), intent(inout) :: array_of_requests
|
|
logical, intent(out) :: flag
|
|
integer, dimension(MPI_STATUS_SIZE, *), intent(out) :: array_of_statuses
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Testall
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Testany
|
|
|
|
subroutine MPI_Testany(count, array_of_requests, index, flag, status&
|
|
, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: count
|
|
integer, dimension(count), intent(inout) :: array_of_requests
|
|
integer, intent(out) :: index
|
|
logical, intent(out) :: flag
|
|
integer, dimension(MPI_STATUS_SIZE), intent(out) :: status
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Testany
|
|
|
|
end interface
|
|
|
|
interface PMPI_Testany
|
|
|
|
subroutine PMPI_Testany(count, array_of_requests, index, flag, status&
|
|
, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: count
|
|
integer, dimension(count), intent(inout) :: array_of_requests
|
|
integer, intent(out) :: index
|
|
logical, intent(out) :: flag
|
|
integer, dimension(MPI_STATUS_SIZE), intent(out) :: status
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Testany
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Testsome
|
|
|
|
subroutine MPI_Testsome(incount, array_of_requests, outcount, array_of_indices, array_of_statuses&
|
|
, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: incount
|
|
integer, dimension(incount), intent(inout) :: array_of_requests
|
|
integer, intent(out) :: outcount
|
|
integer, dimension(*), intent(out) :: array_of_indices
|
|
integer, dimension(MPI_STATUS_SIZE, *), intent(out) :: array_of_statuses
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Testsome
|
|
|
|
end interface
|
|
|
|
interface PMPI_Testsome
|
|
|
|
subroutine PMPI_Testsome(incount, array_of_requests, outcount, array_of_indices, array_of_statuses&
|
|
, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: incount
|
|
integer, dimension(incount), intent(inout) :: array_of_requests
|
|
integer, intent(out) :: outcount
|
|
integer, dimension(*), intent(out) :: array_of_indices
|
|
integer, dimension(MPI_STATUS_SIZE, *), intent(out) :: array_of_statuses
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Testsome
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Topo_test
|
|
|
|
subroutine MPI_Topo_test(comm, status, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: status
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Topo_test
|
|
|
|
end interface
|
|
|
|
interface PMPI_Topo_test
|
|
|
|
subroutine PMPI_Topo_test(comm, status, ierror)
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: status
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Topo_test
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Type_commit
|
|
|
|
subroutine MPI_Type_commit(datatype, ierror)
|
|
integer, intent(inout) :: datatype
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Type_commit
|
|
|
|
end interface
|
|
|
|
interface PMPI_Type_commit
|
|
|
|
subroutine PMPI_Type_commit(datatype, ierror)
|
|
integer, intent(inout) :: datatype
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Type_commit
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Type_contiguous
|
|
|
|
subroutine MPI_Type_contiguous(count, oldtype, newtype, ierror)
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: oldtype
|
|
integer, intent(out) :: newtype
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Type_contiguous
|
|
|
|
end interface
|
|
|
|
interface PMPI_Type_contiguous
|
|
|
|
subroutine PMPI_Type_contiguous(count, oldtype, newtype, ierror)
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: oldtype
|
|
integer, intent(out) :: newtype
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Type_contiguous
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Type_create_darray
|
|
|
|
subroutine MPI_Type_create_darray(size, rank, ndims, gsize_array, distrib_array, &
|
|
darg_array, psize_array, order, oldtype, newtype, ierror)
|
|
integer, intent(in) :: size
|
|
integer, intent(in) :: rank
|
|
integer, intent(in) :: ndims
|
|
integer, dimension(*), intent(in) :: gsize_array
|
|
integer, dimension(*), intent(in) :: distrib_array
|
|
integer, dimension(*), intent(in) :: darg_array
|
|
integer, dimension(*), intent(in) :: psize_array
|
|
integer, intent(in) :: order
|
|
integer, intent(in) :: oldtype
|
|
integer, intent(out) :: newtype
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Type_create_darray
|
|
|
|
end interface
|
|
|
|
interface PMPI_Type_create_darray
|
|
|
|
subroutine PMPI_Type_create_darray(size, rank, ndims, gsize_array, distrib_array, &
|
|
darg_array, psize_array, order, oldtype, newtype, ierror)
|
|
integer, intent(in) :: size
|
|
integer, intent(in) :: rank
|
|
integer, intent(in) :: ndims
|
|
integer, dimension(*), intent(in) :: gsize_array
|
|
integer, dimension(*), intent(in) :: distrib_array
|
|
integer, dimension(*), intent(in) :: darg_array
|
|
integer, dimension(*), intent(in) :: psize_array
|
|
integer, intent(in) :: order
|
|
integer, intent(in) :: oldtype
|
|
integer, intent(out) :: newtype
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Type_create_darray
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Type_create_f90_complex
|
|
|
|
subroutine MPI_Type_create_f90_complex(p, r, newtype, ierror)
|
|
integer, intent(in) :: p
|
|
integer, intent(in) :: r
|
|
integer, intent(out) :: newtype
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Type_create_f90_complex
|
|
|
|
end interface
|
|
|
|
interface PMPI_Type_create_f90_complex
|
|
|
|
subroutine PMPI_Type_create_f90_complex(p, r, newtype, ierror)
|
|
integer, intent(in) :: p
|
|
integer, intent(in) :: r
|
|
integer, intent(out) :: newtype
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Type_create_f90_complex
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Type_create_f90_integer
|
|
|
|
subroutine MPI_Type_create_f90_integer(r, newtype, ierror)
|
|
integer, intent(in) :: r
|
|
integer, intent(out) :: newtype
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Type_create_f90_integer
|
|
|
|
end interface
|
|
|
|
interface PMPI_Type_create_f90_integer
|
|
|
|
subroutine PMPI_Type_create_f90_integer(r, newtype, ierror)
|
|
integer, intent(in) :: r
|
|
integer, intent(out) :: newtype
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Type_create_f90_integer
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Type_create_f90_real
|
|
|
|
subroutine MPI_Type_create_f90_real(p, r, newtype, ierror)
|
|
integer, intent(in) :: p
|
|
integer, intent(in) :: r
|
|
integer, intent(out) :: newtype
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Type_create_f90_real
|
|
|
|
end interface
|
|
|
|
interface PMPI_Type_create_f90_real
|
|
|
|
subroutine PMPI_Type_create_f90_real(p, r, newtype, ierror)
|
|
integer, intent(in) :: p
|
|
integer, intent(in) :: r
|
|
integer, intent(out) :: newtype
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Type_create_f90_real
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Type_create_hindexed
|
|
|
|
subroutine MPI_Type_create_hindexed(count, array_of_blocklengths, array_of_displacements, oldtype, newtype&
|
|
, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: count
|
|
integer, dimension(*), intent(in) :: array_of_blocklengths
|
|
integer(kind=MPI_ADDRESS_KIND), dimension(*), intent(in) :: array_of_displacements
|
|
integer, intent(in) :: oldtype
|
|
integer, intent(out) :: newtype
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Type_create_hindexed
|
|
|
|
end interface
|
|
|
|
interface PMPI_Type_create_hindexed
|
|
|
|
subroutine PMPI_Type_create_hindexed(count, array_of_blocklengths, array_of_displacements, oldtype, newtype&
|
|
, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: count
|
|
integer, dimension(*), intent(in) :: array_of_blocklengths
|
|
integer(kind=MPI_ADDRESS_KIND), dimension(*), intent(in) :: array_of_displacements
|
|
integer, intent(in) :: oldtype
|
|
integer, intent(out) :: newtype
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Type_create_hindexed
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Type_create_hindexed_block
|
|
|
|
subroutine MPI_Type_create_hindexed_block(count, blocklength, array_of_displacements, oldtype, newtype&
|
|
, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: blocklength
|
|
integer(kind=MPI_ADDRESS_KIND), dimension(*), intent(in) :: array_of_displacements
|
|
integer, intent(in) :: oldtype
|
|
integer, intent(out) :: newtype
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Type_create_hindexed_block
|
|
|
|
end interface
|
|
|
|
interface PMPI_Type_create_hindexed_block
|
|
|
|
subroutine PMPI_Type_create_hindexed_block(count, blocklength, array_of_displacements, oldtype, newtype&
|
|
, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: blocklength
|
|
integer(kind=MPI_ADDRESS_KIND), dimension(*), intent(in) :: array_of_displacements
|
|
integer, intent(in) :: oldtype
|
|
integer, intent(out) :: newtype
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Type_create_hindexed_block
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Type_create_hvector
|
|
|
|
subroutine MPI_Type_create_hvector(count, blocklength, stride, oldtype, newtype&
|
|
, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: blocklength
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: stride
|
|
integer, intent(in) :: oldtype
|
|
integer, intent(out) :: newtype
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Type_create_hvector
|
|
|
|
end interface
|
|
|
|
interface PMPI_Type_create_hvector
|
|
|
|
subroutine PMPI_Type_create_hvector(count, blocklength, stride, oldtype, newtype&
|
|
, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: blocklength
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: stride
|
|
integer, intent(in) :: oldtype
|
|
integer, intent(out) :: newtype
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Type_create_hvector
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Type_create_indexed_block
|
|
|
|
subroutine MPI_Type_create_indexed_block(count, blocklength, array_of_displacements, oldtype, newtype&
|
|
, ierror)
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: blocklength
|
|
integer, dimension(*), intent(in) :: array_of_displacements
|
|
integer, intent(in) :: oldtype
|
|
integer, intent(out) :: newtype
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Type_create_indexed_block
|
|
|
|
end interface
|
|
|
|
interface PMPI_Type_create_indexed_block
|
|
|
|
subroutine PMPI_Type_create_indexed_block(count, blocklength, array_of_displacements, oldtype, newtype&
|
|
, ierror)
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: blocklength
|
|
integer, dimension(*), intent(in) :: array_of_displacements
|
|
integer, intent(in) :: oldtype
|
|
integer, intent(out) :: newtype
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Type_create_indexed_block
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Type_create_keyval
|
|
|
|
subroutine MPI_Type_create_keyval(type_copy_attr_fn, type_delete_attr_fn, type_keyval, extra_state, ierror)
|
|
include 'mpif-config.h'
|
|
external :: type_copy_attr_fn
|
|
external :: type_delete_attr_fn
|
|
integer, intent(out) :: type_keyval
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: extra_state
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Type_create_keyval
|
|
|
|
end interface
|
|
|
|
interface PMPI_Type_create_keyval
|
|
|
|
subroutine PMPI_Type_create_keyval(type_copy_attr_fn, type_delete_attr_fn, type_keyval, extra_state, ierror)
|
|
include 'mpif-config.h'
|
|
external :: type_copy_attr_fn
|
|
external :: type_delete_attr_fn
|
|
integer, intent(out) :: type_keyval
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: extra_state
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Type_create_keyval
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Type_create_resized
|
|
|
|
subroutine MPI_Type_create_resized(oldtype, lb, extent, newtype, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: oldtype
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: lb
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: extent
|
|
integer, intent(out) :: newtype
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Type_create_resized
|
|
|
|
end interface
|
|
|
|
interface PMPI_Type_create_resized
|
|
|
|
subroutine PMPI_Type_create_resized(oldtype, lb, extent, newtype, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: oldtype
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: lb
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: extent
|
|
integer, intent(out) :: newtype
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Type_create_resized
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Type_create_struct
|
|
|
|
subroutine MPI_Type_create_struct(count, array_of_block_lengths, array_of_displacements, array_of_types, newtype&
|
|
, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: count
|
|
integer, dimension(*), intent(in) :: array_of_block_lengths
|
|
integer(kind=MPI_ADDRESS_KIND), dimension(*), intent(in) :: array_of_displacements
|
|
integer, dimension(*), intent(in) :: array_of_types
|
|
integer, intent(out) :: newtype
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Type_create_struct
|
|
|
|
end interface
|
|
|
|
interface PMPI_Type_create_struct
|
|
|
|
subroutine PMPI_Type_create_struct(count, array_of_block_lengths, array_of_displacements, array_of_types, newtype&
|
|
, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: count
|
|
integer, dimension(*), intent(in) :: array_of_block_lengths
|
|
integer(kind=MPI_ADDRESS_KIND), dimension(*), intent(in) :: array_of_displacements
|
|
integer, dimension(*), intent(in) :: array_of_types
|
|
integer, intent(out) :: newtype
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Type_create_struct
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Type_create_subarray
|
|
|
|
subroutine MPI_Type_create_subarray(ndims, size_array, subsize_array, start_array, order, &
|
|
oldtype, newtype, ierror)
|
|
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) :: ierror
|
|
end subroutine MPI_Type_create_subarray
|
|
|
|
end interface
|
|
|
|
interface PMPI_Type_create_subarray
|
|
|
|
subroutine PMPI_Type_create_subarray(ndims, size_array, subsize_array, start_array, order, &
|
|
oldtype, newtype, ierror)
|
|
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) :: ierror
|
|
end subroutine PMPI_Type_create_subarray
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Type_delete_attr
|
|
|
|
subroutine MPI_Type_delete_attr(datatype, type_keyval, ierror)
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: type_keyval
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Type_delete_attr
|
|
|
|
end interface
|
|
|
|
interface PMPI_Type_delete_attr
|
|
|
|
subroutine PMPI_Type_delete_attr(datatype, type_keyval, ierror)
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: type_keyval
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Type_delete_attr
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Type_dup
|
|
|
|
subroutine MPI_Type_dup(datatype, newtype, ierror)
|
|
integer, intent(in) :: datatype
|
|
integer, intent(out) :: newtype
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Type_dup
|
|
|
|
end interface
|
|
|
|
interface PMPI_Type_dup
|
|
|
|
subroutine PMPI_Type_dup(datatype, newtype, ierror)
|
|
integer, intent(in) :: datatype
|
|
integer, intent(out) :: newtype
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Type_dup
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Type_free
|
|
|
|
subroutine MPI_Type_free(datatype, ierror)
|
|
integer, intent(inout) :: datatype
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Type_free
|
|
|
|
end interface
|
|
|
|
interface PMPI_Type_free
|
|
|
|
subroutine PMPI_Type_free(datatype, ierror)
|
|
integer, intent(inout) :: datatype
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Type_free
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Type_free_keyval
|
|
|
|
subroutine MPI_Type_free_keyval(type_keyval, ierror)
|
|
integer, intent(inout) :: type_keyval
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Type_free_keyval
|
|
|
|
end interface
|
|
|
|
interface PMPI_Type_free_keyval
|
|
|
|
subroutine PMPI_Type_free_keyval(type_keyval, ierror)
|
|
integer, intent(inout) :: type_keyval
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Type_free_keyval
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Type_get_attr
|
|
|
|
subroutine MPI_Type_get_attr(datatype, type_keyval, attribute_val, flag, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: type_keyval
|
|
integer(kind=MPI_ADDRESS_KIND), intent(out) :: attribute_val
|
|
logical, intent(out) :: flag
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Type_get_attr
|
|
|
|
end interface
|
|
|
|
interface PMPI_Type_get_attr
|
|
|
|
subroutine PMPI_Type_get_attr(datatype, type_keyval, attribute_val, flag, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: type_keyval
|
|
integer(kind=MPI_ADDRESS_KIND), intent(out) :: attribute_val
|
|
logical, intent(out) :: flag
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Type_get_attr
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Type_get_contents
|
|
|
|
subroutine MPI_Type_get_contents(datatype, max_integers, max_addresses, max_datatypes, array_of_integers, &
|
|
array_of_addresses, array_of_datatypes, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: max_integers
|
|
integer, intent(in) :: max_addresses
|
|
integer, intent(in) :: max_datatypes
|
|
integer, dimension(*), intent(out) :: array_of_integers
|
|
integer(kind=MPI_ADDRESS_KIND), dimension(*), intent(out) :: array_of_addresses
|
|
integer, dimension(*), intent(out) :: array_of_datatypes
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Type_get_contents
|
|
|
|
end interface
|
|
|
|
interface PMPI_Type_get_contents
|
|
|
|
subroutine PMPI_Type_get_contents(datatype, max_integers, max_addresses, max_datatypes, array_of_integers, &
|
|
array_of_addresses, array_of_datatypes, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: max_integers
|
|
integer, intent(in) :: max_addresses
|
|
integer, intent(in) :: max_datatypes
|
|
integer, dimension(*), intent(out) :: array_of_integers
|
|
integer(kind=MPI_ADDRESS_KIND), dimension(*), intent(out) :: array_of_addresses
|
|
integer, dimension(*), intent(out) :: array_of_datatypes
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Type_get_contents
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Type_get_envelope
|
|
|
|
subroutine MPI_Type_get_envelope(datatype, num_integers, num_addresses, num_datatypes, combiner&
|
|
, ierror)
|
|
integer, intent(in) :: datatype
|
|
integer, intent(out) :: num_integers
|
|
integer, intent(out) :: num_addresses
|
|
integer, intent(out) :: num_datatypes
|
|
integer, intent(out) :: combiner
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Type_get_envelope
|
|
|
|
end interface
|
|
|
|
interface PMPI_Type_get_envelope
|
|
|
|
subroutine PMPI_Type_get_envelope(datatype, num_integers, num_addresses, num_datatypes, combiner&
|
|
, ierror)
|
|
integer, intent(in) :: datatype
|
|
integer, intent(out) :: num_integers
|
|
integer, intent(out) :: num_addresses
|
|
integer, intent(out) :: num_datatypes
|
|
integer, intent(out) :: combiner
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Type_get_envelope
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Type_get_extent
|
|
|
|
subroutine MPI_Type_get_extent(datatype, lb, extent, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: datatype
|
|
integer(kind=MPI_ADDRESS_KIND), intent(out) :: lb
|
|
integer(kind=MPI_ADDRESS_KIND), intent(out) :: extent
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Type_get_extent
|
|
|
|
end interface
|
|
|
|
interface PMPI_Type_get_extent
|
|
|
|
subroutine PMPI_Type_get_extent(datatype, lb, extent, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: datatype
|
|
integer(kind=MPI_ADDRESS_KIND), intent(out) :: lb
|
|
integer(kind=MPI_ADDRESS_KIND), intent(out) :: extent
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Type_get_extent
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Type_get_extent_x
|
|
|
|
subroutine MPI_Type_get_extent_x(datatype, lb, extent, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: datatype
|
|
integer(kind=MPI_COUNT_KIND), intent(out) :: lb
|
|
integer(kind=MPI_COUNT_KIND), intent(out) :: extent
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Type_get_extent_x
|
|
|
|
end interface
|
|
|
|
interface PMPI_Type_get_extent_x
|
|
|
|
subroutine PMPI_Type_get_extent_x(datatype, lb, extent, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: datatype
|
|
integer(kind=MPI_COUNT_KIND), intent(out) :: lb
|
|
integer(kind=MPI_COUNT_KIND), intent(out) :: extent
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Type_get_extent_x
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Type_get_name
|
|
|
|
subroutine MPI_Type_get_name(datatype, type_name, resultlen, ierror)
|
|
integer, intent(in) :: datatype
|
|
character(len=*), intent(out) :: type_name
|
|
integer, intent(out) :: resultlen
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Type_get_name
|
|
|
|
end interface
|
|
|
|
interface PMPI_Type_get_name
|
|
|
|
subroutine PMPI_Type_get_name(datatype, type_name, resultlen, ierror)
|
|
integer, intent(in) :: datatype
|
|
character(len=*), intent(out) :: type_name
|
|
integer, intent(out) :: resultlen
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Type_get_name
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Type_get_true_extent
|
|
|
|
subroutine MPI_Type_get_true_extent(datatype, true_lb, true_extent, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: datatype
|
|
integer(kind=MPI_ADDRESS_KIND), intent(out) :: true_lb
|
|
integer(kind=MPI_ADDRESS_KIND), intent(out) :: true_extent
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Type_get_true_extent
|
|
|
|
end interface
|
|
|
|
interface PMPI_Type_get_true_extent
|
|
|
|
subroutine PMPI_Type_get_true_extent(datatype, true_lb, true_extent, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: datatype
|
|
integer(kind=MPI_ADDRESS_KIND), intent(out) :: true_lb
|
|
integer(kind=MPI_ADDRESS_KIND), intent(out) :: true_extent
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Type_get_true_extent
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Type_get_true_extent_x
|
|
|
|
subroutine MPI_Type_get_true_extent_x(datatype, true_lb, true_extent, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: datatype
|
|
integer(kind=MPI_COUNT_KIND), intent(out) :: true_lb
|
|
integer(kind=MPI_COUNT_KIND), intent(out) :: true_extent
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Type_get_true_extent_x
|
|
|
|
end interface
|
|
|
|
interface PMPI_Type_get_true_extent_x
|
|
|
|
subroutine PMPI_Type_get_true_extent_x(datatype, true_lb, true_extent, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: datatype
|
|
integer(kind=MPI_COUNT_KIND), intent(out) :: true_lb
|
|
integer(kind=MPI_COUNT_KIND), intent(out) :: true_extent
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Type_get_true_extent_x
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Type_indexed
|
|
|
|
subroutine MPI_Type_indexed(count, array_of_blocklengths, array_of_displacements, oldtype, newtype&
|
|
, ierror)
|
|
integer, intent(in) :: count
|
|
integer, dimension(*), intent(in) :: array_of_blocklengths
|
|
integer, dimension(*), intent(in) :: array_of_displacements
|
|
integer, intent(in) :: oldtype
|
|
integer, intent(out) :: newtype
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Type_indexed
|
|
|
|
end interface
|
|
|
|
interface PMPI_Type_indexed
|
|
|
|
subroutine PMPI_Type_indexed(count, array_of_blocklengths, array_of_displacements, oldtype, newtype&
|
|
, ierror)
|
|
integer, intent(in) :: count
|
|
integer, dimension(*), intent(in) :: array_of_blocklengths
|
|
integer, dimension(*), intent(in) :: array_of_displacements
|
|
integer, intent(in) :: oldtype
|
|
integer, intent(out) :: newtype
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Type_indexed
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Type_match_size
|
|
|
|
subroutine MPI_Type_match_size(typeclass, size, datatype, ierror)
|
|
integer, intent(in) :: typeclass
|
|
integer, intent(in) :: size
|
|
integer, intent(out) :: datatype
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Type_match_size
|
|
|
|
end interface
|
|
|
|
interface PMPI_Type_match_size
|
|
|
|
subroutine PMPI_Type_match_size(typeclass, size, datatype, ierror)
|
|
integer, intent(in) :: typeclass
|
|
integer, intent(in) :: size
|
|
integer, intent(out) :: datatype
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Type_match_size
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Type_set_attr
|
|
|
|
subroutine MPI_Type_set_attr(datatype, type_keyval, attr_val, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: type_keyval
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: attr_val
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Type_set_attr
|
|
|
|
end interface
|
|
|
|
interface PMPI_Type_set_attr
|
|
|
|
subroutine PMPI_Type_set_attr(datatype, type_keyval, attr_val, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: type_keyval
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: attr_val
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Type_set_attr
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Type_set_name
|
|
|
|
subroutine MPI_Type_set_name(datatype, type_name, ierror)
|
|
integer, intent(in) :: datatype
|
|
character(len=*), intent(in) :: type_name
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Type_set_name
|
|
|
|
end interface
|
|
|
|
interface PMPI_Type_set_name
|
|
|
|
subroutine PMPI_Type_set_name(datatype, type_name, ierror)
|
|
integer, intent(in) :: datatype
|
|
character(len=*), intent(in) :: type_name
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Type_set_name
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Type_size
|
|
|
|
subroutine MPI_Type_size(datatype, size, ierror)
|
|
integer, intent(in) :: datatype
|
|
integer, intent(out) :: size
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Type_size
|
|
|
|
end interface
|
|
|
|
interface PMPI_Type_size
|
|
|
|
subroutine PMPI_Type_size(datatype, size, ierror)
|
|
integer, intent(in) :: datatype
|
|
integer, intent(out) :: size
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Type_size
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Type_size_x
|
|
|
|
subroutine MPI_Type_size_x(datatype, size, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: datatype
|
|
integer(kind=MPI_COUNT_KIND), intent(out) :: size
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Type_size_x
|
|
|
|
end interface
|
|
|
|
interface PMPI_Type_size_x
|
|
|
|
subroutine PMPI_Type_size_x(datatype, size, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: datatype
|
|
integer(kind=MPI_COUNT_KIND), intent(out) :: size
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Type_size_x
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Type_vector
|
|
|
|
subroutine MPI_Type_vector(count, blocklength, stride, oldtype, newtype&
|
|
, ierror)
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: blocklength
|
|
integer, intent(in) :: stride
|
|
integer, intent(in) :: oldtype
|
|
integer, intent(out) :: newtype
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Type_vector
|
|
|
|
end interface
|
|
|
|
interface PMPI_Type_vector
|
|
|
|
subroutine PMPI_Type_vector(count, blocklength, stride, oldtype, newtype&
|
|
, ierror)
|
|
integer, intent(in) :: count
|
|
integer, intent(in) :: blocklength
|
|
integer, intent(in) :: stride
|
|
integer, intent(in) :: oldtype
|
|
integer, intent(out) :: newtype
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Type_vector
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Unpack
|
|
|
|
subroutine MPI_Unpack(inbuf, insize, position, outbuf, outcount, &
|
|
datatype, comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ inbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: inbuf
|
|
integer, intent(in) :: insize
|
|
integer, intent(inout) :: position
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ outbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: outbuf
|
|
integer, intent(in) :: outcount
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Unpack
|
|
|
|
end interface
|
|
|
|
interface PMPI_Unpack
|
|
|
|
subroutine PMPI_Unpack(inbuf, insize, position, outbuf, outcount, &
|
|
datatype, comm, ierror)
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ inbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: inbuf
|
|
integer, intent(in) :: insize
|
|
integer, intent(inout) :: position
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ outbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: outbuf
|
|
integer, intent(in) :: outcount
|
|
integer, intent(in) :: datatype
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Unpack
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Unpack_external
|
|
|
|
subroutine MPI_Unpack_external(datarep, inbuf, insize, position, outbuf, &
|
|
outcount, datatype, ierror)
|
|
include 'mpif-config.h'
|
|
character(len=*), intent(in) :: datarep
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ inbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: inbuf
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: insize
|
|
integer(kind=MPI_ADDRESS_KIND), intent(inout) :: position
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ outbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: outbuf
|
|
integer, intent(in) :: outcount
|
|
integer, intent(in) :: datatype
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Unpack_external
|
|
|
|
end interface
|
|
|
|
interface PMPI_Unpack_external
|
|
|
|
subroutine PMPI_Unpack_external(datarep, inbuf, insize, position, outbuf, &
|
|
outcount, datatype, ierror)
|
|
include 'mpif-config.h'
|
|
character(len=*), intent(in) :: datarep
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ inbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: inbuf
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: insize
|
|
integer(kind=MPI_ADDRESS_KIND), intent(inout) :: position
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ outbuf
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: outbuf
|
|
integer, intent(in) :: outcount
|
|
integer, intent(in) :: datatype
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Unpack_external
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Unpublish_name
|
|
|
|
subroutine MPI_Unpublish_name(service_name, info, port_name, ierror)
|
|
character(len=*), intent(in) :: service_name
|
|
integer, intent(in) :: info
|
|
character(len=*), intent(in) :: port_name
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Unpublish_name
|
|
|
|
end interface
|
|
|
|
interface PMPI_Unpublish_name
|
|
|
|
subroutine PMPI_Unpublish_name(service_name, info, port_name, ierror)
|
|
character(len=*), intent(in) :: service_name
|
|
integer, intent(in) :: info
|
|
character(len=*), intent(in) :: port_name
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Unpublish_name
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Wait
|
|
|
|
subroutine MPI_Wait(request, status, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(inout) :: request
|
|
integer, dimension(MPI_STATUS_SIZE), intent(out) :: status
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Wait
|
|
|
|
end interface
|
|
|
|
interface PMPI_Wait
|
|
|
|
subroutine PMPI_Wait(request, status, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(inout) :: request
|
|
integer, dimension(MPI_STATUS_SIZE), intent(out) :: status
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Wait
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Waitall
|
|
|
|
subroutine MPI_Waitall(count, array_of_requests, array_of_statuses, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: count
|
|
integer, dimension(count), intent(inout) :: array_of_requests
|
|
integer, dimension(MPI_STATUS_SIZE, *), intent(out) :: array_of_statuses
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Waitall
|
|
|
|
end interface
|
|
|
|
interface PMPI_Waitall
|
|
|
|
subroutine PMPI_Waitall(count, array_of_requests, array_of_statuses, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: count
|
|
integer, dimension(count), intent(inout) :: array_of_requests
|
|
integer, dimension(MPI_STATUS_SIZE, *), intent(out) :: array_of_statuses
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Waitall
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Waitany
|
|
|
|
subroutine MPI_Waitany(count, array_of_requests, index, status, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: count
|
|
integer, dimension(count), intent(inout) :: array_of_requests
|
|
integer, intent(out) :: index
|
|
integer, dimension(MPI_STATUS_SIZE), intent(out) :: status
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Waitany
|
|
|
|
end interface
|
|
|
|
interface PMPI_Waitany
|
|
|
|
subroutine PMPI_Waitany(count, array_of_requests, index, status, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: count
|
|
integer, dimension(count), intent(inout) :: array_of_requests
|
|
integer, intent(out) :: index
|
|
integer, dimension(MPI_STATUS_SIZE), intent(out) :: status
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Waitany
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Waitsome
|
|
|
|
subroutine MPI_Waitsome(incount, array_of_requests, outcount, array_of_indices, array_of_statuses&
|
|
, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: incount
|
|
integer, dimension(incount), intent(inout) :: array_of_requests
|
|
integer, intent(out) :: outcount
|
|
integer, dimension(*), intent(out) :: array_of_indices
|
|
integer, dimension(MPI_STATUS_SIZE, *), intent(out) :: array_of_statuses
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Waitsome
|
|
|
|
end interface
|
|
|
|
interface PMPI_Waitsome
|
|
|
|
subroutine PMPI_Waitsome(incount, array_of_requests, outcount, array_of_indices, array_of_statuses&
|
|
, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: incount
|
|
integer, dimension(incount), intent(inout) :: array_of_requests
|
|
integer, intent(out) :: outcount
|
|
integer, dimension(*), intent(out) :: array_of_indices
|
|
integer, dimension(MPI_STATUS_SIZE, *), intent(out) :: array_of_statuses
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Waitsome
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_allocate
|
|
|
|
subroutine MPI_Win_allocate(size, disp_unit, info, comm, &
|
|
baseptr, win, ierror)
|
|
include 'mpif-config.h'
|
|
integer(KIND=MPI_ADDRESS_KIND), intent(in) :: size
|
|
integer, intent(in) :: disp_unit
|
|
integer, intent(in) :: info
|
|
integer, intent(in) :: comm
|
|
integer(KIND=MPI_ADDRESS_KIND), intent(out) :: baseptr
|
|
integer, intent(out) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_allocate
|
|
|
|
subroutine MPI_Win_allocate_cptr(size, disp_unit, info, comm, &
|
|
baseptr, win, ierror)
|
|
use, intrinsic :: iso_c_binding, only : c_ptr
|
|
include 'mpif-config.h'
|
|
integer :: disp_unit, info, comm, win, ierror
|
|
integer(KIND=MPI_ADDRESS_KIND) :: size
|
|
type(C_PTR) :: baseptr
|
|
end subroutine MPI_Win_allocate_cptr
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_allocate
|
|
|
|
subroutine PMPI_Win_allocate(size, disp_unit, info, comm, &
|
|
baseptr, win, ierror)
|
|
include 'mpif-config.h'
|
|
integer(KIND=MPI_ADDRESS_KIND), intent(in) :: size
|
|
integer, intent(in) :: disp_unit
|
|
integer, intent(in) :: info
|
|
integer, intent(in) :: comm
|
|
integer(KIND=MPI_ADDRESS_KIND), intent(out) :: baseptr
|
|
integer, intent(out) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_allocate
|
|
|
|
subroutine PMPI_Win_allocate_cptr(size, disp_unit, info, comm, &
|
|
baseptr, win, ierror)
|
|
use, intrinsic :: iso_c_binding, only : c_ptr
|
|
include 'mpif-config.h'
|
|
integer :: disp_unit, info, comm, win, ierror
|
|
integer(KIND=MPI_ADDRESS_KIND) :: size
|
|
type(C_PTR) :: baseptr
|
|
end subroutine PMPI_Win_allocate_cptr
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_allocate_shared
|
|
|
|
subroutine MPI_Win_allocate_shared(size, disp_unit, info, comm, &
|
|
baseptr, win, ierror)
|
|
include 'mpif-config.h'
|
|
integer(KIND=MPI_ADDRESS_KIND), intent(in) :: size
|
|
integer, intent(in) :: disp_unit
|
|
integer, intent(in) :: info
|
|
integer, intent(in) :: comm
|
|
integer(KIND=MPI_ADDRESS_KIND), intent(out) :: baseptr
|
|
integer, intent(out) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_allocate_shared
|
|
|
|
subroutine MPI_Win_allocate_shared_cptr(size, disp_unit, info, comm, &
|
|
baseptr, win, ierror)
|
|
use, intrinsic :: iso_c_binding, only : c_ptr
|
|
include 'mpif-config.h'
|
|
integer :: disp_unit, info, comm, win, ierror
|
|
integer(KIND=MPI_ADDRESS_KIND) :: size
|
|
type(C_PTR) :: baseptr
|
|
end subroutine MPI_Win_allocate_shared_cptr
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_allocate_shared
|
|
|
|
subroutine PMPI_Win_allocate_shared(size, disp_unit, info, comm, &
|
|
baseptr, win, ierror)
|
|
include 'mpif-config.h'
|
|
integer(KIND=MPI_ADDRESS_KIND), intent(in) :: size
|
|
integer, intent(in) :: disp_unit
|
|
integer, intent(in) :: info
|
|
integer, intent(in) :: comm
|
|
integer(KIND=MPI_ADDRESS_KIND), intent(out) :: baseptr
|
|
integer, intent(out) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_allocate_shared
|
|
|
|
subroutine PMPI_Win_allocate_shared_cptr(size, disp_unit, info, comm, &
|
|
baseptr, win, ierror)
|
|
use, intrinsic :: iso_c_binding, only : c_ptr
|
|
include 'mpif-config.h'
|
|
integer :: disp_unit, info, comm, win, ierror
|
|
integer(KIND=MPI_ADDRESS_KIND) :: size
|
|
type(C_PTR) :: baseptr
|
|
end subroutine PMPI_Win_allocate_shared_cptr
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_attach
|
|
|
|
subroutine MPI_Win_attach(win, base, size, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ base
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: base
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: size
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_attach
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_attach
|
|
|
|
subroutine PMPI_Win_attach(win, base, size, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ base
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: base
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: size
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_attach
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_call_errhandler
|
|
|
|
subroutine MPI_Win_call_errhandler(win, errorcode, ierror)
|
|
integer, intent(in) :: win
|
|
integer, intent(in) :: errorcode
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_call_errhandler
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_call_errhandler
|
|
|
|
subroutine PMPI_Win_call_errhandler(win, errorcode, ierror)
|
|
integer, intent(in) :: win
|
|
integer, intent(in) :: errorcode
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_call_errhandler
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_complete
|
|
|
|
subroutine MPI_Win_complete(win, ierror)
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_complete
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_complete
|
|
|
|
subroutine PMPI_Win_complete(win, ierror)
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_complete
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_create
|
|
|
|
subroutine MPI_Win_create(base, size, disp_unit, info, comm, &
|
|
win, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ base
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: base
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: size
|
|
integer, intent(in) :: disp_unit
|
|
integer, intent(in) :: info
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_create
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_create
|
|
|
|
subroutine PMPI_Win_create(base, size, disp_unit, info, comm, &
|
|
win, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ base
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: base
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: size
|
|
integer, intent(in) :: disp_unit
|
|
integer, intent(in) :: info
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_create
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_create_dynamic
|
|
|
|
subroutine MPI_Win_create_dynamic(info, comm, &
|
|
win, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: info
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_create_dynamic
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_create_dynamic
|
|
|
|
subroutine PMPI_Win_create_dynamic(info, comm, &
|
|
win, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: info
|
|
integer, intent(in) :: comm
|
|
integer, intent(out) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_create_dynamic
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_create_errhandler
|
|
|
|
subroutine MPI_Win_create_errhandler(function, errhandler, ierror)
|
|
external :: function
|
|
integer, intent(out) :: errhandler
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_create_errhandler
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_create_errhandler
|
|
|
|
subroutine PMPI_Win_create_errhandler(function, errhandler, ierror)
|
|
external :: function
|
|
integer, intent(out) :: errhandler
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_create_errhandler
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_create_keyval
|
|
|
|
subroutine MPI_Win_create_keyval(win_copy_attr_fn, win_delete_attr_fn, win_keyval, extra_state, ierror)
|
|
include 'mpif-config.h'
|
|
external :: win_copy_attr_fn
|
|
external :: win_delete_attr_fn
|
|
integer, intent(out) :: win_keyval
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: extra_state
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_create_keyval
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_create_keyval
|
|
|
|
subroutine PMPI_Win_create_keyval(win_copy_attr_fn, win_delete_attr_fn, win_keyval, extra_state, ierror)
|
|
include 'mpif-config.h'
|
|
external :: win_copy_attr_fn
|
|
external :: win_delete_attr_fn
|
|
integer, intent(out) :: win_keyval
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: extra_state
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_create_keyval
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_delete_attr
|
|
|
|
subroutine MPI_Win_delete_attr(win, win_keyval, ierror)
|
|
integer, intent(in) :: win
|
|
integer, intent(in) :: win_keyval
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_delete_attr
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_delete_attr
|
|
|
|
subroutine PMPI_Win_delete_attr(win, win_keyval, ierror)
|
|
integer, intent(in) :: win
|
|
integer, intent(in) :: win_keyval
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_delete_attr
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_detach
|
|
|
|
subroutine MPI_Win_detach(win, base, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ base
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: base
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_detach
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_detach
|
|
|
|
subroutine PMPI_Win_detach(win, base, ierror)
|
|
include 'mpif-config.h'
|
|
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ base
|
|
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: base
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_detach
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_fence
|
|
|
|
subroutine MPI_Win_fence(assert, win, ierror)
|
|
integer, intent(in) :: assert
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_fence
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_fence
|
|
|
|
subroutine PMPI_Win_fence(assert, win, ierror)
|
|
integer, intent(in) :: assert
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_fence
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_flush
|
|
|
|
subroutine MPI_Win_flush(rank, win, ierror)
|
|
integer, intent(in) :: rank
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_flush
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_flush
|
|
|
|
subroutine PMPI_Win_flush(rank, win, ierror)
|
|
integer, intent(in) :: rank
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_flush
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_flush_all
|
|
|
|
subroutine MPI_Win_flush_all(win, ierror)
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_flush_all
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_flush_all
|
|
|
|
subroutine PMPI_Win_flush_all(win, ierror)
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_flush_all
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_flush_local
|
|
|
|
subroutine MPI_Win_flush_local(rank, win, ierror)
|
|
integer, intent(in) :: rank
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_flush_local
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_flush_local
|
|
|
|
subroutine PMPI_Win_flush_local(rank, win, ierror)
|
|
integer, intent(in) :: rank
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_flush_local
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_flush_local_all
|
|
|
|
subroutine MPI_Win_flush_local_all(win, ierror)
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_flush_local_all
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_flush_local_all
|
|
|
|
subroutine PMPI_Win_flush_local_all(win, ierror)
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_flush_local_all
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_free
|
|
|
|
subroutine MPI_Win_free(win, ierror)
|
|
integer, intent(inout) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_free
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_free
|
|
|
|
subroutine PMPI_Win_free(win, ierror)
|
|
integer, intent(inout) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_free
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_free_keyval
|
|
|
|
subroutine MPI_Win_free_keyval(win_keyval, ierror)
|
|
integer, intent(inout) :: win_keyval
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_free_keyval
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_free_keyval
|
|
|
|
subroutine PMPI_Win_free_keyval(win_keyval, ierror)
|
|
integer, intent(inout) :: win_keyval
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_free_keyval
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_get_attr
|
|
|
|
subroutine MPI_Win_get_attr(win, win_keyval, attribute_val, flag, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: win
|
|
integer, intent(in) :: win_keyval
|
|
integer(kind=MPI_ADDRESS_KIND), intent(out) :: attribute_val
|
|
logical, intent(out) :: flag
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_get_attr
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_get_attr
|
|
|
|
subroutine PMPI_Win_get_attr(win, win_keyval, attribute_val, flag, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: win
|
|
integer, intent(in) :: win_keyval
|
|
integer(kind=MPI_ADDRESS_KIND), intent(out) :: attribute_val
|
|
logical, intent(out) :: flag
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_get_attr
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_get_errhandler
|
|
|
|
subroutine MPI_Win_get_errhandler(win, errhandler, ierror)
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: errhandler
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_get_errhandler
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_get_errhandler
|
|
|
|
subroutine PMPI_Win_get_errhandler(win, errhandler, ierror)
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: errhandler
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_get_errhandler
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_get_group
|
|
|
|
subroutine MPI_Win_get_group(win, group, ierror)
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: group
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_get_group
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_get_group
|
|
|
|
subroutine PMPI_Win_get_group(win, group, ierror)
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: group
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_get_group
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_get_info
|
|
|
|
subroutine MPI_Win_get_info(comm, info, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: info
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_get_info
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_get_info
|
|
|
|
subroutine PMPI_Win_get_info(comm, info, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: info
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_get_info
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_get_name
|
|
|
|
subroutine MPI_Win_get_name(win, win_name, resultlen, ierror)
|
|
integer, intent(in) :: win
|
|
character(len=*), intent(out) :: win_name
|
|
integer, intent(out) :: resultlen
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_get_name
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_get_name
|
|
|
|
subroutine PMPI_Win_get_name(win, win_name, resultlen, ierror)
|
|
integer, intent(in) :: win
|
|
character(len=*), intent(out) :: win_name
|
|
integer, intent(out) :: resultlen
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_get_name
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_lock
|
|
|
|
subroutine MPI_Win_lock(lock_type, rank, assert, win, ierror)
|
|
integer, intent(in) :: lock_type
|
|
integer, intent(in) :: rank
|
|
integer, intent(in) :: assert
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_lock
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_lock
|
|
|
|
subroutine PMPI_Win_lock(lock_type, rank, assert, win, ierror)
|
|
integer, intent(in) :: lock_type
|
|
integer, intent(in) :: rank
|
|
integer, intent(in) :: assert
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_lock
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_lock_all
|
|
|
|
subroutine MPI_Win_lock_all(assert, win, ierror)
|
|
integer, intent(in) :: assert
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_lock_all
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_lock_all
|
|
|
|
subroutine PMPI_Win_lock_all(assert, win, ierror)
|
|
integer, intent(in) :: assert
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_lock_all
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_post
|
|
|
|
subroutine MPI_Win_post(group, assert, win, ierror)
|
|
integer, intent(in) :: group
|
|
integer, intent(in) :: assert
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_post
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_post
|
|
|
|
subroutine PMPI_Win_post(group, assert, win, ierror)
|
|
integer, intent(in) :: group
|
|
integer, intent(in) :: assert
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_post
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_set_attr
|
|
|
|
subroutine MPI_Win_set_attr(win, win_keyval, attribute_val, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: win
|
|
integer, intent(in) :: win_keyval
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: attribute_val
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_set_attr
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_set_attr
|
|
|
|
subroutine PMPI_Win_set_attr(win, win_keyval, attribute_val, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: win
|
|
integer, intent(in) :: win_keyval
|
|
integer(kind=MPI_ADDRESS_KIND), intent(in) :: attribute_val
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_set_attr
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_set_errhandler
|
|
|
|
subroutine MPI_Win_set_errhandler(win, errhandler, ierror)
|
|
integer, intent(in) :: win
|
|
integer, intent(in) :: errhandler
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_set_errhandler
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_set_errhandler
|
|
|
|
subroutine PMPI_Win_set_errhandler(win, errhandler, ierror)
|
|
integer, intent(in) :: win
|
|
integer, intent(in) :: errhandler
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_set_errhandler
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_set_info
|
|
|
|
subroutine MPI_Win_set_info(comm, info, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: info
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_set_info
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_set_info
|
|
|
|
subroutine PMPI_Win_set_info(comm, info, ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: comm
|
|
integer, intent(in) :: info
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_set_info
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_set_name
|
|
|
|
subroutine MPI_Win_set_name(win, win_name, ierror)
|
|
integer, intent(in) :: win
|
|
character(len=*), intent(in) :: win_name
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_set_name
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_set_name
|
|
|
|
subroutine PMPI_Win_set_name(win, win_name, ierror)
|
|
integer, intent(in) :: win
|
|
character(len=*), intent(in) :: win_name
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_set_name
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_shared_query
|
|
|
|
subroutine MPI_Win_shared_query(win, rank, size, disp_unit, baseptr,&
|
|
ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: win
|
|
integer, intent(in) :: rank
|
|
integer(KIND=MPI_ADDRESS_KIND), intent(out) :: size
|
|
integer, intent(out) :: disp_unit
|
|
integer(KIND=MPI_ADDRESS_KIND), intent(out) :: baseptr
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_shared_query
|
|
|
|
subroutine MPI_Win_shared_query_cptr(win, rank, size, disp_unit, baseptr,&
|
|
ierror)
|
|
use, intrinsic :: iso_c_binding, only : c_ptr
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: win
|
|
integer, intent(in) :: rank
|
|
integer(KIND=MPI_ADDRESS_KIND), intent(out) :: size
|
|
integer, intent(out) :: disp_unit
|
|
type(C_PTR), intent(out) :: baseptr
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_shared_query_cptr
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_shared_query
|
|
|
|
subroutine PMPI_Win_shared_query(win, rank, size, disp_unit, baseptr,&
|
|
ierror)
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: win
|
|
integer, intent(in) :: rank
|
|
integer(KIND=MPI_ADDRESS_KIND), intent(out) :: size
|
|
integer, intent(out) :: disp_unit
|
|
integer(KIND=MPI_ADDRESS_KIND), intent(out) :: baseptr
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_shared_query
|
|
|
|
subroutine PMPI_Win_shared_query_cptr(win, rank, size, disp_unit, baseptr,&
|
|
ierror)
|
|
use, intrinsic :: iso_c_binding, only : c_ptr
|
|
include 'mpif-config.h'
|
|
integer, intent(in) :: win
|
|
integer, intent(in) :: rank
|
|
integer(KIND=MPI_ADDRESS_KIND), intent(out) :: size
|
|
integer, intent(out) :: disp_unit
|
|
type(C_PTR), intent(out) :: baseptr
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_shared_query_cptr
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_start
|
|
|
|
subroutine MPI_Win_start(group, assert, win, ierror)
|
|
integer, intent(in) :: group
|
|
integer, intent(in) :: assert
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_start
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_start
|
|
|
|
subroutine PMPI_Win_start(group, assert, win, ierror)
|
|
integer, intent(in) :: group
|
|
integer, intent(in) :: assert
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_start
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_sync
|
|
|
|
subroutine MPI_Win_sync(win, ierror)
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_sync
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_sync
|
|
|
|
subroutine PMPI_Win_sync(win, ierror)
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_sync
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_test
|
|
|
|
subroutine MPI_Win_test(win, flag, ierror)
|
|
integer, intent(in) :: win
|
|
logical, intent(out) :: flag
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_test
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_test
|
|
|
|
subroutine PMPI_Win_test(win, flag, ierror)
|
|
integer, intent(in) :: win
|
|
logical, intent(out) :: flag
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_test
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_unlock
|
|
|
|
subroutine MPI_Win_unlock(rank, win, ierror)
|
|
integer, intent(in) :: rank
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_unlock
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_unlock
|
|
|
|
subroutine PMPI_Win_unlock(rank, win, ierror)
|
|
integer, intent(in) :: rank
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_unlock
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_unlock_all
|
|
|
|
subroutine MPI_Win_unlock_all(win, ierror)
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_unlock_all
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_unlock_all
|
|
|
|
subroutine PMPI_Win_unlock_all(win, ierror)
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_unlock_all
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Win_wait
|
|
|
|
subroutine MPI_Win_wait(win, ierror)
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine MPI_Win_wait
|
|
|
|
end interface
|
|
|
|
interface PMPI_Win_wait
|
|
|
|
subroutine PMPI_Win_wait(win, ierror)
|
|
integer, intent(in) :: win
|
|
integer, intent(out) :: ierror
|
|
end subroutine PMPI_Win_wait
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Wtick
|
|
|
|
function MPI_Wtick()
|
|
double precision MPI_Wtick
|
|
end function MPI_Wtick
|
|
|
|
end interface
|
|
|
|
interface PMPI_Wtick
|
|
|
|
function PMPI_Wtick()
|
|
double precision PMPI_Wtick
|
|
end function PMPI_Wtick
|
|
|
|
end interface
|
|
|
|
|
|
interface MPI_Wtime
|
|
|
|
function MPI_Wtime()
|
|
double precision MPI_Wtime
|
|
end function MPI_Wtime
|
|
|
|
end interface
|
|
|
|
interface PMPI_Wtime
|
|
|
|
function PMPI_Wtime()
|
|
double precision PMPI_Wtime
|
|
end function PMPI_Wtime
|
|
|
|
end interface
|