1
1
openmpi/ompi/mpi/fortran/use-mpi-ignore-tkr/mpi-ignore-tkr-interfaces.h.in
George Bosilca 083938cc10 It is now almost impossible to add a new function to the MPI interface
without messing the Fortran part.

This commit was SVN r26967.
2012-08-08 13:17:57 +00:00

3988 строки
99 KiB
Fortran

! -*- fortran -*-
!
! Copyright (c) 2006-2012 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$
!
! Additional copyrights may follow
!
! $HEADER$
interface MPI_Abort
subroutine MPI_Abort(comm, errorcode, ierr)
integer, intent(in) :: comm
integer, intent(in) :: errorcode
integer, intent(out) :: ierr
end subroutine MPI_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, ierr)
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) :: ierr
end subroutine MPI_Accumulate
end interface
interface MPI_Add_error_class
subroutine MPI_Add_error_class(errorclass, ierr)
integer, intent(out) :: errorclass
integer, intent(out) :: ierr
end subroutine MPI_Add_error_class
end interface
interface MPI_Add_error_code
subroutine MPI_Add_error_code(errorclass, errorcode, ierr)
integer, intent(in) :: errorclass
integer, intent(out) :: errorcode
integer, intent(out) :: ierr
end subroutine MPI_Add_error_code
end interface
interface MPI_Add_error_string
subroutine MPI_Add_error_string(errorcode, string, ierr)
integer, intent(in) :: errorcode
character(len=*), intent(in) :: string
integer, intent(out) :: ierr
end subroutine MPI_Add_error_string
end interface
interface MPI_Address
subroutine MPI_Address(location, address, ierr)
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ location
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: location
integer, intent(out) :: address
integer, intent(out) :: ierr
end subroutine MPI_Address
end interface
interface MPI_Allgather
subroutine MPI_Allgather(sendbuf, sendcount, sendtype, recvbuf, recvcount, &
recvtype, comm, ierr)
@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) :: ierr
end subroutine MPI_Allgather
end interface
interface MPI_Allgatherv
subroutine MPI_Allgatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, &
displs, recvtype, comm, ierr)
@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) :: ierr
end subroutine MPI_Allgatherv
end interface
interface MPI_Alloc_mem
subroutine MPI_Alloc_mem(size, info, baseptr, ierr)
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) :: ierr
end subroutine MPI_Alloc_mem
end interface
interface MPI_Allreduce
subroutine MPI_Allreduce(sendbuf, recvbuf, count, datatype, op, &
comm, ierr)
@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) :: ierr
end subroutine MPI_Allreduce
end interface
interface MPI_Alltoall
subroutine MPI_Alltoall(sendbuf, sendcount, sendtype, recvbuf, recvcount, &
recvtype, comm, ierr)
@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) :: ierr
end subroutine MPI_Alltoall
end interface
interface MPI_Alltoallv
subroutine MPI_Alltoallv(sendbuf, sendcounts, sdispls, sendtype, recvbuf, &
recvcounts, rdispls, recvtype, comm, ierr)
@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) :: ierr
end subroutine MPI_Alltoallv
end interface
interface MPI_Alltoallw
subroutine MPI_Alltoallw(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, &
recvcounts, rdispls, recvtypes, comm, ierr)
@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) :: ierr
end subroutine MPI_Alltoallw
end interface
interface MPI_Attr_delete
subroutine MPI_Attr_delete(comm, keyval, ierr)
integer, intent(in) :: comm
integer, intent(in) :: keyval
integer, intent(out) :: ierr
end subroutine MPI_Attr_delete
end interface
interface MPI_Attr_get
subroutine MPI_Attr_get(comm, keyval, attribute_val, flag, ierr)
integer, intent(in) :: comm
integer, intent(in) :: keyval
integer, intent(out) :: attribute_val
logical, intent(out) :: flag
integer, intent(out) :: ierr
end subroutine MPI_Attr_get
end interface
interface MPI_Attr_put
subroutine MPI_Attr_put(comm, keyval, attribute_val, ierr)
integer, intent(in) :: comm
integer, intent(in) :: keyval
integer, intent(in) :: attribute_val
integer, intent(out) :: ierr
end subroutine MPI_Attr_put
end interface
interface MPI_Barrier
subroutine MPI_Barrier(comm, ierr)
integer, intent(in) :: comm
integer, intent(out) :: ierr
end subroutine MPI_Barrier
end interface
interface MPI_Bcast
subroutine MPI_Bcast(buffer, count, datatype, root, comm&
, ierr)
@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) :: ierr
end subroutine MPI_Bcast
end interface
interface MPI_Bsend
subroutine MPI_Bsend(buf, count, datatype, dest, tag, &
comm, ierr)
@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) :: ierr
end subroutine MPI_Bsend
end interface
interface MPI_Bsend_init
subroutine MPI_Bsend_init(buf, count, datatype, dest, tag, &
comm, request, ierr)
@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) :: ierr
end subroutine MPI_Bsend_init
end interface
interface MPI_Buffer_attach
subroutine MPI_Buffer_attach(buffer, size, ierr)
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buffer
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: buffer
integer, intent(in) :: size
integer, intent(out) :: ierr
end subroutine MPI_Buffer_attach
end interface
interface MPI_Buffer_detach
subroutine MPI_Buffer_detach(buffer, size, ierr)
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buffer
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: buffer
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Buffer_detach
end interface
interface MPI_Cancel
subroutine MPI_Cancel(request, ierr)
integer, intent(in) :: request
integer, intent(out) :: ierr
end subroutine MPI_Cancel
end interface
interface MPI_Cart_coords
subroutine MPI_Cart_coords(comm, rank, maxdims, coords, ierr)
integer, intent(in) :: comm
integer, intent(in) :: rank
integer, intent(in) :: maxdims
integer, dimension(*), intent(out) :: coords
integer, intent(out) :: ierr
end subroutine MPI_Cart_coords
end interface
interface MPI_Cart_create
subroutine MPI_Cart_create(old_comm, ndims, dims, periods, reorder, &
comm_cart, ierr)
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) :: ierr
end subroutine MPI_Cart_create
end interface
interface MPI_Cart_get
subroutine MPI_Cart_get(comm, maxdims, dims, periods, coords&
, ierr)
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) :: ierr
end subroutine MPI_Cart_get
end interface
interface MPI_Cart_map
subroutine MPI_Cart_map(comm, ndims, dims, periods, newrank&
, ierr)
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) :: ierr
end subroutine MPI_Cart_map
end interface
interface MPI_Cart_rank
subroutine MPI_Cart_rank(comm, coords, rank, ierr)
integer, intent(in) :: comm
integer, dimension(*), intent(in) :: coords
integer, intent(out) :: rank
integer, intent(out) :: ierr
end subroutine MPI_Cart_rank
end interface
interface MPI_Cart_shift
subroutine MPI_Cart_shift(comm, direction, disp, rank_source, rank_dest&
, ierr)
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) :: ierr
end subroutine MPI_Cart_shift
end interface
interface MPI_Cart_sub
subroutine MPI_Cart_sub(comm, remain_dims, new_comm, ierr)
integer, intent(in) :: comm
logical, dimension(*), intent(in) :: remain_dims
integer, intent(out) :: new_comm
integer, intent(out) :: ierr
end subroutine MPI_Cart_sub
end interface
interface MPI_Cartdim_get
subroutine MPI_Cartdim_get(comm, ndims, ierr)
integer, intent(in) :: comm
integer, intent(out) :: ndims
integer, intent(out) :: ierr
end subroutine MPI_Cartdim_get
end interface
interface MPI_Close_port
subroutine MPI_Close_port(port_name, ierr)
character(len=*), intent(in) :: port_name
integer, intent(out) :: ierr
end subroutine MPI_Close_port
end interface
interface MPI_Comm_accept
subroutine MPI_Comm_accept(port_name, info, root, comm, newcomm&
, ierr)
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) :: ierr
end subroutine MPI_Comm_accept
end interface
interface MPI_Comm_call_errhandler
subroutine MPI_Comm_call_errhandler(comm, errorcode, ierr)
integer, intent(in) :: comm
integer, intent(in) :: errorcode
integer, intent(out) :: ierr
end subroutine MPI_Comm_call_errhandler
end interface
interface MPI_Comm_compare
subroutine MPI_Comm_compare(comm1, comm2, result, ierr)
integer, intent(in) :: comm1
integer, intent(in) :: comm2
integer, intent(out) :: result
integer, intent(out) :: ierr
end subroutine MPI_Comm_compare
end interface
interface MPI_Comm_connect
subroutine MPI_Comm_connect(port_name, info, root, comm, newcomm&
, ierr)
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) :: ierr
end subroutine MPI_Comm_connect
end interface
interface MPI_Comm_create
subroutine MPI_Comm_create(comm, group, newcomm, ierr)
integer, intent(in) :: comm
integer, intent(in) :: group
integer, intent(out) :: newcomm
integer, intent(out) :: ierr
end subroutine MPI_Comm_create
end interface
interface MPI_Comm_create_errhandler
subroutine MPI_Comm_create_errhandler(function, errhandler, ierr)
external :: function
integer, intent(out) :: errhandler
integer, intent(out) :: ierr
end subroutine MPI_Comm_create_errhandler
end interface
interface MPI_Comm_create_keyval
subroutine MPI_Comm_create_keyval(comm_copy_attr_fn, comm_delete_attr_fn, comm_keyval, extra_state, ierr)
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) :: ierr
end subroutine MPI_Comm_create_keyval
end interface
interface MPI_Comm_delete_attr
subroutine MPI_Comm_delete_attr(comm, comm_keyval, ierr)
integer, intent(in) :: comm
integer, intent(in) :: comm_keyval
integer, intent(out) :: ierr
end subroutine MPI_Comm_delete_attr
end interface
interface MPI_Comm_disconnect
subroutine MPI_Comm_disconnect(comm, ierr)
integer, intent(inout) :: comm
integer, intent(out) :: ierr
end subroutine MPI_Comm_disconnect
end interface
interface MPI_Comm_dup
subroutine MPI_Comm_dup(comm, newcomm, ierr)
integer, intent(in) :: comm
integer, intent(out) :: newcomm
integer, intent(out) :: ierr
end subroutine MPI_Comm_dup
end interface
interface MPI_Comm_free
subroutine MPI_Comm_free(comm, ierr)
integer, intent(inout) :: comm
integer, intent(out) :: ierr
end subroutine MPI_Comm_free
end interface
interface MPI_Comm_free_keyval
subroutine MPI_Comm_free_keyval(comm_keyval, ierr)
integer, intent(inout) :: comm_keyval
integer, intent(out) :: ierr
end subroutine MPI_Comm_free_keyval
end interface
interface MPI_Comm_get_attr
subroutine MPI_Comm_get_attr(comm, comm_keyval, attribute_val, flag, ierr)
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) :: ierr
end subroutine MPI_Comm_get_attr
end interface
interface MPI_Comm_get_errhandler
subroutine MPI_Comm_get_errhandler(comm, erhandler, ierr)
integer, intent(in) :: comm
integer, intent(out) :: erhandler
integer, intent(out) :: ierr
end subroutine MPI_Comm_get_errhandler
end interface
interface MPI_Comm_get_name
subroutine MPI_Comm_get_name(comm, comm_name, resultlen, ierr)
integer, intent(in) :: comm
character(len=*), intent(out) :: comm_name
integer, intent(out) :: resultlen
integer, intent(out) :: ierr
end subroutine MPI_Comm_get_name
end interface
interface MPI_Comm_get_parent
subroutine MPI_Comm_get_parent(parent, ierr)
integer, intent(out) :: parent
integer, intent(out) :: ierr
end subroutine MPI_Comm_get_parent
end interface
interface MPI_Comm_group
subroutine MPI_Comm_group(comm, group, ierr)
integer, intent(in) :: comm
integer, intent(out) :: group
integer, intent(out) :: ierr
end subroutine MPI_Comm_group
end interface
interface MPI_Comm_join
subroutine MPI_Comm_join(fd, intercomm, ierr)
integer, intent(in) :: fd
integer, intent(out) :: intercomm
integer, intent(out) :: ierr
end subroutine MPI_Comm_join
end interface
interface MPI_Comm_rank
subroutine MPI_Comm_rank(comm, rank, ierr)
integer, intent(in) :: comm
integer, intent(out) :: rank
integer, intent(out) :: ierr
end subroutine MPI_Comm_rank
end interface
interface MPI_Comm_remote_group
subroutine MPI_Comm_remote_group(comm, group, ierr)
integer, intent(in) :: comm
integer, intent(out) :: group
integer, intent(out) :: ierr
end subroutine MPI_Comm_remote_group
end interface
interface MPI_Comm_remote_size
subroutine MPI_Comm_remote_size(comm, size, ierr)
integer, intent(in) :: comm
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Comm_remote_size
end interface
interface MPI_Comm_set_attr
subroutine MPI_Comm_set_attr(comm, comm_keyval, attribute_val, ierr)
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) :: ierr
end subroutine MPI_Comm_set_attr
end interface
interface MPI_Comm_set_errhandler
subroutine MPI_Comm_set_errhandler(comm, errhandler, ierr)
integer, intent(in) :: comm
integer, intent(in) :: errhandler
integer, intent(out) :: ierr
end subroutine MPI_Comm_set_errhandler
end interface
interface MPI_Comm_set_name
subroutine MPI_Comm_set_name(comm, comm_name, ierr)
integer, intent(in) :: comm
character(len=*), intent(in) :: comm_name
integer, intent(out) :: ierr
end subroutine MPI_Comm_set_name
end interface
interface MPI_Comm_size
subroutine MPI_Comm_size(comm, size, ierr)
integer, intent(in) :: comm
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Comm_size
end interface
interface MPI_Comm_spawn
subroutine MPI_Comm_spawn(command, argv, maxprocs, info, root, &
comm, intercomm, array_of_errcodes, ierr)
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) :: ierr
end subroutine MPI_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, ierr)
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) :: ierr
end subroutine MPI_Comm_spawn_multiple
end interface
interface MPI_Comm_split
subroutine MPI_Comm_split(comm, color, key, newcomm, ierr)
integer, intent(in) :: comm
integer, intent(in) :: color
integer, intent(in) :: key
integer, intent(out) :: newcomm
integer, intent(out) :: ierr
end subroutine MPI_Comm_split
end interface
interface MPI_Comm_split
subroutine MPI_Comm_split_type(comm, split_type, key, info, newcomm, ierr)
integer, intent(in) :: comm
integer, intent(in) :: split_type
integer, intent(in) :: key
integer, intent(in) :: info
integer, intent(out) :: newcomm
integer, intent(out) :: ierr
end subroutine MPI_Comm_split_type
end interface
interface MPI_Comm_test_inter
subroutine MPI_Comm_test_inter(comm, flag, ierr)
integer, intent(in) :: comm
logical, intent(out) :: flag
integer, intent(out) :: ierr
end subroutine MPI_Comm_test_inter
end interface
interface MPI_Dims_create
subroutine MPI_Dims_create(nnodes, ndims, dims, ierr)
integer, intent(in) :: nnodes
integer, intent(in) :: ndims
integer, dimension(*), intent(inout) :: dims
integer, intent(out) :: ierr
end subroutine MPI_Dims_create
end interface
interface MPI_Errhandler_create
subroutine MPI_Errhandler_create(function, errhandler, ierr)
external :: function
integer, intent(out) :: errhandler
integer, intent(out) :: ierr
end subroutine MPI_Errhandler_create
end interface
interface MPI_Errhandler_free
subroutine MPI_Errhandler_free(errhandler, ierr)
integer, intent(inout) :: errhandler
integer, intent(out) :: ierr
end subroutine MPI_Errhandler_free
end interface
interface MPI_Errhandler_get
subroutine MPI_Errhandler_get(comm, errhandler, ierr)
integer, intent(in) :: comm
integer, intent(out) :: errhandler
integer, intent(out) :: ierr
end subroutine MPI_Errhandler_get
end interface
interface MPI_Errhandler_set
subroutine MPI_Errhandler_set(comm, errhandler, ierr)
integer, intent(in) :: comm
integer, intent(in) :: errhandler
integer, intent(out) :: ierr
end subroutine MPI_Errhandler_set
end interface
interface MPI_Error_class
subroutine MPI_Error_class(errorcode, errorclass, ierr)
integer, intent(in) :: errorcode
integer, intent(out) :: errorclass
integer, intent(out) :: ierr
end subroutine MPI_Error_class
end interface
interface MPI_Error_string
subroutine MPI_Error_string(errorcode, string, resultlen, ierr)
integer, intent(in) :: errorcode
character(len=*), intent(out) :: string
integer, intent(out) :: resultlen
integer, intent(out) :: ierr
end subroutine MPI_Error_string
end interface
interface MPI_Exscan
subroutine MPI_Exscan(sendbuf, recvbuf, count, datatype, op, &
comm, ierr)
@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) :: ierr
end subroutine MPI_Exscan
end interface
interface MPI_Finalize
subroutine MPI_Finalize(ierr)
integer, intent(out) :: ierr
end subroutine MPI_Finalize
end interface
interface MPI_Finalized
subroutine MPI_Finalized(flag, ierr)
logical, intent(out) :: flag
integer, intent(out) :: ierr
end subroutine MPI_Finalized
end interface
interface MPI_Free_mem
subroutine MPI_Free_mem(base, ierr)
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ base
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: base
integer, intent(out) :: ierr
end subroutine MPI_Free_mem
end interface
interface MPI_Gather
subroutine MPI_Gather(sendbuf, sendcount, sendtype, recvbuf, recvcount, &
recvtype, root, comm, ierr)
@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) :: ierr
end subroutine MPI_Gather
end interface
interface MPI_Gatherv
subroutine MPI_Gatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, &
displs, recvtype, root, comm, ierr)
@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) :: ierr
end subroutine MPI_Gatherv
end interface
interface MPI_Get
subroutine MPI_Get(origin_addr, origin_count, origin_datatype, target_rank, target_disp, &
target_count, target_datatype, win, ierr)
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) :: ierr
end subroutine MPI_Get
end interface
interface MPI_Get_address
subroutine MPI_Get_address(location, address, ierr)
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) :: ierr
end subroutine MPI_Get_address
end interface
interface MPI_Get_count
subroutine MPI_Get_count(status, datatype, count, ierr)
include 'mpif-config.h'
integer, dimension(MPI_STATUS_SIZE), intent(in) :: status
integer, intent(in) :: datatype
integer, intent(out) :: count
integer, intent(out) :: ierr
end subroutine MPI_Get_count
end interface
interface MPI_Get_elements
subroutine MPI_Get_elements(status, datatype, count, ierr)
include 'mpif-config.h'
integer, dimension(MPI_STATUS_SIZE), intent(in) :: status
integer, intent(in) :: datatype
integer, intent(out) :: count
integer, intent(out) :: ierr
end subroutine MPI_Get_elements
end interface
interface MPI_Get_library_version
subroutine MPI_Get_library_version(version, resultlen, ierr)
character(len=*), intent(out) :: version
integer, intent(out) :: resultlen
integer, intent(out) :: ierr
end subroutine MPI_Get_library_version
end interface
interface MPI_Get_processor_name
subroutine MPI_Get_processor_name(name, resultlen, ierr)
character(len=*), intent(out) :: name
integer, intent(out) :: resultlen
integer, intent(out) :: ierr
end subroutine MPI_Get_processor_name
end interface
interface MPI_Get_version
subroutine MPI_Get_version(version, subversion, ierr)
integer, intent(out) :: version
integer, intent(out) :: subversion
integer, intent(out) :: ierr
end subroutine MPI_Get_version
end interface
interface MPI_Graph_create
subroutine MPI_Graph_create(comm_old, nnodes, index, edges, reorder, &
comm_graph, ierr)
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) :: ierr
end subroutine MPI_Graph_create
end interface
interface MPI_Graph_get
subroutine MPI_Graph_get(comm, maxindex, maxedges, index, edges&
, ierr)
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) :: ierr
end subroutine MPI_Graph_get
end interface
interface MPI_Graph_map
subroutine MPI_Graph_map(comm, nnodes, index, edges, newrank&
, ierr)
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) :: ierr
end subroutine MPI_Graph_map
end interface
interface MPI_Graph_neighbors
subroutine MPI_Graph_neighbors(comm, rank, maxneighbors, neighbors, ierr)
integer, intent(in) :: comm
integer, intent(in) :: rank
integer, intent(in) :: maxneighbors
integer, dimension(*), intent(out) :: neighbors
integer, intent(out) :: ierr
end subroutine MPI_Graph_neighbors
end interface
interface MPI_Graph_neighbors_count
subroutine MPI_Graph_neighbors_count(comm, rank, nneighbors, ierr)
integer, intent(in) :: comm
integer, intent(in) :: rank
integer, intent(out) :: nneighbors
integer, intent(out) :: ierr
end subroutine MPI_Graph_neighbors_count
end interface
interface MPI_Graphdims_get
subroutine MPI_Graphdims_get(comm, nnodes, nedges, ierr)
integer, intent(in) :: comm
integer, intent(out) :: nnodes
integer, intent(out) :: nedges
integer, intent(out) :: ierr
end subroutine MPI_Graphdims_get
end interface
interface MPI_Grequest_complete
subroutine MPI_Grequest_complete(request, ierr)
integer, intent(in) :: request
integer, intent(out) :: ierr
end subroutine MPI_Grequest_complete
end interface
interface MPI_Grequest_start
subroutine MPI_Grequest_start(query_fn, free_fn, cancel_fn, extra_state, request&
, ierr)
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) :: ierr
end subroutine MPI_Grequest_start
end interface
interface MPI_Group_compare
subroutine MPI_Group_compare(group1, group2, result, ierr)
integer, intent(in) :: group1
integer, intent(in) :: group2
integer, intent(out) :: result
integer, intent(out) :: ierr
end subroutine MPI_Group_compare
end interface
interface MPI_Group_difference
subroutine MPI_Group_difference(group1, group2, newgroup, ierr)
integer, intent(in) :: group1
integer, intent(in) :: group2
integer, intent(out) :: newgroup
integer, intent(out) :: ierr
end subroutine MPI_Group_difference
end interface
interface MPI_Group_excl
subroutine MPI_Group_excl(group, n, ranks, newgroup, ierr)
integer, intent(in) :: group
integer, intent(in) :: n
integer, dimension(*), intent(in) :: ranks
integer, intent(out) :: newgroup
integer, intent(out) :: ierr
end subroutine MPI_Group_excl
end interface
interface MPI_Group_free
subroutine MPI_Group_free(group, ierr)
integer, intent(inout) :: group
integer, intent(out) :: ierr
end subroutine MPI_Group_free
end interface
interface MPI_Group_incl
subroutine MPI_Group_incl(group, n, ranks, newgroup, ierr)
integer, intent(in) :: group
integer, intent(in) :: n
integer, dimension(*), intent(in) :: ranks
integer, intent(out) :: newgroup
integer, intent(out) :: ierr
end subroutine MPI_Group_incl
end interface
interface MPI_Group_intersection
subroutine MPI_Group_intersection(group1, group2, newgroup, ierr)
integer, intent(in) :: group1
integer, intent(in) :: group2
integer, intent(out) :: newgroup
integer, intent(out) :: ierr
end subroutine MPI_Group_intersection
end interface
interface MPI_Group_range_excl
subroutine MPI_Group_range_excl(group, n, ranges, newgroup, ierr)
integer, intent(in) :: group
integer, intent(in) :: n
integer, dimension(3, *), intent(in) :: ranges
integer, intent(out) :: newgroup
integer, intent(out) :: ierr
end subroutine MPI_Group_range_excl
end interface
interface MPI_Group_range_incl
subroutine MPI_Group_range_incl(group, n, ranges, newgroup, ierr)
integer, intent(in) :: group
integer, intent(in) :: n
integer, dimension(3, *), intent(in) :: ranges
integer, intent(out) :: newgroup
integer, intent(out) :: ierr
end subroutine MPI_Group_range_incl
end interface
interface MPI_Group_rank
subroutine MPI_Group_rank(group, rank, ierr)
integer, intent(in) :: group
integer, intent(out) :: rank
integer, intent(out) :: ierr
end subroutine MPI_Group_rank
end interface
interface MPI_Group_size
subroutine MPI_Group_size(group, size, ierr)
integer, intent(in) :: group
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Group_size
end interface
interface MPI_Group_translate_ranks
subroutine MPI_Group_translate_ranks(group1, n, ranks1, group2, ranks2&
, ierr)
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) :: ierr
end subroutine MPI_Group_translate_ranks
end interface
interface MPI_Group_union
subroutine MPI_Group_union(group1, group2, newgroup, ierr)
integer, intent(in) :: group1
integer, intent(in) :: group2
integer, intent(out) :: newgroup
integer, intent(out) :: ierr
end subroutine MPI_Group_union
end interface
interface MPI_Iallgather
subroutine MPI_Iallgather(sendbuf, sendcount, sendtype, recvbuf, recvcount, &
recvtype, comm, request, ierr)
@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) :: ierr
end subroutine MPI_Iallgather
end interface
interface MPI_Iallgatherv
subroutine MPI_Iallgatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, &
displs, recvtype, comm, request, ierr)
@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) :: ierr
end subroutine MPI_Iallgatherv
end interface
interface MPI_Iallreduce
subroutine MPI_Iallreduce(sendbuf, recvbuf, count, datatype, op, &
comm, request, ierr)
@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) :: ierr
end subroutine MPI_Iallreduce
end interface
interface MPI_Ialltoall
subroutine MPI_Ialltoall(sendbuf, sendcount, sendtype, recvbuf, recvcount, &
recvtype, comm, request, ierr)
@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) :: ierr
end subroutine MPI_Ialltoall
end interface
interface MPI_Ialltoallv
subroutine MPI_Ialltoallv(sendbuf, sendcounts, sdispls, sendtype, recvbuf, &
recvcounts, rdispls, recvtype, comm, request, ierr)
@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) :: ierr
end subroutine MPI_Ialltoallv
end interface
interface MPI_Ialltoallw
subroutine MPI_Ialltoallw(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, &
recvcounts, rdispls, recvtypes, comm, request, ierr)
@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) :: ierr
end subroutine MPI_Ialltoallw
end interface
interface MPI_Ibarrier
subroutine MPI_Ibarrier(comm, request, ierr)
integer, intent(in) :: comm
integer, intent(out) :: request
integer, intent(out) :: ierr
end subroutine MPI_Ibarrier
end interface
interface MPI_Ibcast
subroutine MPI_Ibcast(buffer, count, datatype, root, comm&
, request, ierr)
@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) :: ierr
end subroutine MPI_Ibcast
end interface
interface MPI_Iexscan
subroutine MPI_Iexscan(sendbuf, recvbuf, count, datatype, op, &
comm, request, ierr)
@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) :: ierr
end subroutine MPI_Iexscan
end interface
interface MPI_Ibsend
subroutine MPI_Ibsend(buf, count, datatype, dest, tag, &
comm, request, ierr)
@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) :: ierr
end subroutine MPI_Ibsend
end interface
interface MPI_Igather
subroutine MPI_Igather(sendbuf, sendcount, sendtype, recvbuf, recvcount, &
recvtype, root, comm, request, ierr)
@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) :: ierr
end subroutine MPI_Igather
end interface
interface MPI_Igatherv
subroutine MPI_Igatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, &
displs, recvtype, root, comm, request, ierr)
@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) :: ierr
end subroutine MPI_Igatherv
end interface
interface MPI_Improbe
subroutine MPI_Improbe(source, tag, comm, flag, message, status, ierr)
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) :: ierr
end subroutine MPI_Improbe
end interface
interface MPI_Imrecv
subroutine MPI_Imrecv(buf, count, datatype, message, request, ierr)
@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) :: ierr
end subroutine MPI_Imrecv
end interface
interface MPI_Info_create
subroutine MPI_Info_create(info, ierr)
integer, intent(out) :: info
integer, intent(out) :: ierr
end subroutine MPI_Info_create
end interface
interface MPI_Info_delete
subroutine MPI_Info_delete(info, key, ierr)
integer, intent(in) :: info
character(len=*), intent(in) :: key
integer, intent(out) :: ierr
end subroutine MPI_Info_delete
end interface
interface MPI_Info_dup
subroutine MPI_Info_dup(info, newinfo, ierr)
integer, intent(in) :: info
integer, intent(out) :: newinfo
integer, intent(out) :: ierr
end subroutine MPI_Info_dup
end interface
interface MPI_Info_free
subroutine MPI_Info_free(info, ierr)
integer, intent(inout) :: info
integer, intent(out) :: ierr
end subroutine MPI_Info_free
end interface
interface MPI_Info_get
subroutine MPI_Info_get(info, key, valuelen, value, flag&
, ierr)
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) :: ierr
end subroutine MPI_Info_get
end interface
interface MPI_Info_get_nkeys
subroutine MPI_Info_get_nkeys(info, nkeys, ierr)
integer, intent(in) :: info
integer, intent(out) :: nkeys
integer, intent(out) :: ierr
end subroutine MPI_Info_get_nkeys
end interface
interface MPI_Info_get_nthkey
subroutine MPI_Info_get_nthkey(info, n, key, ierr)
integer, intent(in) :: info
integer, intent(in) :: n
character(len=*), intent(out) :: key
integer, intent(out) :: ierr
end subroutine MPI_Info_get_nthkey
end interface
interface MPI_Info_get_valuelen
subroutine MPI_Info_get_valuelen(info, key, valuelen, flag, ierr)
integer, intent(in) :: info
character(len=*), intent(in) :: key
integer, intent(out) :: valuelen
logical, intent(out) :: flag
integer, intent(out) :: ierr
end subroutine MPI_Info_get_valuelen
end interface
interface MPI_Info_set
subroutine MPI_Info_set(info, key, value, ierr)
integer, intent(in) :: info
character(len=*), intent(in) :: key
character(len=*), intent(in) :: value
integer, intent(out) :: ierr
end subroutine MPI_Info_set
end interface
interface MPI_Init
subroutine MPI_Init(ierr)
integer, intent(out) :: ierr
end subroutine MPI_Init
end interface
interface MPI_Init_thread
subroutine MPI_Init_thread(required, provided, ierr)
integer, intent(in) :: required
integer, intent(out) :: provided
integer, intent(out) :: ierr
end subroutine MPI_Init_thread
end interface
interface MPI_Initialized
subroutine MPI_Initialized(flag, ierr)
logical, intent(out) :: flag
integer, intent(out) :: ierr
end subroutine MPI_Initialized
end interface
interface MPI_Intercomm_create
subroutine MPI_Intercomm_create(local_comm, local_leader, bridge_comm, remote_leader, tag, &
newintercomm, ierr)
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) :: ierr
end subroutine MPI_Intercomm_create
end interface
interface MPI_Intercomm_merge
subroutine MPI_Intercomm_merge(intercomm, high, newintercomm, ierr)
integer, intent(in) :: intercomm
logical, intent(in) :: high
integer, intent(out) :: newintercomm
integer, intent(out) :: ierr
end subroutine MPI_Intercomm_merge
end interface
interface MPI_Iprobe
subroutine MPI_Iprobe(source, tag, comm, flag, status&
, ierr)
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) :: ierr
end subroutine MPI_Iprobe
end interface
interface MPI_Irecv
subroutine MPI_Irecv(buf, count, datatype, source, tag, &
comm, request, ierr)
@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) :: ierr
end subroutine MPI_Irecv
end interface
interface MPI_Ireduce
subroutine MPI_Ireduce(sendbuf, recvbuf, count, datatype, op, &
root, comm, request, ierr)
@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) :: ierr
end subroutine MPI_Ireduce
end interface
interface MPI_Ireduce_scatter
subroutine MPI_Ireduce_scatter(sendbuf, recvbuf, recvcounts, datatype, op, &
comm, request, ierr)
@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) :: ierr
end subroutine MPI_Ireduce_scatter
end interface
interface MPI_Ireduce_scatter_block
subroutine MPI_Ireduce_scatter_block(sendbuf, recvbuf, recvcount, datatype, op, &
comm, request, ierr)
@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) :: ierr
end subroutine MPI_Ireduce_scatter_block
end interface
interface MPI_Irsend
subroutine MPI_Irsend(buf, count, datatype, dest, tag, &
comm, request, ierr)
@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) :: ierr
end subroutine MPI_Irsend
end interface
interface MPI_Is_thread_main
subroutine MPI_Is_thread_main(flag, ierr)
logical, intent(out) :: flag
integer, intent(out) :: ierr
end subroutine MPI_Is_thread_main
end interface
interface MPI_Iscan
subroutine MPI_Iscan(sendbuf, recvbuf, count, datatype, op, &
comm, request, ierr)
@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) :: ierr
end subroutine MPI_Iscan
end interface
interface MPI_Iscatter
subroutine MPI_Iscatter(sendbuf, sendcount, sendtype, recvbuf, recvcount, &
recvtype, root, comm, request, ierr)
@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) :: ierr
end subroutine MPI_Iscatter
end interface
interface MPI_Iscatterv
subroutine MPI_Iscatterv(sendbuf, sendcounts, displs, sendtype, recvbuf, &
recvcount, recvtype, root, comm, request, ierr)
@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) :: ierr
end subroutine MPI_Iscatterv
end interface
interface MPI_Isend
subroutine MPI_Isend(buf, count, datatype, dest, tag, &
comm, request, ierr)
@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) :: ierr
end subroutine MPI_Isend
end interface
interface MPI_Issend
subroutine MPI_Issend(buf, count, datatype, dest, tag, &
comm, request, ierr)
@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) :: ierr
end subroutine MPI_Issend
end interface
interface MPI_Keyval_create
subroutine MPI_Keyval_create(copy_fn, delete_fn, keyval, extra_state, ierr)
external :: copy_fn
external :: delete_fn
integer, intent(out) :: keyval
integer, intent(in) :: extra_state
integer, intent(out) :: ierr
end subroutine MPI_Keyval_create
end interface
interface MPI_Keyval_free
subroutine MPI_Keyval_free(keyval, ierr)
integer, intent(inout) :: keyval
integer, intent(out) :: ierr
end subroutine MPI_Keyval_free
end interface
interface MPI_Lookup_name
subroutine MPI_Lookup_name(service_name, info, port_name, ierr)
character(len=*), intent(in) :: service_name
integer, intent(in) :: info
character(len=*), intent(out) :: port_name
integer, intent(out) :: ierr
end subroutine MPI_Lookup_name
end interface
interface MPI_Mprobe
subroutine MPI_Mprobe(source, tag, comm, message, status, ierr)
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) :: ierr
end subroutine MPI_Mprobe
end interface
interface MPI_Mrecv
subroutine MPI_Mrecv(buf, count, datatype, message, status, ierr)
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) :: ierr
end subroutine MPI_Mrecv
end interface
interface MPI_Op_commutative
subroutine MPI_Op_commutative(op, commute, ierr)
integer, intent(in) :: op
logical, intent(out) :: commute
integer, intent(out) :: ierr
end subroutine MPI_Op_commutative
end interface
interface MPI_Op_create
subroutine MPI_Op_create(function, commute, op, ierr)
external :: function
logical, intent(in) :: commute
integer, intent(out) :: op
integer, intent(out) :: ierr
end subroutine MPI_Op_create
end interface
interface MPI_Op_free
subroutine MPI_Op_free(op, ierr)
integer, intent(inout) :: op
integer, intent(out) :: ierr
end subroutine MPI_Op_free
end interface
interface MPI_Open_port
subroutine MPI_Open_port(info, port_name, ierr)
integer, intent(in) :: info
character(len=*), intent(out) :: port_name
integer, intent(out) :: ierr
end subroutine MPI_Open_port
end interface
interface MPI_Pack
subroutine MPI_Pack(inbuf, incount, datatype, outbuf, outsize, &
position, comm, ierr)
@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) :: ierr
end subroutine MPI_Pack
end interface
interface MPI_Pack_external
subroutine MPI_Pack_external(datarep, inbuf, incount, datatype, outbuf, &
outsize, position, ierr)
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) :: ierr
end subroutine MPI_Pack_external
end interface
interface MPI_Pack_external_size
subroutine MPI_Pack_external_size(datarep, incount, datatype, size, ierr)
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) :: ierr
end subroutine MPI_Pack_external_size
end interface
interface MPI_Pack_size
subroutine MPI_Pack_size(incount, datatype, comm, size, ierr)
integer, intent(in) :: incount
integer, intent(in) :: datatype
integer, intent(in) :: comm
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Pack_size
end interface
interface MPI_Pcontrol
subroutine MPI_Pcontrol(level)
integer, intent(in) :: level
end subroutine MPI_Pcontrol
end interface
interface MPI_Probe
subroutine MPI_Probe(source, tag, comm, status, ierr)
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) :: ierr
end subroutine MPI_Probe
end interface
interface MPI_Publish_name
subroutine MPI_Publish_name(service_name, info, port_name, ierr)
character(len=*), intent(in) :: service_name
integer, intent(in) :: info
character(len=*), intent(in) :: port_name
integer, intent(out) :: ierr
end subroutine MPI_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, ierr)
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) :: ierr
end subroutine MPI_Put
end interface
interface MPI_Query_thread
subroutine MPI_Query_thread(provided, ierr)
integer, intent(out) :: provided
integer, intent(out) :: ierr
end subroutine MPI_Query_thread
end interface
interface MPI_Recv
subroutine MPI_Recv(buf, count, datatype, source, tag, &
comm, status, ierr)
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) :: ierr
end subroutine MPI_Recv
end interface
interface MPI_Recv_init
subroutine MPI_Recv_init(buf, count, datatype, source, tag, &
comm, request, ierr)
@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) :: ierr
end subroutine MPI_Recv_init
end interface
interface MPI_Reduce
subroutine MPI_Reduce(sendbuf, recvbuf, count, datatype, op, &
root, comm, ierr)
@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) :: ierr
end subroutine MPI_Reduce
end interface
interface MPI_Reduce_local
subroutine MPI_Reduce_local(inbuf, inout, count, datatype, op, &
ierr)
@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) :: ierr
end subroutine MPI_Reduce_local
end interface
interface MPI_Reduce_scatter
subroutine MPI_Reduce_scatter(sendbuf, recvbuf, recvcounts, datatype, op, &
comm, ierr)
@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) :: ierr
end subroutine MPI_Reduce_scatter
end interface
interface MPI_Reduce_scatter_block
subroutine MPI_Reduce_scatter_block(sendbuf, recvbuf, recvcount, datatype, op, &
comm, ierr)
@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) :: ierr
end subroutine MPI_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&
, ierr)
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) :: ierr
end subroutine MPI_Register_datarep
end interface
interface MPI_Request_free
subroutine MPI_Request_free(request, ierr)
integer, intent(inout) :: request
integer, intent(out) :: ierr
end subroutine MPI_Request_free
end interface
interface MPI_Request_get_status
subroutine MPI_Request_get_status(request, flag, status, ierr)
include 'mpif-config.h'
integer, intent(in) :: request
logical, intent(out) :: flag
integer, dimension(MPI_STATUS_SIZE), intent(out) :: status
integer, intent(out) :: ierr
end subroutine MPI_Request_get_status
end interface
interface MPI_Rsend
subroutine MPI_Rsend(ibuf, count, datatype, dest, tag, &
comm, ierr)
@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) :: ierr
end subroutine MPI_Rsend
end interface
interface MPI_Rsend_init
subroutine MPI_Rsend_init(buf, count, datatype, dest, tag, &
comm, request, ierr)
@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) :: ierr
end subroutine MPI_Rsend_init
end interface
interface MPI_Scan
subroutine MPI_Scan(sendbuf, recvbuf, count, datatype, op, &
comm, ierr)
@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) :: ierr
end subroutine MPI_Scan
end interface
interface MPI_Scatter
subroutine MPI_Scatter(sendbuf, sendcount, sendtype, recvbuf, recvcount, &
recvtype, root, comm, ierr)
@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) :: ierr
end subroutine MPI_Scatter
end interface
interface MPI_Scatterv
subroutine MPI_Scatterv(sendbuf, sendcounts, displs, sendtype, recvbuf, &
recvcount, recvtype, root, comm, ierr)
@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) :: ierr
end subroutine MPI_Scatterv
end interface
interface MPI_Send
subroutine MPI_Send(buf, count, datatype, dest, tag, &
comm, ierr)
@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) :: ierr
end subroutine MPI_Send
end interface
interface MPI_Send_init
subroutine MPI_Send_init(buf, count, datatype, dest, tag, &
comm, request, ierr)
@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) :: ierr
end subroutine MPI_Send_init
end interface
interface MPI_Sendrecv
subroutine MPI_Sendrecv(sendbuf, sendcount, sendtype, dest, sendtag, &
recvbuf, recvcount, recvtype, source, recvtag, comm, status, ierr)
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) :: ierr
end subroutine MPI_Sendrecv
end interface
interface MPI_Sendrecv_replace
subroutine MPI_Sendrecv_replace(buf, count, datatype, dest, sendtag, &
source, recvtag, comm, status, ierr)
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) :: ierr
end subroutine MPI_Sendrecv_replace
end interface
interface MPI_Sizeof
! JMS choice
subroutine MPI_Sizeof(x, size, ierr)
character, intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof
subroutine MPI_Sizeof0DL(x, size, ierr)
logical, intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof0DL
subroutine MPI_Sizeof0DI1(x, size, ierr)
integer*1, intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof0DI1
subroutine MPI_Sizeof0DI2(x, size, ierr)
integer*2, intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof0DI2
subroutine MPI_Sizeof0DI4(x, size, ierr)
integer*4, intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof0DI4
subroutine MPI_Sizeof0DI8(x, size, ierr)
integer*8, intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof0DI8
subroutine MPI_Sizeof0DR4(x, size, ierr)
real*4, intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof0DR4
subroutine MPI_Sizeof0DR8(x, size, ierr)
real*8, intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof0DR8
subroutine MPI_Sizeof0DC8(x, size, ierr)
complex*8, intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof0DC8
subroutine MPI_Sizeof0DC16(x, size, ierr)
complex*16, intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof0DC16
subroutine MPI_Sizeof1DCH(x, size, ierr)
character, dimension(*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof1DCH
subroutine MPI_Sizeof1DL(x, size, ierr)
logical, dimension(*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof1DL
subroutine MPI_Sizeof1DI1(x, size, ierr)
integer*1, dimension(*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof1DI1
subroutine MPI_Sizeof1DI2(x, size, ierr)
integer*2, dimension(*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof1DI2
subroutine MPI_Sizeof1DI4(x, size, ierr)
integer*4, dimension(*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof1DI4
subroutine MPI_Sizeof1DI8(x, size, ierr)
integer*8, dimension(*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof1DI8
subroutine MPI_Sizeof1DR4(x, size, ierr)
real*4, dimension(*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof1DR4
subroutine MPI_Sizeof1DR8(x, size, ierr)
real*8, dimension(*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof1DR8
subroutine MPI_Sizeof1DC8(x, size, ierr)
complex*8, dimension(*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof1DC8
subroutine MPI_Sizeof1DC16(x, size, ierr)
complex*16, dimension(*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof1DC16
subroutine MPI_Sizeof2DCH(x, size, ierr)
character, dimension(1,*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof2DCH
subroutine MPI_Sizeof2DL(x, size, ierr)
logical, dimension(1,*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof2DL
subroutine MPI_Sizeof2DI1(x, size, ierr)
integer*1, dimension(1,*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof2DI1
subroutine MPI_Sizeof2DI2(x, size, ierr)
integer*2, dimension(1,*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof2DI2
subroutine MPI_Sizeof2DI4(x, size, ierr)
integer*4, dimension(1,*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof2DI4
subroutine MPI_Sizeof2DI8(x, size, ierr)
integer*8, dimension(1,*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof2DI8
subroutine MPI_Sizeof2DR4(x, size, ierr)
real*4, dimension(1,*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof2DR4
subroutine MPI_Sizeof2DR8(x, size, ierr)
real*8, dimension(1,*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof2DR8
subroutine MPI_Sizeof2DC8(x, size, ierr)
complex*8, dimension(1,*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof2DC8
subroutine MPI_Sizeof2DC16(x, size, ierr)
complex*16, dimension(1,*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof2DC16
subroutine MPI_Sizeof3DCH(x, size, ierr)
character, dimension(1,1,*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof3DCH
subroutine MPI_Sizeof3DL(x, size, ierr)
logical, dimension(1,1,*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof3DL
subroutine MPI_Sizeof3DI1(x, size, ierr)
integer*1, dimension(1,1,*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof3DI1
subroutine MPI_Sizeof3DI2(x, size, ierr)
integer*2, dimension(1,1,*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof3DI2
subroutine MPI_Sizeof3DI4(x, size, ierr)
integer*4, dimension(1,1,*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof3DI4
subroutine MPI_Sizeof3DI8(x, size, ierr)
integer*8, dimension(1,1,*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof3DI8
subroutine MPI_Sizeof3DR4(x, size, ierr)
real*4, dimension(1,1,*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof3DR4
subroutine MPI_Sizeof3DR8(x, size, ierr)
real*8, dimension(1,1,*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof3DR8
subroutine MPI_Sizeof3DC8(x, size, ierr)
complex*8, dimension(1,1,*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof3DC8
subroutine MPI_Sizeof3DC16(x, size, ierr)
complex*16, dimension(1,1,*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof3DC16
subroutine MPI_Sizeof4DCH(x, size, ierr)
character, dimension(1,1,1,*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof4DCH
subroutine MPI_Sizeof4DL(x, size, ierr)
logical, dimension(1,1,1,*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof4DL
subroutine MPI_Sizeof4DI1(x, size, ierr)
integer*1, dimension(1,1,1,*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof4DI1
subroutine MPI_Sizeof4DI2(x, size, ierr)
integer*2, dimension(1,1,1,*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof4DI2
subroutine MPI_Sizeof4DI4(x, size, ierr)
integer*4, dimension(1,1,1,*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof4DI4
subroutine MPI_Sizeof4DI8(x, size, ierr)
integer*8, dimension(1,1,1,*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof4DI8
subroutine MPI_Sizeof4DR4(x, size, ierr)
real*4, dimension(1,1,1,*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof4DR4
subroutine MPI_Sizeof4DR8(x, size, ierr)
real*8, dimension(1,1,1,*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof4DR8
subroutine MPI_Sizeof4DC8(x, size, ierr)
complex*8, dimension(1,1,1,*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof4DC8
subroutine MPI_Sizeof4DC16(x, size, ierr)
complex*16, dimension(1,1,1,*), intent(in) :: x
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Sizeof4DC16
end interface
interface MPI_Ssend
subroutine MPI_Ssend(buf, count, datatype, dest, tag, &
comm, ierr)
@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) :: ierr
end subroutine MPI_Ssend
end interface
interface MPI_Ssend_init
subroutine MPI_Ssend_init(buf, count, datatype, dest, tag, &
comm, request, ierr)
@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) :: ierr
end subroutine MPI_Ssend_init
end interface
interface MPI_Start
subroutine MPI_Start(request, ierr)
integer, intent(inout) :: request
integer, intent(out) :: ierr
end subroutine MPI_Start
end interface
interface MPI_Startall
subroutine MPI_Startall(count, array_of_requests, ierr)
integer, intent(in) :: count
integer, dimension(*), intent(inout) :: array_of_requests
integer, intent(out) :: ierr
end subroutine MPI_Startall
end interface
interface MPI_Status_set_cancelled
subroutine MPI_Status_set_cancelled(status, flag, ierr)
include 'mpif-config.h'
integer, dimension(MPI_STATUS_SIZE), intent(inout) :: status
logical, intent(in) :: flag
integer, intent(out) :: ierr
end subroutine MPI_Status_set_cancelled
end interface
interface MPI_Status_set_elements
subroutine MPI_Status_set_elements(status, datatype, count, ierr)
include 'mpif-config.h'
integer, dimension(MPI_STATUS_SIZE), intent(inout) :: status
integer, intent(in) :: datatype
integer, intent(in) :: count
integer, intent(out) :: ierr
end subroutine MPI_Status_set_elements
end interface
interface MPI_Test
subroutine MPI_Test(request, flag, status, ierr)
include 'mpif-config.h'
integer, intent(inout) :: request
logical, intent(out) :: flag
integer, dimension(MPI_STATUS_SIZE), intent(out) :: status
integer, intent(out) :: ierr
end subroutine MPI_Test
end interface
interface MPI_Test_cancelled
subroutine MPI_Test_cancelled(status, flag, ierr)
include 'mpif-config.h'
integer, dimension(MPI_STATUS_SIZE), intent(in) :: status
logical, intent(out) :: flag
integer, intent(out) :: ierr
end subroutine MPI_Test_cancelled
end interface
interface MPI_Testall
subroutine MPI_TestallS(count, array_of_requests, flag, array_of_statuses, ierr)
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, count), intent(out) :: array_of_statuses
integer, intent(out) :: ierr
end subroutine MPI_TestallS
subroutine MPI_TestallI(count, array_of_requests, flag, array_of_statuses, ierr)
include 'mpif-config.h'
integer, intent(in) :: count
integer, dimension(count), intent(inout) :: array_of_requests
logical, intent(out) :: flag
double precision, intent(out) :: array_of_statuses
integer, intent(out) :: ierr
end subroutine MPI_TestallI
end interface
interface MPI_Testany
subroutine MPI_Testany(count, array_of_requests, index, flag, status&
, ierr)
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) :: ierr
end subroutine MPI_Testany
end interface
interface MPI_Testsome
subroutine MPI_TestsomeS(incount, array_of_requests, outcount, array_of_indices, array_of_statuses&
, ierr)
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, incount), intent(out) :: array_of_statuses
integer, intent(out) :: ierr
end subroutine MPI_TestsomeS
subroutine MPI_TestsomeI(incount, array_of_requests, outcount, array_of_indices, array_of_statuses&
, ierr)
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
double precision, intent(out) :: array_of_statuses
integer, intent(out) :: ierr
end subroutine MPI_TestsomeI
end interface
interface MPI_Topo_test
subroutine MPI_Topo_test(comm, status, ierr)
integer, intent(in) :: comm
integer, intent(out) :: status
integer, intent(out) :: ierr
end subroutine MPI_Topo_test
end interface
interface MPI_Type_commit
subroutine MPI_Type_commit(type, ierr)
integer, intent(inout) :: type
integer, intent(out) :: ierr
end subroutine MPI_Type_commit
end interface
interface MPI_Type_contiguous
subroutine MPI_Type_contiguous(count, oldtype, newtype, ierr)
integer, intent(in) :: count
integer, intent(in) :: oldtype
integer, intent(out) :: newtype
integer, intent(out) :: ierr
end subroutine MPI_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, ierr)
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) :: ierr
end subroutine MPI_Type_create_darray
end interface
interface MPI_Type_create_f90_complex
subroutine MPI_Type_create_f90_complex(p, r, newtype, ierr)
integer, intent(in) :: p
integer, intent(in) :: r
integer, intent(out) :: newtype
integer, intent(out) :: ierr
end subroutine MPI_Type_create_f90_complex
end interface
interface MPI_Type_create_f90_integer
subroutine MPI_Type_create_f90_integer(r, newtype, ierr)
integer, intent(in) :: r
integer, intent(out) :: newtype
integer, intent(out) :: ierr
end subroutine MPI_Type_create_f90_integer
end interface
interface MPI_Type_create_f90_real
subroutine MPI_Type_create_f90_real(p, r, newtype, ierr)
integer, intent(in) :: p
integer, intent(in) :: r
integer, intent(out) :: newtype
integer, intent(out) :: ierr
end subroutine MPI_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&
, ierr)
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) :: ierr
end subroutine MPI_Type_create_hindexed
end interface
interface MPI_Type_create_hvector
subroutine MPI_Type_create_hvector(count, blocklength, stride, oldtype, newtype&
, ierr)
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) :: ierr
end subroutine MPI_Type_create_hvector
end interface
interface MPI_Type_create_indexed_block
subroutine MPI_Type_create_indexed_block(count, blocklength, array_of_displacements, oldtype, newtype&
, ierr)
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) :: ierr
end subroutine MPI_Type_create_indexed_block
end interface
interface MPI_Type_create_hindexed_block
subroutine MPI_Type_create_hindexed_block(count, blocklength, array_of_displacements, oldtype, newtype&
, ierr)
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) :: ierr
end subroutine MPI_Type_create_hindexed_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, ierr)
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) :: ierr
end subroutine MPI_Type_create_keyval
end interface
interface MPI_Type_create_resized
subroutine MPI_Type_create_resized(oldtype, lb, extent, newtype, ierr)
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) :: ierr
end subroutine MPI_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&
, ierr)
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) :: ierr
end subroutine MPI_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, ierr)
integer, intent(in) :: ndims
integer, dimension(*), intent(in) :: size_array
integer, dimension(*), intent(in) :: subsize_array
integer, dimension(*), intent(in) :: start_array
integer, intent(in) :: order
integer, intent(in) :: oldtype
integer, intent(out) :: newtype
integer, intent(out) :: ierr
end subroutine MPI_Type_create_subarray
end interface
interface MPI_Type_delete_attr
subroutine MPI_Type_delete_attr(type, type_keyval, ierr)
integer, intent(in) :: type
integer, intent(in) :: type_keyval
integer, intent(out) :: ierr
end subroutine MPI_Type_delete_attr
end interface
interface MPI_Type_dup
subroutine MPI_Type_dup(type, newtype, ierr)
integer, intent(in) :: type
integer, intent(out) :: newtype
integer, intent(out) :: ierr
end subroutine MPI_Type_dup
end interface
interface MPI_Type_extent
subroutine MPI_Type_extent(type, extent, ierr)
integer, intent(in) :: type
integer, intent(out) :: extent
integer, intent(out) :: ierr
end subroutine MPI_Type_extent
end interface
interface MPI_Type_free
subroutine MPI_Type_free(type, ierr)
integer, intent(inout) :: type
integer, intent(out) :: ierr
end subroutine MPI_Type_free
end interface
interface MPI_Type_free_keyval
subroutine MPI_Type_free_keyval(type_keyval, ierr)
integer, intent(inout) :: type_keyval
integer, intent(out) :: ierr
end subroutine MPI_Type_free_keyval
end interface
interface MPI_Type_get_attr
subroutine MPI_Type_get_attr(type, type_keyval, attribute_val, flag, ierr)
include 'mpif-config.h'
integer, intent(in) :: type
integer, intent(in) :: type_keyval
integer(kind=MPI_ADDRESS_KIND), intent(out) :: attribute_val
logical, intent(out) :: flag
integer, intent(out) :: ierr
end subroutine MPI_Type_get_attr
end interface
interface MPI_Type_get_contents
subroutine MPI_Type_get_contents(mtype, max_integers, max_addresses, max_datatypes, array_of_integers, &
array_of_addresses, array_of_datatypes, ierr)
include 'mpif-config.h'
integer, intent(in) :: mtype
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) :: ierr
end subroutine MPI_Type_get_contents
end interface
interface MPI_Type_get_envelope
subroutine MPI_Type_get_envelope(type, num_integers, num_addresses, num_datatypes, combiner&
, ierr)
integer, intent(in) :: type
integer, intent(out) :: num_integers
integer, intent(out) :: num_addresses
integer, intent(out) :: num_datatypes
integer, intent(out) :: combiner
integer, intent(out) :: ierr
end subroutine MPI_Type_get_envelope
end interface
interface MPI_Type_get_extent
subroutine MPI_Type_get_extent(type, lb, extent, ierr)
include 'mpif-config.h'
integer, intent(in) :: type
integer(kind=MPI_ADDRESS_KIND), intent(out) :: lb
integer(kind=MPI_ADDRESS_KIND), intent(out) :: extent
integer, intent(out) :: ierr
end subroutine MPI_Type_get_extent
end interface
interface MPI_Type_get_name
subroutine MPI_Type_get_name(type, type_name, resultlen, ierr)
integer, intent(in) :: type
character(len=*), intent(out) :: type_name
integer, intent(out) :: resultlen
integer, intent(out) :: ierr
end subroutine MPI_Type_get_name
end interface
interface MPI_Type_get_true_extent
subroutine MPI_Type_get_true_extent(datatype, true_lb, true_extent, ierr)
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) :: ierr
end subroutine MPI_Type_get_true_extent
end interface
interface MPI_Type_hindexed
subroutine MPI_Type_hindexed(count, array_of_blocklengths, array_of_displacements, oldtype, newtype&
, ierr)
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) :: ierr
end subroutine MPI_Type_hindexed
end interface
interface MPI_Type_hvector
subroutine MPI_Type_hvector(count, blocklength, stride, oldtype, newtype&
, ierr)
integer, intent(in) :: count
integer, intent(in) :: blocklength
integer, intent(in) :: stride
integer, intent(in) :: oldtype
integer, intent(out) :: newtype
integer, intent(out) :: ierr
end subroutine MPI_Type_hvector
end interface
interface MPI_Type_indexed
subroutine MPI_Type_indexed(count, array_of_blocklengths, array_of_displacements, oldtype, newtype&
, ierr)
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) :: ierr
end subroutine MPI_Type_indexed
end interface
interface MPI_Type_lb
subroutine MPI_Type_lb(type, lb, ierr)
integer, intent(in) :: type
integer, intent(out) :: lb
integer, intent(out) :: ierr
end subroutine MPI_Type_lb
end interface
interface MPI_Type_match_size
subroutine MPI_Type_match_size(typeclass, size, type, ierr)
integer, intent(in) :: typeclass
integer, intent(in) :: size
integer, intent(out) :: type
integer, intent(out) :: ierr
end subroutine MPI_Type_match_size
end interface
interface MPI_Type_set_attr
subroutine MPI_Type_set_attr(type, type_keyval, attr_val, ierr)
include 'mpif-config.h'
integer, intent(in) :: type
integer, intent(in) :: type_keyval
integer(kind=MPI_ADDRESS_KIND), intent(in) :: attr_val
integer, intent(out) :: ierr
end subroutine MPI_Type_set_attr
end interface
interface MPI_Type_set_name
subroutine MPI_Type_set_name(type, type_name, ierr)
integer, intent(in) :: type
character(len=*), intent(in) :: type_name
integer, intent(out) :: ierr
end subroutine MPI_Type_set_name
end interface
interface MPI_Type_size
subroutine MPI_Type_size(type, size, ierr)
integer, intent(in) :: type
integer, intent(out) :: size
integer, intent(out) :: ierr
end subroutine MPI_Type_size
end interface
interface MPI_Type_struct
subroutine MPI_Type_struct(count, array_of_blocklengths, array_of_displacements, array_of_types, newtype&
, ierr)
integer, intent(in) :: count
integer, dimension(*), intent(in) :: array_of_blocklengths
integer, dimension(*), intent(in) :: array_of_displacements
integer, dimension(*), intent(in) :: array_of_types
integer, intent(out) :: newtype
integer, intent(out) :: ierr
end subroutine MPI_Type_struct
end interface
interface MPI_Type_ub
subroutine MPI_Type_ub(mtype, ub, ierr)
integer, intent(in) :: mtype
integer, intent(out) :: ub
integer, intent(out) :: ierr
end subroutine MPI_Type_ub
end interface
interface MPI_Type_vector
subroutine MPI_Type_vector(count, blocklength, stride, oldtype, newtype&
, ierr)
integer, intent(in) :: count
integer, intent(in) :: blocklength
integer, intent(in) :: stride
integer, intent(in) :: oldtype
integer, intent(out) :: newtype
integer, intent(out) :: ierr
end subroutine MPI_Type_vector
end interface
interface MPI_Unpack
subroutine MPI_Unpack(inbuf, insize, position, outbuf, outcount, &
datatype, comm, ierr)
@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) :: ierr
end subroutine MPI_Unpack
end interface
interface MPI_Unpack_external
subroutine MPI_Unpack_external(datarep, inbuf, insize, position, outbuf, &
outcount, datatype, ierr)
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) :: ierr
end subroutine MPI_Unpack_external
end interface
interface MPI_Unpublish_name
subroutine MPI_Unpublish_name(service_name, info, port_name, ierr)
character(len=*), intent(in) :: service_name
integer, intent(in) :: info
character(len=*), intent(in) :: port_name
integer, intent(out) :: ierr
end subroutine MPI_Unpublish_name
end interface
interface MPI_Wait
subroutine MPI_Wait(request, status, ierr)
include 'mpif-config.h'
integer, intent(inout) :: request
integer, dimension(MPI_STATUS_SIZE), intent(out) :: status
integer, intent(out) :: ierr
end subroutine MPI_Wait
end interface
interface MPI_Waitall
subroutine MPI_WaitallS(count, array_of_requests, array_of_statuses, ierr)
include 'mpif-config.h'
integer, intent(in) :: count
integer, dimension(count), intent(inout) :: array_of_requests
integer, dimension(MPI_STATUS_SIZE, count), intent(out) :: array_of_statuses
integer, intent(out) :: ierr
end subroutine MPI_WaitallS
subroutine MPI_WaitallI(count, array_of_requests, array_of_statuses, ierr)
include 'mpif-config.h'
integer, intent(in) :: count
integer, dimension(count), intent(inout) :: array_of_requests
double precision, intent(out) :: array_of_statuses
integer, intent(out) :: ierr
end subroutine MPI_WaitallI
end interface
interface MPI_Waitany
subroutine MPI_Waitany(count, array_of_requests, index, status, ierr)
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) :: ierr
end subroutine MPI_Waitany
end interface
interface MPI_Waitsome
subroutine MPI_WaitsomeS(incount, array_of_requests, outcount, array_of_indices, array_of_statuses&
, ierr)
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, incount), intent(out) :: array_of_statuses
integer, intent(out) :: ierr
end subroutine MPI_WaitsomeS
subroutine MPI_WaitsomeI(incount, array_of_requests, outcount, array_of_indices, array_of_statuses&
, ierr)
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
double precision, intent(out) :: array_of_statuses
integer, intent(out) :: ierr
end subroutine MPI_WaitsomeI
end interface
interface MPI_Win_call_errhandler
subroutine MPI_Win_call_errhandler(win, errorcode, ierr)
integer, intent(in) :: win
integer, intent(in) :: errorcode
integer, intent(out) :: ierr
end subroutine MPI_Win_call_errhandler
end interface
interface MPI_Win_complete
subroutine MPI_Win_complete(win, ierr)
integer, intent(in) :: win
integer, intent(out) :: ierr
end subroutine MPI_Win_complete
end interface
interface MPI_Win_create
subroutine MPI_Win_create(base, size, disp_unit, info, comm, &
win, ierr)
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) :: ierr
end subroutine MPI_Win_create
end interface
interface MPI_Win_create_errhandler
subroutine MPI_Win_create_errhandler(function, errhandler, ierr)
external :: function
integer, intent(out) :: errhandler
integer, intent(out) :: ierr
end subroutine MPI_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, ierr)
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) :: ierr
end subroutine MPI_Win_create_keyval
end interface
interface MPI_Win_delete_attr
subroutine MPI_Win_delete_attr(win, win_keyval, ierr)
integer, intent(in) :: win
integer, intent(in) :: win_keyval
integer, intent(out) :: ierr
end subroutine MPI_Win_delete_attr
end interface
interface MPI_Win_fence
subroutine MPI_Win_fence(assert, win, ierr)
integer, intent(in) :: assert
integer, intent(in) :: win
integer, intent(out) :: ierr
end subroutine MPI_Win_fence
end interface
interface MPI_Win_free
subroutine MPI_Win_free(win, ierr)
integer, intent(inout) :: win
integer, intent(out) :: ierr
end subroutine MPI_Win_free
end interface
interface MPI_Win_free_keyval
subroutine MPI_Win_free_keyval(win_keyval, ierr)
integer, intent(inout) :: win_keyval
integer, intent(out) :: ierr
end subroutine MPI_Win_free_keyval
end interface
interface MPI_Win_get_attr
subroutine MPI_Win_get_attr(win, win_keyval, attribute_val, flag, ierr)
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) :: ierr
end subroutine MPI_Win_get_attr
end interface
interface MPI_Win_get_errhandler
subroutine MPI_Win_get_errhandler(win, errhandler, ierr)
integer, intent(in) :: win
integer, intent(out) :: errhandler
integer, intent(out) :: ierr
end subroutine MPI_Win_get_errhandler
end interface
interface MPI_Win_get_group
subroutine MPI_Win_get_group(win, group, ierr)
integer, intent(in) :: win
integer, intent(out) :: group
integer, intent(out) :: ierr
end subroutine MPI_Win_get_group
end interface
interface MPI_Win_get_name
subroutine MPI_Win_get_name(win, win_name, resultlen, ierr)
integer, intent(in) :: win
character(len=*), intent(out) :: win_name
integer, intent(out) :: resultlen
integer, intent(out) :: ierr
end subroutine MPI_Win_get_name
end interface
interface MPI_Win_lock
subroutine MPI_Win_lock(lock_type, rank, assert, win, ierr)
integer, intent(in) :: lock_type
integer, intent(in) :: rank
integer, intent(in) :: assert
integer, intent(in) :: win
integer, intent(out) :: ierr
end subroutine MPI_Win_lock
end interface
interface MPI_Win_post
subroutine MPI_Win_post(group, assert, win, ierr)
integer, intent(in) :: group
integer, intent(in) :: assert
integer, intent(in) :: win
integer, intent(out) :: ierr
end subroutine MPI_Win_post
end interface
interface MPI_Win_set_attr
subroutine MPI_Win_set_attr(win, win_keyval, attribute_val, ierr)
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) :: ierr
end subroutine MPI_Win_set_attr
end interface
interface MPI_Win_set_errhandler
subroutine MPI_Win_set_errhandler(win, errhandler, ierr)
integer, intent(in) :: win
integer, intent(in) :: errhandler
integer, intent(out) :: ierr
end subroutine MPI_Win_set_errhandler
end interface
interface MPI_Win_set_name
subroutine MPI_Win_set_name(win, win_name, ierr)
integer, intent(in) :: win
character(len=*), intent(in) :: win_name
integer, intent(out) :: ierr
end subroutine MPI_Win_set_name
end interface
interface MPI_Win_start
subroutine MPI_Win_start(group, assert, win, ierr)
integer, intent(in) :: group
integer, intent(in) :: assert
integer, intent(in) :: win
integer, intent(out) :: ierr
end subroutine MPI_Win_start
end interface
interface MPI_Win_test
subroutine MPI_Win_test(win, flag, ierr)
integer, intent(in) :: win
logical, intent(out) :: flag
integer, intent(out) :: ierr
end subroutine MPI_Win_test
end interface
interface MPI_Win_unlock
subroutine MPI_Win_unlock(rank, win, ierr)
integer, intent(in) :: rank
integer, intent(in) :: win
integer, intent(out) :: ierr
end subroutine MPI_Win_unlock
end interface
interface MPI_Win_wait
subroutine MPI_Win_wait(win, ierr)
integer, intent(in) :: win
integer, intent(out) :: ierr
end subroutine MPI_Win_wait
end interface
interface MPI_Wtick
function MPI_Wtick()
double precision MPI_Wtick
end function MPI_Wtick
end interface
interface MPI_Wtime
function MPI_Wtime()
double precision MPI_Wtime
end function MPI_Wtime
end interface