dbcsr_mpiwrap Module

Interface to the message passing library MPI



Contents

mp_set_comm_handle mp_set_request_handle mp_set_win_handle mp_set_file_handle mp_set_info_handle mp_world_init mp_reordering mp_world_finalize add_mp_perf_env mp_perf_env_create mp_perf_env_release mp_perf_env_retain mp_perf_env_describe rm_mp_perf_env describe_mp_perf_env mp_abort mp_stop mp_sync mp_isync mp_environ_l mp_environ_c mp_environ_c2 mp_cart_create mp_cart_coords mp_comm_compare mp_cart_sub mp_comm_free mp_comm_dup mp_rank_compare mp_dims_create mp_cart_rank mp_wait mp_waitall_1 mp_waitall_2 mp_waitany mp_test_1 mp_testany_1 mp_testany_2 mp_comm_split_direct mp_comm_split mp_probe mp_bcast_b mp_bcast_bv mp_isend_bv mp_irecv_bv mp_bcast_av mp_bcast_am mp_minloc_dv mp_maxloc_dv mp_sum_b mp_sum_bv mp_isum_bv mp_get_library_version mp_get_processor_name mp_file_open mp_file_delete mp_file_close mp_file_get_size mp_file_get_position mp_file_write_at_ch mp_file_write_at_all_ch mp_file_read_at_all_ch mp_type_size mp_type_free_m mp_isend_custom mp_irecv_custom mp_win_free mp_win_flush_all mp_win_lock_all mp_win_unlock_all mp_alltoall_i11v mp_alltoall_i mp_alltoall_i22 mp_alltoall_i44 mp_send_i mp_send_iv mp_recv_i mp_recv_iv mp_bcast_i mp_ibcast_i mp_bcast_iv mp_ibcast_iv mp_bcast_im mp_bcast_i3 mp_sum_i mp_sum_iv mp_isum_iv mp_sum_im mp_sum_im3 mp_sum_im4 mp_sum_root_iv mp_sum_root_im mp_sum_partial_im mp_max_i mp_max_iv mp_min_i mp_min_iv mp_prod_i mp_iscatter_i mp_iscatter_iv2 mp_iscatterv_iv mp_gather_i mp_gather_iv mp_gather_im mp_gatherv_iv mp_allgather_i mp_allgather_i2 mp_iallgather_i mp_allgather_i12 mp_allgather_i23 mp_allgather_i34 mp_allgather_i22 mp_iallgather_i11 mp_iallgather_i13 mp_iallgather_i22 mp_iallgather_i24 mp_iallgather_i33 mp_allgatherv_iv mp_iallgatherv_iv mp_iallgatherv_iv2 mp_sendrecv_iv mp_isendrecv_i mp_isendrecv_iv mp_isend_iv mp_isend_im2 mp_irecv_iv mp_irecv_im2 mp_win_create_iv mp_rget_iv mp_allocate_i mp_deallocate_i mp_file_write_at_iv mp_file_write_at_i mp_file_write_at_all_iv mp_file_write_at_all_i mp_file_read_at_all_iv mp_file_read_at_all_i mp_alltoall_l11v mp_alltoall_l mp_alltoall_l22 mp_alltoall_l44 mp_send_l mp_send_lv mp_recv_l mp_recv_lv mp_bcast_l mp_ibcast_l mp_bcast_lv mp_ibcast_lv mp_bcast_lm mp_bcast_l3 mp_sum_l mp_sum_lv mp_isum_lv mp_sum_lm mp_sum_lm3 mp_sum_lm4 mp_sum_root_lv mp_sum_root_lm mp_sum_partial_lm mp_max_l mp_max_lv mp_min_l mp_min_lv mp_prod_l mp_iscatter_l mp_iscatter_lv2 mp_iscatterv_lv mp_gather_l mp_gather_lv mp_gather_lm mp_gatherv_lv mp_allgather_l mp_allgather_l2 mp_iallgather_l mp_allgather_l12 mp_allgather_l23 mp_allgather_l34 mp_allgather_l22 mp_iallgather_l11 mp_iallgather_l13 mp_iallgather_l22 mp_iallgather_l24 mp_iallgather_l33 mp_allgatherv_lv mp_iallgatherv_lv mp_iallgatherv_lv2 mp_sendrecv_lv mp_isendrecv_l mp_isendrecv_lv mp_isend_lv mp_isend_lm2 mp_irecv_lv mp_irecv_lm2 mp_win_create_lv mp_rget_lv mp_allocate_l mp_deallocate_l mp_file_write_at_lv mp_file_write_at_l mp_file_write_at_all_lv mp_file_write_at_all_l mp_file_read_at_all_lv mp_file_read_at_all_l mp_alltoall_d11v mp_alltoall_d mp_alltoall_d22 mp_alltoall_d44 mp_send_d mp_send_dv mp_recv_d mp_recv_dv mp_bcast_d mp_ibcast_d mp_bcast_dv mp_ibcast_dv mp_bcast_dm mp_bcast_d3 mp_sum_d mp_sum_dv mp_isum_dv mp_sum_dm mp_sum_dm3 mp_sum_dm4 mp_sum_root_dv mp_sum_root_dm mp_sum_partial_dm mp_max_d mp_max_dv mp_min_d mp_min_dv mp_prod_d mp_iscatter_d mp_iscatter_dv2 mp_iscatterv_dv mp_gather_d mp_gather_dv mp_gather_dm mp_gatherv_dv mp_allgather_d mp_allgather_d2 mp_iallgather_d mp_allgather_d12 mp_allgather_d23 mp_allgather_d34 mp_allgather_d22 mp_iallgather_d11 mp_iallgather_d13 mp_iallgather_d22 mp_iallgather_d24 mp_iallgather_d33 mp_allgatherv_dv mp_iallgatherv_dv mp_iallgatherv_dv2 mp_sendrecv_dv mp_isendrecv_d mp_isendrecv_dv mp_isend_dv mp_isend_dm2 mp_irecv_dv mp_irecv_dm2 mp_win_create_dv mp_rget_dv mp_allocate_d mp_deallocate_d mp_file_write_at_dv mp_file_write_at_d mp_file_write_at_all_dv mp_file_write_at_all_d mp_file_read_at_all_dv mp_file_read_at_all_d mp_alltoall_r11v mp_alltoall_r mp_alltoall_r22 mp_alltoall_r44 mp_send_r mp_send_rv mp_recv_r mp_recv_rv mp_bcast_r mp_ibcast_r mp_bcast_rv mp_ibcast_rv mp_bcast_rm mp_bcast_r3 mp_sum_r mp_sum_rv mp_isum_rv mp_sum_rm mp_sum_rm3 mp_sum_rm4 mp_sum_root_rv mp_sum_root_rm mp_sum_partial_rm mp_max_r mp_max_rv mp_min_r mp_min_rv mp_prod_r mp_iscatter_r mp_iscatter_rv2 mp_iscatterv_rv mp_gather_r mp_gather_rv mp_gather_rm mp_gatherv_rv mp_allgather_r mp_allgather_r2 mp_iallgather_r mp_allgather_r12 mp_allgather_r23 mp_allgather_r34 mp_allgather_r22 mp_iallgather_r11 mp_iallgather_r13 mp_iallgather_r22 mp_iallgather_r24 mp_iallgather_r33 mp_allgatherv_rv mp_iallgatherv_rv mp_iallgatherv_rv2 mp_sendrecv_rv mp_isendrecv_r mp_isendrecv_rv mp_isend_rv mp_isend_rm2 mp_irecv_rv mp_irecv_rm2 mp_win_create_rv mp_rget_rv mp_allocate_r mp_deallocate_r mp_file_write_at_rv mp_file_write_at_r mp_file_write_at_all_rv mp_file_write_at_all_r mp_file_read_at_all_rv mp_file_read_at_all_r mp_alltoall_z11v mp_alltoall_z mp_alltoall_z22 mp_alltoall_z44 mp_send_z mp_send_zv mp_recv_z mp_recv_zv mp_bcast_z mp_ibcast_z mp_bcast_zv mp_ibcast_zv mp_bcast_zm mp_bcast_z3 mp_sum_z mp_sum_zv mp_isum_zv mp_sum_zm mp_sum_zm3 mp_sum_zm4 mp_sum_root_zv mp_sum_root_zm mp_sum_partial_zm mp_max_z mp_max_zv mp_min_z mp_min_zv mp_prod_z mp_iscatter_z mp_iscatter_zv2 mp_iscatterv_zv mp_gather_z mp_gather_zv mp_gather_zm mp_gatherv_zv mp_allgather_z mp_allgather_z2 mp_iallgather_z mp_allgather_z12 mp_allgather_z23 mp_allgather_z34 mp_allgather_z22 mp_iallgather_z11 mp_iallgather_z13 mp_iallgather_z22 mp_iallgather_z24 mp_iallgather_z33 mp_allgatherv_zv mp_iallgatherv_zv mp_iallgatherv_zv2 mp_sendrecv_zv mp_isendrecv_z mp_isendrecv_zv mp_isend_zv mp_isend_zm2 mp_irecv_zv mp_irecv_zm2 mp_win_create_zv mp_rget_zv mp_allocate_z mp_deallocate_z mp_file_write_at_zv mp_file_write_at_z mp_file_write_at_all_zv mp_file_write_at_all_z mp_file_read_at_all_zv mp_file_read_at_all_z mp_alltoall_c11v mp_alltoall_c mp_alltoall_c22 mp_alltoall_c44 mp_send_c mp_send_cv mp_recv_c mp_recv_cv mp_bcast_c mp_ibcast_c mp_bcast_cv mp_ibcast_cv mp_bcast_cm mp_bcast_c3 mp_sum_c mp_sum_cv mp_isum_cv mp_sum_cm mp_sum_cm3 mp_sum_cm4 mp_sum_root_cv mp_sum_root_cm mp_sum_partial_cm mp_max_c mp_max_cv mp_min_c mp_min_cv mp_prod_c mp_iscatter_c mp_iscatter_cv2 mp_iscatterv_cv mp_gather_c mp_gather_cv mp_gather_cm mp_gatherv_cv mp_allgather_c mp_allgather_c2 mp_iallgather_c mp_allgather_c12 mp_allgather_c23 mp_allgather_c34 mp_allgather_c22 mp_iallgather_c11 mp_iallgather_c13 mp_iallgather_c22 mp_iallgather_c24 mp_iallgather_c33 mp_allgatherv_cv mp_iallgatherv_cv mp_iallgatherv_cv2 mp_sendrecv_cv mp_isendrecv_c mp_isendrecv_cv mp_isend_cv mp_isend_cm2 mp_irecv_cv mp_irecv_cm2 mp_win_create_cv mp_rget_cv mp_allocate_c mp_deallocate_c mp_file_write_at_cv mp_file_write_at_c mp_file_write_at_all_cv mp_file_write_at_all_c mp_file_read_at_all_cv mp_file_read_at_all_c

Variables

Type Visibility Attributes Name Initial
logical, public, parameter :: dbcsr_is_parallel = .FALSE.
integer, public, parameter :: mp_any_tag = -1
integer, public, parameter :: mp_any_source = -2
integer, private, parameter :: mp_comm_null_handle = -3
integer, private, parameter :: mp_comm_self_handle = -11
integer, private, parameter :: mp_comm_world_handle = -12
integer, private, parameter :: mp_request_null_handle = -4
integer, private, parameter :: mp_win_null_handle = -5
integer, private, parameter :: mp_file_null_handle = -6
integer, private, parameter :: mp_info_null_handle = -7
integer, public, parameter :: mp_status_size = -7
integer, public, parameter :: mp_proc_null = -8
integer, public, parameter :: mp_max_library_version_string = 1
integer, public, parameter :: file_offset = int_8
integer, public, parameter :: address_kind = int_8
integer, public, parameter :: file_amode_create = 1
integer, public, parameter :: file_amode_rdonly = 2
integer, public, parameter :: file_amode_wronly = 4
integer, public, parameter :: file_amode_rdwr = 8
integer, public, parameter :: file_amode_excl = 64
integer, public, parameter :: file_amode_append = 128
type(mp_comm_type), public, parameter :: mp_comm_null = mp_comm_type(mp_comm_null_handle)
type(mp_comm_type), public, parameter :: mp_comm_self = mp_comm_type(mp_comm_self_handle)
type(mp_comm_type), public, parameter :: mp_comm_world = mp_comm_type(mp_comm_world_handle)
type(mp_request_type), public, parameter :: mp_request_null = mp_request_type(mp_request_null_handle)
type(mp_win_type), public, parameter :: mp_win_null = mp_win_type(mp_win_null_handle)
type(mp_file_type), public, parameter :: mp_file_null = mp_file_type(mp_file_null_handle)
type(mp_info_type), public, parameter :: mp_info_null = mp_info_type(mp_info_null_handle)
integer, public, parameter :: mpi_character_size = 1
integer, public, parameter :: mpi_integer_size = 4
character(len=*), private, parameter :: moduleN = 'dbcsr_mpiwrap'
integer, private, parameter :: MAX_PERF = 28
integer, private, parameter :: max_stack_size = 10
integer, private :: stack_pointer = 0
type(mp_perf_env_p_type), private, DIMENSION(max_stack_size), TARGET, SAVE :: mp_perf_stack
character(len=20), private, parameter :: sname(MAX_PERF) = (/"MP_Group            ", "MP_Bcast            ", "MP_Allreduce        ", "MP_Gather           ", "MP_Sync             ", "MP_Alltoall         ", "MP_SendRecv         ", "MP_ISendRecv        ", "MP_Wait             ", "MP_comm_split       ", "MP_ISend            ", "MP_IRecv            ", "MP_Send             ", "MP_Recv             ", "MP_Memory           ", "MP_Put              ", "MP_Get              ", "MP_Fence            ", "MP_Win_Lock         ", "MP_Win_Create       ", "MP_Win_Free         ", "MP_IBcast           ", "MP_IAllreduce       ", "MP_IScatter         ", "MP_RGet             ", "MP_Isync            ", "MP_Read_All         ", "MP_Write_All        "/)
integer, private, parameter :: intlen = BIT_SIZE(0)/8
integer, private, parameter :: reallen = 8
integer, private, parameter :: loglen = BIT_SIZE(0)/8
integer, private, parameter :: charlen = 1
integer, private, SAVE :: last_mp_perf_env_id = 0

Interfaces

public interface mp_environ

  • private recursive subroutine mp_environ_l(numtask, taskid, groupid)

    returns number of tasks and task id for a given mpi group simple and cartesian version.. recursive needed in case of failing mpi_comm_rank.

    Arguments

    Type IntentOptional Attributes Name
    integer, intent(out), optional :: numtask
    integer, intent(out), optional :: taskid
    type(mp_comm_type), intent(in) :: groupid

    mpi communicator

  • private subroutine mp_environ_c(numtask, dims, task_coor, groupid)

    Arguments

    Type IntentOptional Attributes Name
    integer, intent(out) :: numtask
    integer, intent(out) :: dims(2)
    integer, intent(out) :: task_coor(2)
    type(mp_comm_type), intent(in) :: groupid
  • private subroutine mp_environ_c2(comm, ndims, dims, task_coor, periods)

    Arguments

    Type IntentOptional Attributes Name
    type(mp_comm_type), intent(in) :: comm
    integer, intent(in) :: ndims
    integer, intent(out) :: dims(ndims)
    integer, intent(out) :: task_coor(ndims)
    logical, intent(out) :: periods(ndims)

public interface mp_waitall

  • private subroutine mp_waitall_1(requests)

    waits for completion of the given requests

    Arguments

    Type IntentOptional Attributes Name
    type(mp_request_type), intent(inout), DIMENSION(:) :: requests
  • private subroutine mp_waitall_2(requests)

    waits for completion of the given requests

    Arguments

    Type IntentOptional Attributes Name
    type(mp_request_type), intent(inout), DIMENSION(:, :) :: requests

public interface mp_testall

  • private function mp_testall_tv(requests) result(flag)

    Tests for completion of the given requests. We use mpi_test so that we can use a single status.

    Arguments

    Type IntentOptional Attributes Name
    type(mp_request_type), DIMENSION(:) :: requests

    the list of requests to test

    Return Value logical

    logical which determines if requests are complete

public interface mp_test

  • private subroutine mp_test_1(request, flag)

    Tests for completion of the given request.

    Arguments

    Type IntentOptional Attributes Name
    type(mp_request_type), intent(inout) :: request

    the request

    logical, intent(out) :: flag

    logical which determines if the request is completed

public interface mp_testany

  • private subroutine mp_testany_1(requests, completed, flag)

    tests for completion of the given requests

    Arguments

    Type IntentOptional Attributes Name
    type(mp_request_type), intent(inout), DIMENSION(:) :: requests
    integer, intent(out), optional :: completed
    logical, intent(out), optional :: flag
  • private subroutine mp_testany_2(requests, completed, flag)

    tests for completion of the given requests

    Arguments

    Type IntentOptional Attributes Name
    type(mp_request_type), intent(inout), DIMENSION(:, :) :: requests
    integer, intent(out), optional :: completed
    logical, intent(out), optional :: flag

public interface mp_minloc

  • private subroutine mp_minloc_dv(msg, gid)

    Finds the location of the minimal element in a vector.

    MPI mapping mpi_allreduce with the MPI_MINLOC reduction function identifier

    Invalid data types This routine is invalid for (int_8) data!

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(inout), CONTIGUOUS :: msg(:)

    Find location of maximum element among these data (input).

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

public interface mp_maxloc

  • private subroutine mp_maxloc_dv(msg, gid)

    Finds the location of the maximal element in a vector.

    MPI mapping mpi_allreduce with the MPI_MAXLOC reduction function identifier

    Invalid data types This routine is invalid for (int_8) data!

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(inout), CONTIGUOUS :: msg(:)

    Find location of maximum element among these data (input).

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

public interface mp_bcast

  • private subroutine mp_bcast_i(msg, source, gid)

    Broadcasts a datum to all processes.

    MPI mapping mpi_bcast

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4) :: msg

    Datum to broadcast

    integer :: source

    Processes which broadcasts

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_bcast_iv(msg, source, gid)

    Broadcasts rank-1 data to all processes

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), CONTIGUOUS :: msg(:)

    Data to broadcast

    integer :: source
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_bcast_im(msg, source, gid)

    Broadcasts rank-2 data to all processes

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), CONTIGUOUS :: msg(:,:)

    Data to broadcast

    integer :: source
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_bcast_i3(msg, source, gid)

    Broadcasts rank-3 data to all processes

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), CONTIGUOUS :: msg(:,:,:)

    Data to broadcast

    integer :: source
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_bcast_l(msg, source, gid)

    Broadcasts a datum to all processes.

    MPI mapping mpi_bcast

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8) :: msg

    Datum to broadcast

    integer :: source

    Processes which broadcasts

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_bcast_lv(msg, source, gid)

    Broadcasts rank-1 data to all processes

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), CONTIGUOUS :: msg(:)

    Data to broadcast

    integer :: source
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_bcast_lm(msg, source, gid)

    Broadcasts rank-2 data to all processes

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), CONTIGUOUS :: msg(:,:)

    Data to broadcast

    integer :: source
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_bcast_l3(msg, source, gid)

    Broadcasts rank-3 data to all processes

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), CONTIGUOUS :: msg(:,:,:)

    Data to broadcast

    integer :: source
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_bcast_d(msg, source, gid)

    Broadcasts a datum to all processes.

    MPI mapping mpi_bcast

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8) :: msg

    Datum to broadcast

    integer :: source

    Processes which broadcasts

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_bcast_dv(msg, source, gid)

    Broadcasts rank-1 data to all processes

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), CONTIGUOUS :: msg(:)

    Data to broadcast

    integer :: source
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_bcast_dm(msg, source, gid)

    Broadcasts rank-2 data to all processes

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), CONTIGUOUS :: msg(:,:)

    Data to broadcast

    integer :: source
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_bcast_d3(msg, source, gid)

    Broadcasts rank-3 data to all processes

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), CONTIGUOUS :: msg(:,:,:)

    Data to broadcast

    integer :: source
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_bcast_r(msg, source, gid)

    Broadcasts a datum to all processes.

    MPI mapping mpi_bcast

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4) :: msg

    Datum to broadcast

    integer :: source

    Processes which broadcasts

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_bcast_rv(msg, source, gid)

    Broadcasts rank-1 data to all processes

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), CONTIGUOUS :: msg(:)

    Data to broadcast

    integer :: source
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_bcast_rm(msg, source, gid)

    Broadcasts rank-2 data to all processes

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), CONTIGUOUS :: msg(:,:)

    Data to broadcast

    integer :: source
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_bcast_r3(msg, source, gid)

    Broadcasts rank-3 data to all processes

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), CONTIGUOUS :: msg(:,:,:)

    Data to broadcast

    integer :: source
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_bcast_z(msg, source, gid)

    Broadcasts a datum to all processes.

    MPI mapping mpi_bcast

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8) :: msg

    Datum to broadcast

    integer :: source

    Processes which broadcasts

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_bcast_zv(msg, source, gid)

    Broadcasts rank-1 data to all processes

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), CONTIGUOUS :: msg(:)

    Data to broadcast

    integer :: source
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_bcast_zm(msg, source, gid)

    Broadcasts rank-2 data to all processes

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), CONTIGUOUS :: msg(:,:)

    Data to broadcast

    integer :: source
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_bcast_z3(msg, source, gid)

    Broadcasts rank-3 data to all processes

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), CONTIGUOUS :: msg(:,:,:)

    Data to broadcast

    integer :: source
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_bcast_c(msg, source, gid)

    Broadcasts a datum to all processes.

    MPI mapping mpi_bcast

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4) :: msg

    Datum to broadcast

    integer :: source

    Processes which broadcasts

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_bcast_cv(msg, source, gid)

    Broadcasts rank-1 data to all processes

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), CONTIGUOUS :: msg(:)

    Data to broadcast

    integer :: source
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_bcast_cm(msg, source, gid)

    Broadcasts rank-2 data to all processes

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), CONTIGUOUS :: msg(:,:)

    Data to broadcast

    integer :: source
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_bcast_c3(msg, source, gid)

    Broadcasts rank-3 data to all processes

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), CONTIGUOUS :: msg(:,:,:)

    Data to broadcast

    integer :: source
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_bcast_b(msg, source, gid)

    Arguments

    Type IntentOptional Attributes Name
    logical :: msg
    integer :: source
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_bcast_bv(msg, source, gid)

    Arguments

    Type IntentOptional Attributes Name
    logical, CONTIGUOUS :: msg(:)
    integer :: source
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_bcast_av(msg, source, gid)

    Arguments

    Type IntentOptional Attributes Name
    character(len=*) :: msg
    integer :: source
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_bcast_am(msg, source, gid)

    Arguments

    Type IntentOptional Attributes Name
    character(len=*) :: msg(:)
    integer :: source
    type(mp_comm_type), intent(in) :: gid

public interface mp_ibcast

  • private subroutine mp_ibcast_i(msg, source, gid, request)

    Broadcasts a datum to all processes.

    MPI mapping mpi_bcast

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4) :: msg

    Datum to broadcast

    integer :: source

    Processes which broadcasts

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_ibcast_iv(msg, source, gid, request)

    Broadcasts rank-1 data to all processes

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), CONTIGUOUS :: msg(:)

    Data to broadcast

    integer :: source
    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_ibcast_l(msg, source, gid, request)

    Broadcasts a datum to all processes.

    MPI mapping mpi_bcast

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8) :: msg

    Datum to broadcast

    integer :: source

    Processes which broadcasts

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_ibcast_lv(msg, source, gid, request)

    Broadcasts rank-1 data to all processes

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), CONTIGUOUS :: msg(:)

    Data to broadcast

    integer :: source
    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_ibcast_d(msg, source, gid, request)

    Broadcasts a datum to all processes.

    MPI mapping mpi_bcast

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8) :: msg

    Datum to broadcast

    integer :: source

    Processes which broadcasts

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_ibcast_dv(msg, source, gid, request)

    Broadcasts rank-1 data to all processes

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), CONTIGUOUS :: msg(:)

    Data to broadcast

    integer :: source
    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_ibcast_r(msg, source, gid, request)

    Broadcasts a datum to all processes.

    MPI mapping mpi_bcast

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4) :: msg

    Datum to broadcast

    integer :: source

    Processes which broadcasts

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_ibcast_rv(msg, source, gid, request)

    Broadcasts rank-1 data to all processes

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), CONTIGUOUS :: msg(:)

    Data to broadcast

    integer :: source
    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_ibcast_z(msg, source, gid, request)

    Broadcasts a datum to all processes.

    MPI mapping mpi_bcast

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8) :: msg

    Datum to broadcast

    integer :: source

    Processes which broadcasts

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_ibcast_zv(msg, source, gid, request)

    Broadcasts rank-1 data to all processes

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), CONTIGUOUS :: msg(:)

    Data to broadcast

    integer :: source
    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_ibcast_c(msg, source, gid, request)

    Broadcasts a datum to all processes.

    MPI mapping mpi_bcast

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4) :: msg

    Datum to broadcast

    integer :: source

    Processes which broadcasts

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_ibcast_cv(msg, source, gid, request)

    Broadcasts rank-1 data to all processes

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), CONTIGUOUS :: msg(:)

    Data to broadcast

    integer :: source
    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(inout) :: request

public interface mp_sum

  • private subroutine mp_sum_i(msg, gid)

    Sums a datum from all processes with result left on all processes.

    MPI mapping mpi_allreduce

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(inout) :: msg

    Datum to sum (input) and result (output)

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_sum_iv(msg, gid)

    Element-wise sum of a rank-1 array on all processes.

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(inout), CONTIGUOUS :: msg(:)

    Vector to sum and result

    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_sum_im(msg, gid)

    Element-wise sum of a rank-2 array on all processes.

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(inout), CONTIGUOUS :: msg(:,:)

    Matrix to sum and result

    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_sum_im3(msg, gid)

    Element-wise sum of a rank-3 array on all processes.

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(inout), CONTIGUOUS :: msg(:,:,:)

    Array to sum and result

    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_sum_im4(msg, gid)

    Element-wise sum of a rank-4 array on all processes.

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(inout), CONTIGUOUS :: msg(:,:,:,:)

    Array to sum and result

    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_sum_l(msg, gid)

    Sums a datum from all processes with result left on all processes.

    MPI mapping mpi_allreduce

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(inout) :: msg

    Datum to sum (input) and result (output)

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_sum_lv(msg, gid)

    Element-wise sum of a rank-1 array on all processes.

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(inout), CONTIGUOUS :: msg(:)

    Vector to sum and result

    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_sum_lm(msg, gid)

    Element-wise sum of a rank-2 array on all processes.

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(inout), CONTIGUOUS :: msg(:,:)

    Matrix to sum and result

    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_sum_lm3(msg, gid)

    Element-wise sum of a rank-3 array on all processes.

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(inout), CONTIGUOUS :: msg(:,:,:)

    Array to sum and result

    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_sum_lm4(msg, gid)

    Element-wise sum of a rank-4 array on all processes.

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(inout), CONTIGUOUS :: msg(:,:,:,:)

    Array to sum and result

    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_sum_r(msg, gid)

    Sums a datum from all processes with result left on all processes.

    MPI mapping mpi_allreduce

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(inout) :: msg

    Datum to sum (input) and result (output)

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_sum_rv(msg, gid)

    Element-wise sum of a rank-1 array on all processes.

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(inout), CONTIGUOUS :: msg(:)

    Vector to sum and result

    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_sum_rm(msg, gid)

    Element-wise sum of a rank-2 array on all processes.

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(inout), CONTIGUOUS :: msg(:,:)

    Matrix to sum and result

    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_sum_rm3(msg, gid)

    Element-wise sum of a rank-3 array on all processes.

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(inout), CONTIGUOUS :: msg(:,:,:)

    Array to sum and result

    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_sum_rm4(msg, gid)

    Element-wise sum of a rank-4 array on all processes.

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(inout), CONTIGUOUS :: msg(:,:,:,:)

    Array to sum and result

    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_sum_d(msg, gid)

    Sums a datum from all processes with result left on all processes.

    MPI mapping mpi_allreduce

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(inout) :: msg

    Datum to sum (input) and result (output)

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_sum_dv(msg, gid)

    Element-wise sum of a rank-1 array on all processes.

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(inout), CONTIGUOUS :: msg(:)

    Vector to sum and result

    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_sum_dm(msg, gid)

    Element-wise sum of a rank-2 array on all processes.

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(inout), CONTIGUOUS :: msg(:,:)

    Matrix to sum and result

    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_sum_dm3(msg, gid)

    Element-wise sum of a rank-3 array on all processes.

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(inout), CONTIGUOUS :: msg(:,:,:)

    Array to sum and result

    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_sum_dm4(msg, gid)

    Element-wise sum of a rank-4 array on all processes.

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(inout), CONTIGUOUS :: msg(:,:,:,:)

    Array to sum and result

    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_sum_c(msg, gid)

    Sums a datum from all processes with result left on all processes.

    MPI mapping mpi_allreduce

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(inout) :: msg

    Datum to sum (input) and result (output)

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_sum_cv(msg, gid)

    Element-wise sum of a rank-1 array on all processes.

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(inout), CONTIGUOUS :: msg(:)

    Vector to sum and result

    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_sum_cm(msg, gid)

    Element-wise sum of a rank-2 array on all processes.

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(inout), CONTIGUOUS :: msg(:,:)

    Matrix to sum and result

    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_sum_cm3(msg, gid)

    Element-wise sum of a rank-3 array on all processes.

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(inout), CONTIGUOUS :: msg(:,:,:)

    Array to sum and result

    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_sum_cm4(msg, gid)

    Element-wise sum of a rank-4 array on all processes.

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(inout), CONTIGUOUS :: msg(:,:,:,:)

    Array to sum and result

    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_sum_z(msg, gid)

    Sums a datum from all processes with result left on all processes.

    MPI mapping mpi_allreduce

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(inout) :: msg

    Datum to sum (input) and result (output)

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_sum_zv(msg, gid)

    Element-wise sum of a rank-1 array on all processes.

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(inout), CONTIGUOUS :: msg(:)

    Vector to sum and result

    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_sum_zm(msg, gid)

    Element-wise sum of a rank-2 array on all processes.

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(inout), CONTIGUOUS :: msg(:,:)

    Matrix to sum and result

    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_sum_zm3(msg, gid)

    Element-wise sum of a rank-3 array on all processes.

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(inout), CONTIGUOUS :: msg(:,:,:)

    Array to sum and result

    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_sum_zm4(msg, gid)

    Element-wise sum of a rank-4 array on all processes.

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(inout), CONTIGUOUS :: msg(:,:,:,:)

    Array to sum and result

    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_sum_root_iv(msg, root, gid)

    Element-wise sum of data from all processes with result left only on one.

    MPI mapping mpi_reduce

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(inout), CONTIGUOUS :: msg(:)

    Vector to sum (input) and (only on process root) result (output)

    integer, intent(in) :: root
    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_sum_root_im(msg, root, gid)

    Element-wise sum of data from all processes with result left only on one.

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(inout), CONTIGUOUS :: msg(:,:)

    Matrix to sum (input) and (only on process root) result (output)

    integer, intent(in) :: root
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_sum_root_lv(msg, root, gid)

    Element-wise sum of data from all processes with result left only on one.

    MPI mapping mpi_reduce

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(inout), CONTIGUOUS :: msg(:)

    Vector to sum (input) and (only on process root) result (output)

    integer, intent(in) :: root
    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_sum_root_lm(msg, root, gid)

    Element-wise sum of data from all processes with result left only on one.

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(inout), CONTIGUOUS :: msg(:,:)

    Matrix to sum (input) and (only on process root) result (output)

    integer, intent(in) :: root
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_sum_root_rv(msg, root, gid)

    Element-wise sum of data from all processes with result left only on one.

    MPI mapping mpi_reduce

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(inout), CONTIGUOUS :: msg(:)

    Vector to sum (input) and (only on process root) result (output)

    integer, intent(in) :: root
    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_sum_root_rm(msg, root, gid)

    Element-wise sum of data from all processes with result left only on one.

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(inout), CONTIGUOUS :: msg(:,:)

    Matrix to sum (input) and (only on process root) result (output)

    integer, intent(in) :: root
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_sum_root_dv(msg, root, gid)

    Element-wise sum of data from all processes with result left only on one.

    MPI mapping mpi_reduce

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(inout), CONTIGUOUS :: msg(:)

    Vector to sum (input) and (only on process root) result (output)

    integer, intent(in) :: root
    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_sum_root_dm(msg, root, gid)

    Element-wise sum of data from all processes with result left only on one.

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(inout), CONTIGUOUS :: msg(:,:)

    Matrix to sum (input) and (only on process root) result (output)

    integer, intent(in) :: root
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_sum_root_cv(msg, root, gid)

    Element-wise sum of data from all processes with result left only on one.

    MPI mapping mpi_reduce

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(inout), CONTIGUOUS :: msg(:)

    Vector to sum (input) and (only on process root) result (output)

    integer, intent(in) :: root
    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_sum_root_cm(msg, root, gid)

    Element-wise sum of data from all processes with result left only on one.

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(inout), CONTIGUOUS :: msg(:,:)

    Matrix to sum (input) and (only on process root) result (output)

    integer, intent(in) :: root
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_sum_root_zv(msg, root, gid)

    Element-wise sum of data from all processes with result left only on one.

    MPI mapping mpi_reduce

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(inout), CONTIGUOUS :: msg(:)

    Vector to sum (input) and (only on process root) result (output)

    integer, intent(in) :: root
    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_sum_root_zm(msg, root, gid)

    Element-wise sum of data from all processes with result left only on one.

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(inout), CONTIGUOUS :: msg(:,:)

    Matrix to sum (input) and (only on process root) result (output)

    integer, intent(in) :: root
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_sum_b(msg, gid)

    Logical OR reduction

    MPI mapping mpi_allreduce

    Arguments

    Type IntentOptional Attributes Name
    logical, intent(inout) :: msg

    Datum to perform inclusive disjunction (input) and resultant inclusive disjunction (output)

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_sum_bv(msg, gid)

    Logical OR reduction

    MPI mapping mpi_allreduce

    Arguments

    Type IntentOptional Attributes Name
    logical, intent(inout), DIMENSION(:), CONTIGUOUS :: msg

    Datum to perform inclusive disjunction (input) and resultant inclusive disjunction (output)

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

public interface mp_isum

  • private subroutine mp_isum_iv(msg, gid, request)

    Element-wise sum of a rank-1 array on all processes.

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(inout), CONTIGUOUS :: msg(:)

    Vector to sum and result

    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_isum_lv(msg, gid, request)

    Element-wise sum of a rank-1 array on all processes.

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(inout), CONTIGUOUS :: msg(:)

    Vector to sum and result

    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_isum_dv(msg, gid, request)

    Element-wise sum of a rank-1 array on all processes.

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(inout), CONTIGUOUS :: msg(:)

    Vector to sum and result

    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_isum_rv(msg, gid, request)

    Element-wise sum of a rank-1 array on all processes.

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(inout), CONTIGUOUS :: msg(:)

    Vector to sum and result

    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_isum_zv(msg, gid, request)

    Element-wise sum of a rank-1 array on all processes.

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(inout), CONTIGUOUS :: msg(:)

    Vector to sum and result

    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_isum_cv(msg, gid, request)

    Element-wise sum of a rank-1 array on all processes.

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(inout), CONTIGUOUS :: msg(:)

    Vector to sum and result

    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_isum_bv(msg, gid, request)

    Logical OR reduction

    MPI mapping mpi_allreduce

    Arguments

    Type IntentOptional Attributes Name
    logical, intent(inout), DIMENSION(:), CONTIGUOUS :: msg

    Datum to perform inclusive disjunction (input) and resultant inclusive disjunction (output)

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

    type(mp_request_type), intent(inout) :: request

public interface mp_sum_partial

  • private subroutine mp_sum_partial_im(msg, res, gid)

    Partial sum of data from all processes with result on each process.

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(in), CONTIGUOUS :: msg(:,:)

    Matrix to sum (input)

    integer(kind=int_4), intent(out), CONTIGUOUS :: res(:,:)

    Matrix containing result (output)

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_sum_partial_lm(msg, res, gid)

    Partial sum of data from all processes with result on each process.

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(in), CONTIGUOUS :: msg(:,:)

    Matrix to sum (input)

    integer(kind=int_8), intent(out), CONTIGUOUS :: res(:,:)

    Matrix containing result (output)

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_sum_partial_dm(msg, res, gid)

    Partial sum of data from all processes with result on each process.

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(in), CONTIGUOUS :: msg(:,:)

    Matrix to sum (input)

    real(kind=real_8), intent(out), CONTIGUOUS :: res(:,:)

    Matrix containing result (output)

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_sum_partial_rm(msg, res, gid)

    Partial sum of data from all processes with result on each process.

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(in), CONTIGUOUS :: msg(:,:)

    Matrix to sum (input)

    real(kind=real_4), intent(out), CONTIGUOUS :: res(:,:)

    Matrix containing result (output)

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_sum_partial_zm(msg, res, gid)

    Partial sum of data from all processes with result on each process.

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(in), CONTIGUOUS :: msg(:,:)

    Matrix to sum (input)

    complex(kind=real_8), intent(out), CONTIGUOUS :: res(:,:)

    Matrix containing result (output)

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_sum_partial_cm(msg, res, gid)

    Partial sum of data from all processes with result on each process.

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(in), CONTIGUOUS :: msg(:,:)

    Matrix to sum (input)

    complex(kind=real_4), intent(out), CONTIGUOUS :: res(:,:)

    Matrix containing result (output)

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

public interface mp_max

  • private subroutine mp_max_i(msg, gid)

    Finds the maximum of a datum with the result left on all processes.

    MPI mapping mpi_allreduce

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(inout) :: msg

    Find maximum among these data (input) and maximum (output)

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_max_iv(msg, gid)

    Finds the element-wise maximum of a vector with the result left on all processes.

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(inout), CONTIGUOUS :: msg(:)

    Find maximum among these data (input) and maximum (output)

    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_max_l(msg, gid)

    Finds the maximum of a datum with the result left on all processes.

    MPI mapping mpi_allreduce

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(inout) :: msg

    Find maximum among these data (input) and maximum (output)

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_max_lv(msg, gid)

    Finds the element-wise maximum of a vector with the result left on all processes.

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(inout), CONTIGUOUS :: msg(:)

    Find maximum among these data (input) and maximum (output)

    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_max_d(msg, gid)

    Finds the maximum of a datum with the result left on all processes.

    MPI mapping mpi_allreduce

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(inout) :: msg

    Find maximum among these data (input) and maximum (output)

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_max_dv(msg, gid)

    Finds the element-wise maximum of a vector with the result left on all processes.

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(inout), CONTIGUOUS :: msg(:)

    Find maximum among these data (input) and maximum (output)

    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_max_r(msg, gid)

    Finds the maximum of a datum with the result left on all processes.

    MPI mapping mpi_allreduce

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(inout) :: msg

    Find maximum among these data (input) and maximum (output)

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_max_rv(msg, gid)

    Finds the element-wise maximum of a vector with the result left on all processes.

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(inout), CONTIGUOUS :: msg(:)

    Find maximum among these data (input) and maximum (output)

    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_max_z(msg, gid)

    Finds the maximum of a datum with the result left on all processes.

    MPI mapping mpi_allreduce

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(inout) :: msg

    Find maximum among these data (input) and maximum (output)

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_max_zv(msg, gid)

    Finds the element-wise maximum of a vector with the result left on all processes.

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(inout), CONTIGUOUS :: msg(:)

    Find maximum among these data (input) and maximum (output)

    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_max_c(msg, gid)

    Finds the maximum of a datum with the result left on all processes.

    MPI mapping mpi_allreduce

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(inout) :: msg

    Find maximum among these data (input) and maximum (output)

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_max_cv(msg, gid)

    Finds the element-wise maximum of a vector with the result left on all processes.

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(inout), CONTIGUOUS :: msg(:)

    Find maximum among these data (input) and maximum (output)

    type(mp_comm_type), intent(in) :: gid

public interface mp_min

  • private subroutine mp_min_i(msg, gid)

    Finds the minimum of a datum with the result left on all processes.

    MPI mapping mpi_allreduce

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(inout) :: msg

    Find minimum among these data (input) and maximum (output)

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_min_iv(msg, gid)

    Finds the element-wise minimum of vector with the result left on all processes.

    MPI mapping mpi_allreduce

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(inout), CONTIGUOUS :: msg(:)

    Find minimum among these data (input) and maximum (output)

    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_min_l(msg, gid)

    Finds the minimum of a datum with the result left on all processes.

    MPI mapping mpi_allreduce

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(inout) :: msg

    Find minimum among these data (input) and maximum (output)

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_min_lv(msg, gid)

    Finds the element-wise minimum of vector with the result left on all processes.

    MPI mapping mpi_allreduce

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(inout), CONTIGUOUS :: msg(:)

    Find minimum among these data (input) and maximum (output)

    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_min_d(msg, gid)

    Finds the minimum of a datum with the result left on all processes.

    MPI mapping mpi_allreduce

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(inout) :: msg

    Find minimum among these data (input) and maximum (output)

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_min_dv(msg, gid)

    Finds the element-wise minimum of vector with the result left on all processes.

    MPI mapping mpi_allreduce

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(inout), CONTIGUOUS :: msg(:)

    Find minimum among these data (input) and maximum (output)

    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_min_r(msg, gid)

    Finds the minimum of a datum with the result left on all processes.

    MPI mapping mpi_allreduce

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(inout) :: msg

    Find minimum among these data (input) and maximum (output)

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_min_rv(msg, gid)

    Finds the element-wise minimum of vector with the result left on all processes.

    MPI mapping mpi_allreduce

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(inout), CONTIGUOUS :: msg(:)

    Find minimum among these data (input) and maximum (output)

    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_min_z(msg, gid)

    Finds the minimum of a datum with the result left on all processes.

    MPI mapping mpi_allreduce

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(inout) :: msg

    Find minimum among these data (input) and maximum (output)

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_min_zv(msg, gid)

    Finds the element-wise minimum of vector with the result left on all processes.

    MPI mapping mpi_allreduce

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(inout), CONTIGUOUS :: msg(:)

    Find minimum among these data (input) and maximum (output)

    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_min_c(msg, gid)

    Finds the minimum of a datum with the result left on all processes.

    MPI mapping mpi_allreduce

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(inout) :: msg

    Find minimum among these data (input) and maximum (output)

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_min_cv(msg, gid)

    Finds the element-wise minimum of vector with the result left on all processes.

    MPI mapping mpi_allreduce

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(inout), CONTIGUOUS :: msg(:)

    Find minimum among these data (input) and maximum (output)

    type(mp_comm_type), intent(in) :: gid

public interface mp_prod

  • private subroutine mp_prod_i(msg, gid)

    Multiplies a set of numbers scattered across a number of processes, then replicates the result.

    MPI mapping mpi_allreduce

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(inout) :: msg

    a number to multiply (input) and result (output)

    type(mp_comm_type), intent(in) :: gid

    message passing environment identifier

  • private subroutine mp_prod_l(msg, gid)

    Multiplies a set of numbers scattered across a number of processes, then replicates the result.

    MPI mapping mpi_allreduce

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(inout) :: msg

    a number to multiply (input) and result (output)

    type(mp_comm_type), intent(in) :: gid

    message passing environment identifier

  • private subroutine mp_prod_d(msg, gid)

    Multiplies a set of numbers scattered across a number of processes, then replicates the result.

    MPI mapping mpi_allreduce

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(inout) :: msg

    a number to multiply (input) and result (output)

    type(mp_comm_type), intent(in) :: gid

    message passing environment identifier

  • private subroutine mp_prod_r(msg, gid)

    Multiplies a set of numbers scattered across a number of processes, then replicates the result.

    MPI mapping mpi_allreduce

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(inout) :: msg

    a number to multiply (input) and result (output)

    type(mp_comm_type), intent(in) :: gid

    message passing environment identifier

  • private subroutine mp_prod_z(msg, gid)

    Multiplies a set of numbers scattered across a number of processes, then replicates the result.

    MPI mapping mpi_allreduce

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(inout) :: msg

    a number to multiply (input) and result (output)

    type(mp_comm_type), intent(in) :: gid

    message passing environment identifier

  • private subroutine mp_prod_c(msg, gid)

    Multiplies a set of numbers scattered across a number of processes, then replicates the result.

    MPI mapping mpi_allreduce

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(inout) :: msg

    a number to multiply (input) and result (output)

    type(mp_comm_type), intent(in) :: gid

    message passing environment identifier

public interface mp_gather

  • private subroutine mp_gather_i(msg, msg_gather, root, gid)

    Gathers a datum from all processes to one

    MPI mapping mpi_gather

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(in) :: msg

    Datum to send to root

    integer(kind=int_4), intent(out), CONTIGUOUS :: msg_gather(:)

    Received data (on root)

    integer, intent(in) :: root

    Process which gathers the data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_gather_im(msg, msg_gather, root, gid)

    Gathers data from all processes to one

    Data length All data (msg) is equal-sized

    MPI mapping mpi_gather

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(in), CONTIGUOUS :: msg(:,:)

    Datum to send to root

    integer(kind=int_4), intent(out), CONTIGUOUS :: msg_gather(:,:)
    integer, intent(in) :: root
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_gather_iv(msg, msg_gather, root, gid)

    Gathers data from all processes to one

    Data length All data (msg) is equal-sized

    MPI mapping mpi_gather

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(in), CONTIGUOUS :: msg(:)

    Datum to send to root

    integer(kind=int_4), intent(out), CONTIGUOUS :: msg_gather(:)
    integer, intent(in) :: root
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_gather_l(msg, msg_gather, root, gid)

    Gathers a datum from all processes to one

    MPI mapping mpi_gather

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(in) :: msg

    Datum to send to root

    integer(kind=int_8), intent(out), CONTIGUOUS :: msg_gather(:)

    Received data (on root)

    integer, intent(in) :: root

    Process which gathers the data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_gather_lm(msg, msg_gather, root, gid)

    Gathers data from all processes to one

    Data length All data (msg) is equal-sized

    MPI mapping mpi_gather

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(in), CONTIGUOUS :: msg(:,:)

    Datum to send to root

    integer(kind=int_8), intent(out), CONTIGUOUS :: msg_gather(:,:)
    integer, intent(in) :: root
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_gather_lv(msg, msg_gather, root, gid)

    Gathers data from all processes to one

    Data length All data (msg) is equal-sized

    MPI mapping mpi_gather

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(in), CONTIGUOUS :: msg(:)

    Datum to send to root

    integer(kind=int_8), intent(out), CONTIGUOUS :: msg_gather(:)
    integer, intent(in) :: root
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_gather_d(msg, msg_gather, root, gid)

    Gathers a datum from all processes to one

    MPI mapping mpi_gather

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(in) :: msg

    Datum to send to root

    real(kind=real_8), intent(out), CONTIGUOUS :: msg_gather(:)

    Received data (on root)

    integer, intent(in) :: root

    Process which gathers the data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_gather_dm(msg, msg_gather, root, gid)

    Gathers data from all processes to one

    Data length All data (msg) is equal-sized

    MPI mapping mpi_gather

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(in), CONTIGUOUS :: msg(:,:)

    Datum to send to root

    real(kind=real_8), intent(out), CONTIGUOUS :: msg_gather(:,:)
    integer, intent(in) :: root
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_gather_dv(msg, msg_gather, root, gid)

    Gathers data from all processes to one

    Data length All data (msg) is equal-sized

    MPI mapping mpi_gather

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(in), CONTIGUOUS :: msg(:)

    Datum to send to root

    real(kind=real_8), intent(out), CONTIGUOUS :: msg_gather(:)
    integer, intent(in) :: root
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_gather_r(msg, msg_gather, root, gid)

    Gathers a datum from all processes to one

    MPI mapping mpi_gather

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(in) :: msg

    Datum to send to root

    real(kind=real_4), intent(out), CONTIGUOUS :: msg_gather(:)

    Received data (on root)

    integer, intent(in) :: root

    Process which gathers the data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_gather_rm(msg, msg_gather, root, gid)

    Gathers data from all processes to one

    Data length All data (msg) is equal-sized

    MPI mapping mpi_gather

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(in), CONTIGUOUS :: msg(:,:)

    Datum to send to root

    real(kind=real_4), intent(out), CONTIGUOUS :: msg_gather(:,:)
    integer, intent(in) :: root
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_gather_rv(msg, msg_gather, root, gid)

    Gathers data from all processes to one

    Data length All data (msg) is equal-sized

    MPI mapping mpi_gather

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(in), CONTIGUOUS :: msg(:)

    Datum to send to root

    real(kind=real_4), intent(out), CONTIGUOUS :: msg_gather(:)
    integer, intent(in) :: root
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_gather_z(msg, msg_gather, root, gid)

    Gathers a datum from all processes to one

    MPI mapping mpi_gather

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(in) :: msg

    Datum to send to root

    complex(kind=real_8), intent(out), CONTIGUOUS :: msg_gather(:)

    Received data (on root)

    integer, intent(in) :: root

    Process which gathers the data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_gather_zm(msg, msg_gather, root, gid)

    Gathers data from all processes to one

    Data length All data (msg) is equal-sized

    MPI mapping mpi_gather

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(in), CONTIGUOUS :: msg(:,:)

    Datum to send to root

    complex(kind=real_8), intent(out), CONTIGUOUS :: msg_gather(:,:)
    integer, intent(in) :: root
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_gather_zv(msg, msg_gather, root, gid)

    Gathers data from all processes to one

    Data length All data (msg) is equal-sized

    MPI mapping mpi_gather

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(in), CONTIGUOUS :: msg(:)

    Datum to send to root

    complex(kind=real_8), intent(out), CONTIGUOUS :: msg_gather(:)
    integer, intent(in) :: root
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_gather_c(msg, msg_gather, root, gid)

    Gathers a datum from all processes to one

    MPI mapping mpi_gather

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(in) :: msg

    Datum to send to root

    complex(kind=real_4), intent(out), CONTIGUOUS :: msg_gather(:)

    Received data (on root)

    integer, intent(in) :: root

    Process which gathers the data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_gather_cm(msg, msg_gather, root, gid)

    Gathers data from all processes to one

    Data length All data (msg) is equal-sized

    MPI mapping mpi_gather

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(in), CONTIGUOUS :: msg(:,:)

    Datum to send to root

    complex(kind=real_4), intent(out), CONTIGUOUS :: msg_gather(:,:)
    integer, intent(in) :: root
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_gather_cv(msg, msg_gather, root, gid)

    Gathers data from all processes to one

    Data length All data (msg) is equal-sized

    MPI mapping mpi_gather

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(in), CONTIGUOUS :: msg(:)

    Datum to send to root

    complex(kind=real_4), intent(out), CONTIGUOUS :: msg_gather(:)
    integer, intent(in) :: root
    type(mp_comm_type), intent(in) :: gid

public interface mp_gatherv

  • private subroutine mp_gatherv_iv(sendbuf, recvbuf, recvcounts, displs, root, comm)

    Gathers data from all processes to one.

    Data length Data can have different lengths

    Offsets Offsets start at 0

    MPI mapping mpi_gather

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(in), DIMENSION(:), CONTIGUOUS :: sendbuf

    Data to send to root

    integer(kind=int_4), intent(out), DIMENSION(:), CONTIGUOUS :: recvbuf

    Received data (on root)

    integer, intent(in), DIMENSION(:), CONTIGUOUS :: recvcounts

    Sizes of data received from processes Offsets of data received from processes

    integer, intent(in), DIMENSION(:), CONTIGUOUS :: displs

    Sizes of data received from processes Offsets of data received from processes

    integer, intent(in) :: root

    Process which gathers the data

    type(mp_comm_type), intent(in) :: comm

    Message passing environment identifier

  • private subroutine mp_gatherv_lv(sendbuf, recvbuf, recvcounts, displs, root, comm)

    Gathers data from all processes to one.

    Data length Data can have different lengths

    Offsets Offsets start at 0

    MPI mapping mpi_gather

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(in), DIMENSION(:), CONTIGUOUS :: sendbuf

    Data to send to root

    integer(kind=int_8), intent(out), DIMENSION(:), CONTIGUOUS :: recvbuf

    Received data (on root)

    integer, intent(in), DIMENSION(:), CONTIGUOUS :: recvcounts

    Sizes of data received from processes Offsets of data received from processes

    integer, intent(in), DIMENSION(:), CONTIGUOUS :: displs

    Sizes of data received from processes Offsets of data received from processes

    integer, intent(in) :: root

    Process which gathers the data

    type(mp_comm_type), intent(in) :: comm

    Message passing environment identifier

  • private subroutine mp_gatherv_dv(sendbuf, recvbuf, recvcounts, displs, root, comm)

    Gathers data from all processes to one.

    Data length Data can have different lengths

    Offsets Offsets start at 0

    MPI mapping mpi_gather

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(in), DIMENSION(:), CONTIGUOUS :: sendbuf

    Data to send to root

    real(kind=real_8), intent(out), DIMENSION(:), CONTIGUOUS :: recvbuf

    Received data (on root)

    integer, intent(in), DIMENSION(:), CONTIGUOUS :: recvcounts

    Sizes of data received from processes Offsets of data received from processes

    integer, intent(in), DIMENSION(:), CONTIGUOUS :: displs

    Sizes of data received from processes Offsets of data received from processes

    integer, intent(in) :: root

    Process which gathers the data

    type(mp_comm_type), intent(in) :: comm

    Message passing environment identifier

  • private subroutine mp_gatherv_rv(sendbuf, recvbuf, recvcounts, displs, root, comm)

    Gathers data from all processes to one.

    Data length Data can have different lengths

    Offsets Offsets start at 0

    MPI mapping mpi_gather

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(in), DIMENSION(:), CONTIGUOUS :: sendbuf

    Data to send to root

    real(kind=real_4), intent(out), DIMENSION(:), CONTIGUOUS :: recvbuf

    Received data (on root)

    integer, intent(in), DIMENSION(:), CONTIGUOUS :: recvcounts

    Sizes of data received from processes Offsets of data received from processes

    integer, intent(in), DIMENSION(:), CONTIGUOUS :: displs

    Sizes of data received from processes Offsets of data received from processes

    integer, intent(in) :: root

    Process which gathers the data

    type(mp_comm_type), intent(in) :: comm

    Message passing environment identifier

  • private subroutine mp_gatherv_zv(sendbuf, recvbuf, recvcounts, displs, root, comm)

    Gathers data from all processes to one.

    Data length Data can have different lengths

    Offsets Offsets start at 0

    MPI mapping mpi_gather

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(in), DIMENSION(:), CONTIGUOUS :: sendbuf

    Data to send to root

    complex(kind=real_8), intent(out), DIMENSION(:), CONTIGUOUS :: recvbuf

    Received data (on root)

    integer, intent(in), DIMENSION(:), CONTIGUOUS :: recvcounts

    Sizes of data received from processes Offsets of data received from processes

    integer, intent(in), DIMENSION(:), CONTIGUOUS :: displs

    Sizes of data received from processes Offsets of data received from processes

    integer, intent(in) :: root

    Process which gathers the data

    type(mp_comm_type), intent(in) :: comm

    Message passing environment identifier

  • private subroutine mp_gatherv_cv(sendbuf, recvbuf, recvcounts, displs, root, comm)

    Gathers data from all processes to one.

    Data length Data can have different lengths

    Offsets Offsets start at 0

    MPI mapping mpi_gather

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(in), DIMENSION(:), CONTIGUOUS :: sendbuf

    Data to send to root

    complex(kind=real_4), intent(out), DIMENSION(:), CONTIGUOUS :: recvbuf

    Received data (on root)

    integer, intent(in), DIMENSION(:), CONTIGUOUS :: recvcounts

    Sizes of data received from processes Offsets of data received from processes

    integer, intent(in), DIMENSION(:), CONTIGUOUS :: displs

    Sizes of data received from processes Offsets of data received from processes

    integer, intent(in) :: root

    Process which gathers the data

    type(mp_comm_type), intent(in) :: comm

    Message passing environment identifier

public interface mp_allgather

  • private subroutine mp_allgather_i(msgout, msgin, gid)

    Gathers a datum from all processes and all processes receive the same data

    Data size All processes send equal-sized data

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(in) :: msgout

    Datum to send

    integer(kind=int_4), intent(out), CONTIGUOUS :: msgin(:)

    Received data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_allgather_i2(msgout, msgin, gid)

    Gathers a datum from all processes and all processes receive the same data

    Data size All processes send equal-sized data

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(in) :: msgout

    Datum to send

    integer(kind=int_4), intent(out), CONTIGUOUS :: msgin(:,:)

    Received data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_allgather_i12(msgout, msgin, gid)

    Gathers vector data from all processes and all processes receive the same data

    Data size All processes send equal-sized data

    Ranks The last rank counts the processes

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(in), CONTIGUOUS :: msgout(:)

    Rank-1 data to send

    integer(kind=int_4), intent(out), CONTIGUOUS :: msgin(:,:)

    Received data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_allgather_i23(msgout, msgin, gid)

    Gathers matrix data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(in), CONTIGUOUS :: msgout(:,:)

    Rank-2 data to send

    integer(kind=int_4), intent(out), CONTIGUOUS :: msgin(:,:,:)
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_allgather_i34(msgout, msgin, gid)

    Gathers rank-3 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(in), CONTIGUOUS :: msgout(:,:,:)

    Rank-3 data to send

    integer(kind=int_4), intent(out), CONTIGUOUS :: msgin(:,:,:,:)
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_allgather_i22(msgout, msgin, gid)

    Gathers rank-2 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(in), CONTIGUOUS :: msgout(:,:)

    Rank-2 data to send

    integer(kind=int_4), intent(out), CONTIGUOUS :: msgin(:,:)
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_allgather_l(msgout, msgin, gid)

    Gathers a datum from all processes and all processes receive the same data

    Data size All processes send equal-sized data

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(in) :: msgout

    Datum to send

    integer(kind=int_8), intent(out), CONTIGUOUS :: msgin(:)

    Received data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_allgather_l2(msgout, msgin, gid)

    Gathers a datum from all processes and all processes receive the same data

    Data size All processes send equal-sized data

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(in) :: msgout

    Datum to send

    integer(kind=int_8), intent(out), CONTIGUOUS :: msgin(:,:)

    Received data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_allgather_l12(msgout, msgin, gid)

    Gathers vector data from all processes and all processes receive the same data

    Data size All processes send equal-sized data

    Ranks The last rank counts the processes

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(in), CONTIGUOUS :: msgout(:)

    Rank-1 data to send

    integer(kind=int_8), intent(out), CONTIGUOUS :: msgin(:,:)

    Received data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_allgather_l23(msgout, msgin, gid)

    Gathers matrix data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(in), CONTIGUOUS :: msgout(:,:)

    Rank-2 data to send

    integer(kind=int_8), intent(out), CONTIGUOUS :: msgin(:,:,:)
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_allgather_l34(msgout, msgin, gid)

    Gathers rank-3 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(in), CONTIGUOUS :: msgout(:,:,:)

    Rank-3 data to send

    integer(kind=int_8), intent(out), CONTIGUOUS :: msgin(:,:,:,:)
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_allgather_l22(msgout, msgin, gid)

    Gathers rank-2 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(in), CONTIGUOUS :: msgout(:,:)

    Rank-2 data to send

    integer(kind=int_8), intent(out), CONTIGUOUS :: msgin(:,:)
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_allgather_r(msgout, msgin, gid)

    Gathers a datum from all processes and all processes receive the same data

    Data size All processes send equal-sized data

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(in) :: msgout

    Datum to send

    real(kind=real_4), intent(out), CONTIGUOUS :: msgin(:)

    Received data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_allgather_r2(msgout, msgin, gid)

    Gathers a datum from all processes and all processes receive the same data

    Data size All processes send equal-sized data

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(in) :: msgout

    Datum to send

    real(kind=real_4), intent(out), CONTIGUOUS :: msgin(:,:)

    Received data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_allgather_r12(msgout, msgin, gid)

    Gathers vector data from all processes and all processes receive the same data

    Data size All processes send equal-sized data

    Ranks The last rank counts the processes

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(in), CONTIGUOUS :: msgout(:)

    Rank-1 data to send

    real(kind=real_4), intent(out), CONTIGUOUS :: msgin(:,:)

    Received data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_allgather_r23(msgout, msgin, gid)

    Gathers matrix data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(in), CONTIGUOUS :: msgout(:,:)

    Rank-2 data to send

    real(kind=real_4), intent(out), CONTIGUOUS :: msgin(:,:,:)
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_allgather_r34(msgout, msgin, gid)

    Gathers rank-3 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(in), CONTIGUOUS :: msgout(:,:,:)

    Rank-3 data to send

    real(kind=real_4), intent(out), CONTIGUOUS :: msgin(:,:,:,:)
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_allgather_r22(msgout, msgin, gid)

    Gathers rank-2 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(in), CONTIGUOUS :: msgout(:,:)

    Rank-2 data to send

    real(kind=real_4), intent(out), CONTIGUOUS :: msgin(:,:)
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_allgather_d(msgout, msgin, gid)

    Gathers a datum from all processes and all processes receive the same data

    Data size All processes send equal-sized data

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(in) :: msgout

    Datum to send

    real(kind=real_8), intent(out), CONTIGUOUS :: msgin(:)

    Received data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_allgather_d2(msgout, msgin, gid)

    Gathers a datum from all processes and all processes receive the same data

    Data size All processes send equal-sized data

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(in) :: msgout

    Datum to send

    real(kind=real_8), intent(out), CONTIGUOUS :: msgin(:,:)

    Received data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_allgather_d12(msgout, msgin, gid)

    Gathers vector data from all processes and all processes receive the same data

    Data size All processes send equal-sized data

    Ranks The last rank counts the processes

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(in), CONTIGUOUS :: msgout(:)

    Rank-1 data to send

    real(kind=real_8), intent(out), CONTIGUOUS :: msgin(:,:)

    Received data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_allgather_d23(msgout, msgin, gid)

    Gathers matrix data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(in), CONTIGUOUS :: msgout(:,:)

    Rank-2 data to send

    real(kind=real_8), intent(out), CONTIGUOUS :: msgin(:,:,:)
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_allgather_d34(msgout, msgin, gid)

    Gathers rank-3 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(in), CONTIGUOUS :: msgout(:,:,:)

    Rank-3 data to send

    real(kind=real_8), intent(out), CONTIGUOUS :: msgin(:,:,:,:)
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_allgather_d22(msgout, msgin, gid)

    Gathers rank-2 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(in), CONTIGUOUS :: msgout(:,:)

    Rank-2 data to send

    real(kind=real_8), intent(out), CONTIGUOUS :: msgin(:,:)
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_allgather_c(msgout, msgin, gid)

    Gathers a datum from all processes and all processes receive the same data

    Data size All processes send equal-sized data

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(in) :: msgout

    Datum to send

    complex(kind=real_4), intent(out), CONTIGUOUS :: msgin(:)

    Received data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_allgather_c2(msgout, msgin, gid)

    Gathers a datum from all processes and all processes receive the same data

    Data size All processes send equal-sized data

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(in) :: msgout

    Datum to send

    complex(kind=real_4), intent(out), CONTIGUOUS :: msgin(:,:)

    Received data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_allgather_c12(msgout, msgin, gid)

    Gathers vector data from all processes and all processes receive the same data

    Data size All processes send equal-sized data

    Ranks The last rank counts the processes

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(in), CONTIGUOUS :: msgout(:)

    Rank-1 data to send

    complex(kind=real_4), intent(out), CONTIGUOUS :: msgin(:,:)

    Received data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_allgather_c23(msgout, msgin, gid)

    Gathers matrix data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(in), CONTIGUOUS :: msgout(:,:)

    Rank-2 data to send

    complex(kind=real_4), intent(out), CONTIGUOUS :: msgin(:,:,:)
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_allgather_c34(msgout, msgin, gid)

    Gathers rank-3 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(in), CONTIGUOUS :: msgout(:,:,:)

    Rank-3 data to send

    complex(kind=real_4), intent(out), CONTIGUOUS :: msgin(:,:,:,:)
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_allgather_c22(msgout, msgin, gid)

    Gathers rank-2 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(in), CONTIGUOUS :: msgout(:,:)

    Rank-2 data to send

    complex(kind=real_4), intent(out), CONTIGUOUS :: msgin(:,:)
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_allgather_z(msgout, msgin, gid)

    Gathers a datum from all processes and all processes receive the same data

    Data size All processes send equal-sized data

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(in) :: msgout

    Datum to send

    complex(kind=real_8), intent(out), CONTIGUOUS :: msgin(:)

    Received data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_allgather_z2(msgout, msgin, gid)

    Gathers a datum from all processes and all processes receive the same data

    Data size All processes send equal-sized data

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(in) :: msgout

    Datum to send

    complex(kind=real_8), intent(out), CONTIGUOUS :: msgin(:,:)

    Received data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_allgather_z12(msgout, msgin, gid)

    Gathers vector data from all processes and all processes receive the same data

    Data size All processes send equal-sized data

    Ranks The last rank counts the processes

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(in), CONTIGUOUS :: msgout(:)

    Rank-1 data to send

    complex(kind=real_8), intent(out), CONTIGUOUS :: msgin(:,:)

    Received data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_allgather_z23(msgout, msgin, gid)

    Gathers matrix data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(in), CONTIGUOUS :: msgout(:,:)

    Rank-2 data to send

    complex(kind=real_8), intent(out), CONTIGUOUS :: msgin(:,:,:)
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_allgather_z34(msgout, msgin, gid)

    Gathers rank-3 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(in), CONTIGUOUS :: msgout(:,:,:)

    Rank-3 data to send

    complex(kind=real_8), intent(out), CONTIGUOUS :: msgin(:,:,:,:)
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_allgather_z22(msgout, msgin, gid)

    Gathers rank-2 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(in), CONTIGUOUS :: msgout(:,:)

    Rank-2 data to send

    complex(kind=real_8), intent(out), CONTIGUOUS :: msgin(:,:)
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_allgatherv_iv(msgout, msgin, rcount, rdispl, gid)

    Gathers vector data from all processes and all processes receive the same data

    Data size Processes can send different-sized data

    Ranks The last rank counts the processes

    Offsets Offsets are from 0

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(in), CONTIGUOUS :: msgout(:)

    Rank-1 data to send

    integer(kind=int_4), intent(out), CONTIGUOUS :: msgin(:)

    Received data

    integer, intent(in), CONTIGUOUS :: rcount(:)
    integer, intent(in), CONTIGUOUS :: rdispl(:)
    type(mp_comm_type), intent(in) :: gid

    Size of sent data for every process Offset of sent data for every process Message passing environment identifier

  • private subroutine mp_allgatherv_lv(msgout, msgin, rcount, rdispl, gid)

    Gathers vector data from all processes and all processes receive the same data

    Data size Processes can send different-sized data

    Ranks The last rank counts the processes

    Offsets Offsets are from 0

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(in), CONTIGUOUS :: msgout(:)

    Rank-1 data to send

    integer(kind=int_8), intent(out), CONTIGUOUS :: msgin(:)

    Received data

    integer, intent(in), CONTIGUOUS :: rcount(:)
    integer, intent(in), CONTIGUOUS :: rdispl(:)
    type(mp_comm_type), intent(in) :: gid

    Size of sent data for every process Offset of sent data for every process Message passing environment identifier

  • private subroutine mp_allgatherv_rv(msgout, msgin, rcount, rdispl, gid)

    Gathers vector data from all processes and all processes receive the same data

    Data size Processes can send different-sized data

    Ranks The last rank counts the processes

    Offsets Offsets are from 0

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(in), CONTIGUOUS :: msgout(:)

    Rank-1 data to send

    real(kind=real_4), intent(out), CONTIGUOUS :: msgin(:)

    Received data

    integer, intent(in), CONTIGUOUS :: rcount(:)
    integer, intent(in), CONTIGUOUS :: rdispl(:)
    type(mp_comm_type), intent(in) :: gid

    Size of sent data for every process Offset of sent data for every process Message passing environment identifier

  • private subroutine mp_allgatherv_dv(msgout, msgin, rcount, rdispl, gid)

    Gathers vector data from all processes and all processes receive the same data

    Data size Processes can send different-sized data

    Ranks The last rank counts the processes

    Offsets Offsets are from 0

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(in), CONTIGUOUS :: msgout(:)

    Rank-1 data to send

    real(kind=real_8), intent(out), CONTIGUOUS :: msgin(:)

    Received data

    integer, intent(in), CONTIGUOUS :: rcount(:)
    integer, intent(in), CONTIGUOUS :: rdispl(:)
    type(mp_comm_type), intent(in) :: gid

    Size of sent data for every process Offset of sent data for every process Message passing environment identifier

  • private subroutine mp_allgatherv_cv(msgout, msgin, rcount, rdispl, gid)

    Gathers vector data from all processes and all processes receive the same data

    Data size Processes can send different-sized data

    Ranks The last rank counts the processes

    Offsets Offsets are from 0

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(in), CONTIGUOUS :: msgout(:)

    Rank-1 data to send

    complex(kind=real_4), intent(out), CONTIGUOUS :: msgin(:)

    Received data

    integer, intent(in), CONTIGUOUS :: rcount(:)
    integer, intent(in), CONTIGUOUS :: rdispl(:)
    type(mp_comm_type), intent(in) :: gid

    Size of sent data for every process Offset of sent data for every process Message passing environment identifier

  • private subroutine mp_allgatherv_zv(msgout, msgin, rcount, rdispl, gid)

    Gathers vector data from all processes and all processes receive the same data

    Data size Processes can send different-sized data

    Ranks The last rank counts the processes

    Offsets Offsets are from 0

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(in), CONTIGUOUS :: msgout(:)

    Rank-1 data to send

    complex(kind=real_8), intent(out), CONTIGUOUS :: msgin(:)

    Received data

    integer, intent(in), CONTIGUOUS :: rcount(:)
    integer, intent(in), CONTIGUOUS :: rdispl(:)
    type(mp_comm_type), intent(in) :: gid

    Size of sent data for every process Offset of sent data for every process Message passing environment identifier

public interface mp_iallgather

  • private subroutine mp_iallgather_i(msgout, msgin, gid, request)

    Gathers a datum from all processes and all processes receive the same data

    Data size All processes send equal-sized data

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(in) :: msgout

    Datum to send

    integer(kind=int_4), intent(out), CONTIGUOUS :: msgin(:)

    Received data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_iallgather_l(msgout, msgin, gid, request)

    Gathers a datum from all processes and all processes receive the same data

    Data size All processes send equal-sized data

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(in) :: msgout

    Datum to send

    integer(kind=int_8), intent(out), CONTIGUOUS :: msgin(:)

    Received data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_iallgather_r(msgout, msgin, gid, request)

    Gathers a datum from all processes and all processes receive the same data

    Data size All processes send equal-sized data

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(in) :: msgout

    Datum to send

    real(kind=real_4), intent(out), CONTIGUOUS :: msgin(:)

    Received data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_iallgather_d(msgout, msgin, gid, request)

    Gathers a datum from all processes and all processes receive the same data

    Data size All processes send equal-sized data

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(in) :: msgout

    Datum to send

    real(kind=real_8), intent(out), CONTIGUOUS :: msgin(:)

    Received data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_iallgather_c(msgout, msgin, gid, request)

    Gathers a datum from all processes and all processes receive the same data

    Data size All processes send equal-sized data

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(in) :: msgout

    Datum to send

    complex(kind=real_4), intent(out), CONTIGUOUS :: msgin(:)

    Received data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_iallgather_z(msgout, msgin, gid, request)

    Gathers a datum from all processes and all processes receive the same data

    Data size All processes send equal-sized data

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(in) :: msgout

    Datum to send

    complex(kind=real_8), intent(out), CONTIGUOUS :: msgin(:)

    Received data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_iallgather_i11(msgout, msgin, gid, request)

    Gathers rank-1 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(in), CONTIGUOUS :: msgout(:)

    Rank-1 data to send

    integer(kind=int_4), intent(out), CONTIGUOUS :: msgin(:)
    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(out) :: request
  • private subroutine mp_iallgather_l11(msgout, msgin, gid, request)

    Gathers rank-1 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(in), CONTIGUOUS :: msgout(:)

    Rank-1 data to send

    integer(kind=int_8), intent(out), CONTIGUOUS :: msgin(:)
    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(out) :: request
  • private subroutine mp_iallgather_r11(msgout, msgin, gid, request)

    Gathers rank-1 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(in), CONTIGUOUS :: msgout(:)

    Rank-1 data to send

    real(kind=real_4), intent(out), CONTIGUOUS :: msgin(:)
    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(out) :: request
  • private subroutine mp_iallgather_d11(msgout, msgin, gid, request)

    Gathers rank-1 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(in), CONTIGUOUS :: msgout(:)

    Rank-1 data to send

    real(kind=real_8), intent(out), CONTIGUOUS :: msgin(:)
    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(out) :: request
  • private subroutine mp_iallgather_c11(msgout, msgin, gid, request)

    Gathers rank-1 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(in), CONTIGUOUS :: msgout(:)

    Rank-1 data to send

    complex(kind=real_4), intent(out), CONTIGUOUS :: msgin(:)
    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(out) :: request
  • private subroutine mp_iallgather_z11(msgout, msgin, gid, request)

    Gathers rank-1 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(in), CONTIGUOUS :: msgout(:)

    Rank-1 data to send

    complex(kind=real_8), intent(out), CONTIGUOUS :: msgin(:)
    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(out) :: request
  • private subroutine mp_iallgather_i13(msgout, msgin, gid, request)

    Gathers rank-2 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(in), CONTIGUOUS :: msgout(:)

    Rank-2 data to send

    integer(kind=int_4), intent(out), CONTIGUOUS :: msgin(:,:,:)
    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(out) :: request
  • private subroutine mp_iallgather_l13(msgout, msgin, gid, request)

    Gathers rank-2 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(in), CONTIGUOUS :: msgout(:)

    Rank-2 data to send

    integer(kind=int_8), intent(out), CONTIGUOUS :: msgin(:,:,:)
    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(out) :: request
  • private subroutine mp_iallgather_r13(msgout, msgin, gid, request)

    Gathers rank-2 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(in), CONTIGUOUS :: msgout(:)

    Rank-2 data to send

    real(kind=real_4), intent(out), CONTIGUOUS :: msgin(:,:,:)
    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(out) :: request
  • private subroutine mp_iallgather_d13(msgout, msgin, gid, request)

    Gathers rank-2 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(in), CONTIGUOUS :: msgout(:)

    Rank-2 data to send

    real(kind=real_8), intent(out), CONTIGUOUS :: msgin(:,:,:)
    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(out) :: request
  • private subroutine mp_iallgather_c13(msgout, msgin, gid, request)

    Gathers rank-2 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(in), CONTIGUOUS :: msgout(:)

    Rank-2 data to send

    complex(kind=real_4), intent(out), CONTIGUOUS :: msgin(:,:,:)
    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(out) :: request
  • private subroutine mp_iallgather_z13(msgout, msgin, gid, request)

    Gathers rank-2 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(in), CONTIGUOUS :: msgout(:)

    Rank-2 data to send

    complex(kind=real_8), intent(out), CONTIGUOUS :: msgin(:,:,:)
    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(out) :: request
  • private subroutine mp_iallgather_i22(msgout, msgin, gid, request)

    Gathers rank-2 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(in), CONTIGUOUS :: msgout(:,:)

    Rank-2 data to send

    integer(kind=int_4), intent(out), CONTIGUOUS :: msgin(:,:)
    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(out) :: request
  • private subroutine mp_iallgather_l22(msgout, msgin, gid, request)

    Gathers rank-2 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(in), CONTIGUOUS :: msgout(:,:)

    Rank-2 data to send

    integer(kind=int_8), intent(out), CONTIGUOUS :: msgin(:,:)
    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(out) :: request
  • private subroutine mp_iallgather_r22(msgout, msgin, gid, request)

    Gathers rank-2 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(in), CONTIGUOUS :: msgout(:,:)

    Rank-2 data to send

    real(kind=real_4), intent(out), CONTIGUOUS :: msgin(:,:)
    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(out) :: request
  • private subroutine mp_iallgather_d22(msgout, msgin, gid, request)

    Gathers rank-2 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(in), CONTIGUOUS :: msgout(:,:)

    Rank-2 data to send

    real(kind=real_8), intent(out), CONTIGUOUS :: msgin(:,:)
    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(out) :: request
  • private subroutine mp_iallgather_c22(msgout, msgin, gid, request)

    Gathers rank-2 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(in), CONTIGUOUS :: msgout(:,:)

    Rank-2 data to send

    complex(kind=real_4), intent(out), CONTIGUOUS :: msgin(:,:)
    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(out) :: request
  • private subroutine mp_iallgather_z22(msgout, msgin, gid, request)

    Gathers rank-2 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(in), CONTIGUOUS :: msgout(:,:)

    Rank-2 data to send

    complex(kind=real_8), intent(out), CONTIGUOUS :: msgin(:,:)
    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(out) :: request
  • private subroutine mp_iallgather_i24(msgout, msgin, gid, request)

    Gathers rank-2 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(in), CONTIGUOUS :: msgout(:,:)

    Rank-2 data to send

    integer(kind=int_4), intent(out), CONTIGUOUS :: msgin(:,:,:,:)
    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(out) :: request
  • private subroutine mp_iallgather_l24(msgout, msgin, gid, request)

    Gathers rank-2 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(in), CONTIGUOUS :: msgout(:,:)

    Rank-2 data to send

    integer(kind=int_8), intent(out), CONTIGUOUS :: msgin(:,:,:,:)
    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(out) :: request
  • private subroutine mp_iallgather_r24(msgout, msgin, gid, request)

    Gathers rank-2 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(in), CONTIGUOUS :: msgout(:,:)

    Rank-2 data to send

    real(kind=real_4), intent(out), CONTIGUOUS :: msgin(:,:,:,:)
    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(out) :: request
  • private subroutine mp_iallgather_d24(msgout, msgin, gid, request)

    Gathers rank-2 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(in), CONTIGUOUS :: msgout(:,:)

    Rank-2 data to send

    real(kind=real_8), intent(out), CONTIGUOUS :: msgin(:,:,:,:)
    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(out) :: request
  • private subroutine mp_iallgather_c24(msgout, msgin, gid, request)

    Gathers rank-2 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(in), CONTIGUOUS :: msgout(:,:)

    Rank-2 data to send

    complex(kind=real_4), intent(out), CONTIGUOUS :: msgin(:,:,:,:)
    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(out) :: request
  • private subroutine mp_iallgather_z24(msgout, msgin, gid, request)

    Gathers rank-2 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(in), CONTIGUOUS :: msgout(:,:)

    Rank-2 data to send

    complex(kind=real_8), intent(out), CONTIGUOUS :: msgin(:,:,:,:)
    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(out) :: request
  • private subroutine mp_iallgather_i33(msgout, msgin, gid, request)

    Gathers rank-3 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(in), CONTIGUOUS :: msgout(:,:,:)

    Rank-3 data to send

    integer(kind=int_4), intent(out), CONTIGUOUS :: msgin(:,:,:)
    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(out) :: request
  • private subroutine mp_iallgather_l33(msgout, msgin, gid, request)

    Gathers rank-3 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(in), CONTIGUOUS :: msgout(:,:,:)

    Rank-3 data to send

    integer(kind=int_8), intent(out), CONTIGUOUS :: msgin(:,:,:)
    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(out) :: request
  • private subroutine mp_iallgather_r33(msgout, msgin, gid, request)

    Gathers rank-3 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(in), CONTIGUOUS :: msgout(:,:,:)

    Rank-3 data to send

    real(kind=real_4), intent(out), CONTIGUOUS :: msgin(:,:,:)
    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(out) :: request
  • private subroutine mp_iallgather_d33(msgout, msgin, gid, request)

    Gathers rank-3 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(in), CONTIGUOUS :: msgout(:,:,:)

    Rank-3 data to send

    real(kind=real_8), intent(out), CONTIGUOUS :: msgin(:,:,:)
    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(out) :: request
  • private subroutine mp_iallgather_c33(msgout, msgin, gid, request)

    Gathers rank-3 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(in), CONTIGUOUS :: msgout(:,:,:)

    Rank-3 data to send

    complex(kind=real_4), intent(out), CONTIGUOUS :: msgin(:,:,:)
    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(out) :: request
  • private subroutine mp_iallgather_z33(msgout, msgin, gid, request)

    Gathers rank-3 data from all processes and all processes receive the same data

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(in), CONTIGUOUS :: msgout(:,:,:)

    Rank-3 data to send

    complex(kind=real_8), intent(out), CONTIGUOUS :: msgin(:,:,:)
    type(mp_comm_type), intent(in) :: gid
    type(mp_request_type), intent(out) :: request
  • private subroutine mp_iallgatherv_iv(msgout, msgin, rcount, rdispl, gid, request)

    Gathers vector data from all processes and all processes receive the same data

    Data size Processes can send different-sized data

    Ranks The last rank counts the processes

    Offsets Offsets are from 0

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(in), CONTIGUOUS :: msgout(:)

    Rank-1 data to send

    integer(kind=int_4), intent(out), CONTIGUOUS :: msgin(:)

    Received data

    integer, intent(in), CONTIGUOUS :: rcount(:)
    integer, intent(in), CONTIGUOUS :: rdispl(:)
    type(mp_comm_type), intent(in) :: gid

    Size of sent data for every process Offset of sent data for every process Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_iallgatherv_iv2(msgout, msgin, rcount, rdispl, gid, request)

    Gathers vector data from all processes and all processes receive the same data

    Data size Processes can send different-sized data

    Ranks The last rank counts the processes

    Offsets Offsets are from 0

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(in), CONTIGUOUS :: msgout(:)

    Rank-1 data to send

    integer(kind=int_4), intent(out), CONTIGUOUS :: msgin(:)

    Received data

    integer, intent(in), CONTIGUOUS :: rcount(:,:)
    integer, intent(in), CONTIGUOUS :: rdispl(:,:)
    type(mp_comm_type), intent(in) :: gid

    Size of sent data for every process Offset of sent data for every process Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_iallgatherv_lv(msgout, msgin, rcount, rdispl, gid, request)

    Gathers vector data from all processes and all processes receive the same data

    Data size Processes can send different-sized data

    Ranks The last rank counts the processes

    Offsets Offsets are from 0

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(in), CONTIGUOUS :: msgout(:)

    Rank-1 data to send

    integer(kind=int_8), intent(out), CONTIGUOUS :: msgin(:)

    Received data

    integer, intent(in), CONTIGUOUS :: rcount(:)
    integer, intent(in), CONTIGUOUS :: rdispl(:)
    type(mp_comm_type), intent(in) :: gid

    Size of sent data for every process Offset of sent data for every process Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_iallgatherv_lv2(msgout, msgin, rcount, rdispl, gid, request)

    Gathers vector data from all processes and all processes receive the same data

    Data size Processes can send different-sized data

    Ranks The last rank counts the processes

    Offsets Offsets are from 0

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(in), CONTIGUOUS :: msgout(:)

    Rank-1 data to send

    integer(kind=int_8), intent(out), CONTIGUOUS :: msgin(:)

    Received data

    integer, intent(in), CONTIGUOUS :: rcount(:,:)
    integer, intent(in), CONTIGUOUS :: rdispl(:,:)
    type(mp_comm_type), intent(in) :: gid

    Size of sent data for every process Offset of sent data for every process Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_iallgatherv_rv(msgout, msgin, rcount, rdispl, gid, request)

    Gathers vector data from all processes and all processes receive the same data

    Data size Processes can send different-sized data

    Ranks The last rank counts the processes

    Offsets Offsets are from 0

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(in), CONTIGUOUS :: msgout(:)

    Rank-1 data to send

    real(kind=real_4), intent(out), CONTIGUOUS :: msgin(:)

    Received data

    integer, intent(in), CONTIGUOUS :: rcount(:)
    integer, intent(in), CONTIGUOUS :: rdispl(:)
    type(mp_comm_type), intent(in) :: gid

    Size of sent data for every process Offset of sent data for every process Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_iallgatherv_rv2(msgout, msgin, rcount, rdispl, gid, request)

    Gathers vector data from all processes and all processes receive the same data

    Data size Processes can send different-sized data

    Ranks The last rank counts the processes

    Offsets Offsets are from 0

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(in), CONTIGUOUS :: msgout(:)

    Rank-1 data to send

    real(kind=real_4), intent(out), CONTIGUOUS :: msgin(:)

    Received data

    integer, intent(in), CONTIGUOUS :: rcount(:,:)
    integer, intent(in), CONTIGUOUS :: rdispl(:,:)
    type(mp_comm_type), intent(in) :: gid

    Size of sent data for every process Offset of sent data for every process Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_iallgatherv_dv(msgout, msgin, rcount, rdispl, gid, request)

    Gathers vector data from all processes and all processes receive the same data

    Data size Processes can send different-sized data

    Ranks The last rank counts the processes

    Offsets Offsets are from 0

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(in), CONTIGUOUS :: msgout(:)

    Rank-1 data to send

    real(kind=real_8), intent(out), CONTIGUOUS :: msgin(:)

    Received data

    integer, intent(in), CONTIGUOUS :: rcount(:)
    integer, intent(in), CONTIGUOUS :: rdispl(:)
    type(mp_comm_type), intent(in) :: gid

    Size of sent data for every process Offset of sent data for every process Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_iallgatherv_dv2(msgout, msgin, rcount, rdispl, gid, request)

    Gathers vector data from all processes and all processes receive the same data

    Data size Processes can send different-sized data

    Ranks The last rank counts the processes

    Offsets Offsets are from 0

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(in), CONTIGUOUS :: msgout(:)

    Rank-1 data to send

    real(kind=real_8), intent(out), CONTIGUOUS :: msgin(:)

    Received data

    integer, intent(in), CONTIGUOUS :: rcount(:,:)
    integer, intent(in), CONTIGUOUS :: rdispl(:,:)
    type(mp_comm_type), intent(in) :: gid

    Size of sent data for every process Offset of sent data for every process Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_iallgatherv_cv(msgout, msgin, rcount, rdispl, gid, request)

    Gathers vector data from all processes and all processes receive the same data

    Data size Processes can send different-sized data

    Ranks The last rank counts the processes

    Offsets Offsets are from 0

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(in), CONTIGUOUS :: msgout(:)

    Rank-1 data to send

    complex(kind=real_4), intent(out), CONTIGUOUS :: msgin(:)

    Received data

    integer, intent(in), CONTIGUOUS :: rcount(:)
    integer, intent(in), CONTIGUOUS :: rdispl(:)
    type(mp_comm_type), intent(in) :: gid

    Size of sent data for every process Offset of sent data for every process Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_iallgatherv_cv2(msgout, msgin, rcount, rdispl, gid, request)

    Gathers vector data from all processes and all processes receive the same data

    Data size Processes can send different-sized data

    Ranks The last rank counts the processes

    Offsets Offsets are from 0

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(in), CONTIGUOUS :: msgout(:)

    Rank-1 data to send

    complex(kind=real_4), intent(out), CONTIGUOUS :: msgin(:)

    Received data

    integer, intent(in), CONTIGUOUS :: rcount(:,:)
    integer, intent(in), CONTIGUOUS :: rdispl(:,:)
    type(mp_comm_type), intent(in) :: gid

    Size of sent data for every process Offset of sent data for every process Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_iallgatherv_zv(msgout, msgin, rcount, rdispl, gid, request)

    Gathers vector data from all processes and all processes receive the same data

    Data size Processes can send different-sized data

    Ranks The last rank counts the processes

    Offsets Offsets are from 0

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(in), CONTIGUOUS :: msgout(:)

    Rank-1 data to send

    complex(kind=real_8), intent(out), CONTIGUOUS :: msgin(:)

    Received data

    integer, intent(in), CONTIGUOUS :: rcount(:)
    integer, intent(in), CONTIGUOUS :: rdispl(:)
    type(mp_comm_type), intent(in) :: gid

    Size of sent data for every process Offset of sent data for every process Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_iallgatherv_zv2(msgout, msgin, rcount, rdispl, gid, request)

    Gathers vector data from all processes and all processes receive the same data

    Data size Processes can send different-sized data

    Ranks The last rank counts the processes

    Offsets Offsets are from 0

    MPI mapping mpi_allgather

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(in), CONTIGUOUS :: msgout(:)

    Rank-1 data to send

    complex(kind=real_8), intent(out), CONTIGUOUS :: msgin(:)

    Received data

    integer, intent(in), CONTIGUOUS :: rcount(:,:)
    integer, intent(in), CONTIGUOUS :: rdispl(:,:)
    type(mp_comm_type), intent(in) :: gid

    Size of sent data for every process Offset of sent data for every process Message passing environment identifier

    type(mp_request_type), intent(inout) :: request

public interface mp_iscatter

  • private subroutine mp_iscatter_i(msg_scatter, msg, root, gid, request)

    Scatters data from one processes to all others

    MPI mapping mpi_scatter

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(in), CONTIGUOUS :: msg_scatter(:)

    Data to scatter (for root process)

    integer(kind=int_4), intent(inout) :: msg
    integer, intent(in) :: root

    Process which scatters data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_iscatter_l(msg_scatter, msg, root, gid, request)

    Scatters data from one processes to all others

    MPI mapping mpi_scatter

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(in), CONTIGUOUS :: msg_scatter(:)

    Data to scatter (for root process)

    integer(kind=int_8), intent(inout) :: msg
    integer, intent(in) :: root

    Process which scatters data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_iscatter_r(msg_scatter, msg, root, gid, request)

    Scatters data from one processes to all others

    MPI mapping mpi_scatter

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(in), CONTIGUOUS :: msg_scatter(:)

    Data to scatter (for root process)

    real(kind=real_4), intent(inout) :: msg
    integer, intent(in) :: root

    Process which scatters data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_iscatter_d(msg_scatter, msg, root, gid, request)

    Scatters data from one processes to all others

    MPI mapping mpi_scatter

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(in), CONTIGUOUS :: msg_scatter(:)

    Data to scatter (for root process)

    real(kind=real_8), intent(inout) :: msg
    integer, intent(in) :: root

    Process which scatters data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_iscatter_c(msg_scatter, msg, root, gid, request)

    Scatters data from one processes to all others

    MPI mapping mpi_scatter

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(in), CONTIGUOUS :: msg_scatter(:)

    Data to scatter (for root process)

    complex(kind=real_4), intent(inout) :: msg
    integer, intent(in) :: root

    Process which scatters data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_iscatter_z(msg_scatter, msg, root, gid, request)

    Scatters data from one processes to all others

    MPI mapping mpi_scatter

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(in), CONTIGUOUS :: msg_scatter(:)

    Data to scatter (for root process)

    complex(kind=real_8), intent(inout) :: msg
    integer, intent(in) :: root

    Process which scatters data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_iscatter_iv2(msg_scatter, msg, root, gid, request)

    Scatters data from one processes to all others

    MPI mapping mpi_scatter

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(in), CONTIGUOUS :: msg_scatter(:,:)

    Data to scatter (for root process)

    integer(kind=int_4), intent(inout), CONTIGUOUS :: msg(:)
    integer, intent(in) :: root

    Process which scatters data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_iscatter_lv2(msg_scatter, msg, root, gid, request)

    Scatters data from one processes to all others

    MPI mapping mpi_scatter

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(in), CONTIGUOUS :: msg_scatter(:,:)

    Data to scatter (for root process)

    integer(kind=int_8), intent(inout), CONTIGUOUS :: msg(:)
    integer, intent(in) :: root

    Process which scatters data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_iscatter_rv2(msg_scatter, msg, root, gid, request)

    Scatters data from one processes to all others

    MPI mapping mpi_scatter

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(in), CONTIGUOUS :: msg_scatter(:,:)

    Data to scatter (for root process)

    real(kind=real_4), intent(inout), CONTIGUOUS :: msg(:)
    integer, intent(in) :: root

    Process which scatters data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_iscatter_dv2(msg_scatter, msg, root, gid, request)

    Scatters data from one processes to all others

    MPI mapping mpi_scatter

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(in), CONTIGUOUS :: msg_scatter(:,:)

    Data to scatter (for root process)

    real(kind=real_8), intent(inout), CONTIGUOUS :: msg(:)
    integer, intent(in) :: root

    Process which scatters data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_iscatter_cv2(msg_scatter, msg, root, gid, request)

    Scatters data from one processes to all others

    MPI mapping mpi_scatter

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(in), CONTIGUOUS :: msg_scatter(:,:)

    Data to scatter (for root process)

    complex(kind=real_4), intent(inout), CONTIGUOUS :: msg(:)
    integer, intent(in) :: root

    Process which scatters data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_iscatter_zv2(msg_scatter, msg, root, gid, request)

    Scatters data from one processes to all others

    MPI mapping mpi_scatter

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(in), CONTIGUOUS :: msg_scatter(:,:)

    Data to scatter (for root process)

    complex(kind=real_8), intent(inout), CONTIGUOUS :: msg(:)
    integer, intent(in) :: root

    Process which scatters data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_iscatterv_iv(msg_scatter, sendcounts, displs, msg, recvcount, root, gid, request)

    Scatters data from one processes to all others

    MPI mapping mpi_scatter

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(in), CONTIGUOUS :: msg_scatter(:)

    Data to scatter (for root process)

    integer, intent(in), CONTIGUOUS :: sendcounts(:)
    integer, intent(in), CONTIGUOUS :: displs(:)
    integer(kind=int_4), intent(inout), CONTIGUOUS :: msg(:)
    integer, intent(in) :: recvcount

    Process which scatters data

    integer, intent(in) :: root

    Process which scatters data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_iscatterv_lv(msg_scatter, sendcounts, displs, msg, recvcount, root, gid, request)

    Scatters data from one processes to all others

    MPI mapping mpi_scatter

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(in), CONTIGUOUS :: msg_scatter(:)

    Data to scatter (for root process)

    integer, intent(in), CONTIGUOUS :: sendcounts(:)
    integer, intent(in), CONTIGUOUS :: displs(:)
    integer(kind=int_8), intent(inout), CONTIGUOUS :: msg(:)
    integer, intent(in) :: recvcount

    Process which scatters data

    integer, intent(in) :: root

    Process which scatters data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_iscatterv_rv(msg_scatter, sendcounts, displs, msg, recvcount, root, gid, request)

    Scatters data from one processes to all others

    MPI mapping mpi_scatter

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(in), CONTIGUOUS :: msg_scatter(:)

    Data to scatter (for root process)

    integer, intent(in), CONTIGUOUS :: sendcounts(:)
    integer, intent(in), CONTIGUOUS :: displs(:)
    real(kind=real_4), intent(inout), CONTIGUOUS :: msg(:)
    integer, intent(in) :: recvcount

    Process which scatters data

    integer, intent(in) :: root

    Process which scatters data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_iscatterv_dv(msg_scatter, sendcounts, displs, msg, recvcount, root, gid, request)

    Scatters data from one processes to all others

    MPI mapping mpi_scatter

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(in), CONTIGUOUS :: msg_scatter(:)

    Data to scatter (for root process)

    integer, intent(in), CONTIGUOUS :: sendcounts(:)
    integer, intent(in), CONTIGUOUS :: displs(:)
    real(kind=real_8), intent(inout), CONTIGUOUS :: msg(:)
    integer, intent(in) :: recvcount

    Process which scatters data

    integer, intent(in) :: root

    Process which scatters data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_iscatterv_cv(msg_scatter, sendcounts, displs, msg, recvcount, root, gid, request)

    Scatters data from one processes to all others

    MPI mapping mpi_scatter

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(in), CONTIGUOUS :: msg_scatter(:)

    Data to scatter (for root process)

    integer, intent(in), CONTIGUOUS :: sendcounts(:)
    integer, intent(in), CONTIGUOUS :: displs(:)
    complex(kind=real_4), intent(inout), CONTIGUOUS :: msg(:)
    integer, intent(in) :: recvcount

    Process which scatters data

    integer, intent(in) :: root

    Process which scatters data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

    type(mp_request_type), intent(inout) :: request
  • private subroutine mp_iscatterv_zv(msg_scatter, sendcounts, displs, msg, recvcount, root, gid, request)

    Scatters data from one processes to all others

    MPI mapping mpi_scatter

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(in), CONTIGUOUS :: msg_scatter(:)

    Data to scatter (for root process)

    integer, intent(in), CONTIGUOUS :: sendcounts(:)
    integer, intent(in), CONTIGUOUS :: displs(:)
    complex(kind=real_8), intent(inout), CONTIGUOUS :: msg(:)
    integer, intent(in) :: recvcount

    Process which scatters data

    integer, intent(in) :: root

    Process which scatters data

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

    type(mp_request_type), intent(inout) :: request

public interface mp_alltoall

  • private subroutine mp_alltoall_i(sb, rb, count, group)

    All-to-all data exchange, rank 1 arrays, equal sizes

    Index meaning

    The first two indices specify the data while the last index counts the processes

    Sizes of ranks All processes have the same data size.

    MPI mapping mpi_alltoall

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(in), CONTIGUOUS :: sb(:)

    array with data to send

    integer(kind=int_4), intent(out), CONTIGUOUS :: rb(:)

    array into which data is received

    integer, intent(in) :: count

    number of elements to send/receive (product of the extents of the first two dimensions)

    type(mp_comm_type), intent(in) :: group

    Message passing environment identifier

  • private subroutine mp_alltoall_i22(sb, rb, count, group)

    All-to-all data exchange, rank-2 arrays, equal sizes

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(in), CONTIGUOUS :: sb(:,:)
    integer(kind=int_4), intent(out), CONTIGUOUS :: rb(:,:)
    integer, intent(in) :: count
    type(mp_comm_type), intent(in) :: group
  • private subroutine mp_alltoall_i44(sb, rb, count, group)

    All-to-all data exchange, rank 4 data, equal sizes

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(in), DIMENSION(:, :, :, :), CONTIGUOUS :: sb
    integer(kind=int_4), intent(out), DIMENSION(:, :, :, :), CONTIGUOUS :: rb
    integer, intent(in) :: count
    type(mp_comm_type), intent(in) :: group
  • private subroutine mp_alltoall_i11v(sb, scount, sdispl, rb, rcount, rdispl, group)

    All-to-all data exchange, rank-1 data of different sizes

    MPI mapping mpi_alltoallv

    Array sizes The scount, rcount, and the sdispl and rdispl arrays have a size equal to the number of processes.

    Offsets Values in sdispl and rdispl start with 0.

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(in), CONTIGUOUS :: sb(:)

    Data to send

    integer, intent(in), CONTIGUOUS :: scount(:)

    Data counts for data sent to other processes Respective data offsets for data sent to process

    integer, intent(in), CONTIGUOUS :: sdispl(:)

    Data counts for data sent to other processes Respective data offsets for data sent to process

    integer(kind=int_4), intent(inout), CONTIGUOUS :: rb(:)

    Buffer into which to receive data

    integer, intent(in), CONTIGUOUS :: rcount(:)

    Data counts for data received from other processes Respective data offsets for data received from other processes

    integer, intent(in), CONTIGUOUS :: rdispl(:)

    Data counts for data received from other processes Respective data offsets for data received from other processes

    type(mp_comm_type), intent(in) :: group

    Message passing environment identifier

  • private subroutine mp_alltoall_l(sb, rb, count, group)

    All-to-all data exchange, rank 1 arrays, equal sizes

    Index meaning

    The first two indices specify the data while the last index counts the processes

    Sizes of ranks All processes have the same data size.

    MPI mapping mpi_alltoall

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(in), CONTIGUOUS :: sb(:)

    array with data to send

    integer(kind=int_8), intent(out), CONTIGUOUS :: rb(:)

    array into which data is received

    integer, intent(in) :: count

    number of elements to send/receive (product of the extents of the first two dimensions)

    type(mp_comm_type), intent(in) :: group

    Message passing environment identifier

  • private subroutine mp_alltoall_l22(sb, rb, count, group)

    All-to-all data exchange, rank-2 arrays, equal sizes

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(in), CONTIGUOUS :: sb(:,:)
    integer(kind=int_8), intent(out), CONTIGUOUS :: rb(:,:)
    integer, intent(in) :: count
    type(mp_comm_type), intent(in) :: group
  • private subroutine mp_alltoall_l44(sb, rb, count, group)

    All-to-all data exchange, rank 4 data, equal sizes

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(in), DIMENSION(:, :, :, :), CONTIGUOUS :: sb
    integer(kind=int_8), intent(out), DIMENSION(:, :, :, :), CONTIGUOUS :: rb
    integer, intent(in) :: count
    type(mp_comm_type), intent(in) :: group
  • private subroutine mp_alltoall_l11v(sb, scount, sdispl, rb, rcount, rdispl, group)

    All-to-all data exchange, rank-1 data of different sizes

    MPI mapping mpi_alltoallv

    Array sizes The scount, rcount, and the sdispl and rdispl arrays have a size equal to the number of processes.

    Offsets Values in sdispl and rdispl start with 0.

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(in), CONTIGUOUS :: sb(:)

    Data to send

    integer, intent(in), CONTIGUOUS :: scount(:)

    Data counts for data sent to other processes Respective data offsets for data sent to process

    integer, intent(in), CONTIGUOUS :: sdispl(:)

    Data counts for data sent to other processes Respective data offsets for data sent to process

    integer(kind=int_8), intent(inout), CONTIGUOUS :: rb(:)

    Buffer into which to receive data

    integer, intent(in), CONTIGUOUS :: rcount(:)

    Data counts for data received from other processes Respective data offsets for data received from other processes

    integer, intent(in), CONTIGUOUS :: rdispl(:)

    Data counts for data received from other processes Respective data offsets for data received from other processes

    type(mp_comm_type), intent(in) :: group

    Message passing environment identifier

  • private subroutine mp_alltoall_d(sb, rb, count, group)

    All-to-all data exchange, rank 1 arrays, equal sizes

    Index meaning

    The first two indices specify the data while the last index counts the processes

    Sizes of ranks All processes have the same data size.

    MPI mapping mpi_alltoall

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(in), CONTIGUOUS :: sb(:)

    array with data to send

    real(kind=real_8), intent(out), CONTIGUOUS :: rb(:)

    array into which data is received

    integer, intent(in) :: count

    number of elements to send/receive (product of the extents of the first two dimensions)

    type(mp_comm_type), intent(in) :: group

    Message passing environment identifier

  • private subroutine mp_alltoall_d22(sb, rb, count, group)

    All-to-all data exchange, rank-2 arrays, equal sizes

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(in), CONTIGUOUS :: sb(:,:)
    real(kind=real_8), intent(out), CONTIGUOUS :: rb(:,:)
    integer, intent(in) :: count
    type(mp_comm_type), intent(in) :: group
  • private subroutine mp_alltoall_d44(sb, rb, count, group)

    All-to-all data exchange, rank 4 data, equal sizes

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(in), DIMENSION(:, :, :, :), CONTIGUOUS :: sb
    real(kind=real_8), intent(out), DIMENSION(:, :, :, :), CONTIGUOUS :: rb
    integer, intent(in) :: count
    type(mp_comm_type), intent(in) :: group
  • private subroutine mp_alltoall_d11v(sb, scount, sdispl, rb, rcount, rdispl, group)

    All-to-all data exchange, rank-1 data of different sizes

    MPI mapping mpi_alltoallv

    Array sizes The scount, rcount, and the sdispl and rdispl arrays have a size equal to the number of processes.

    Offsets Values in sdispl and rdispl start with 0.

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(in), CONTIGUOUS :: sb(:)

    Data to send

    integer, intent(in), CONTIGUOUS :: scount(:)

    Data counts for data sent to other processes Respective data offsets for data sent to process

    integer, intent(in), CONTIGUOUS :: sdispl(:)

    Data counts for data sent to other processes Respective data offsets for data sent to process

    real(kind=real_8), intent(inout), CONTIGUOUS :: rb(:)

    Buffer into which to receive data

    integer, intent(in), CONTIGUOUS :: rcount(:)

    Data counts for data received from other processes Respective data offsets for data received from other processes

    integer, intent(in), CONTIGUOUS :: rdispl(:)

    Data counts for data received from other processes Respective data offsets for data received from other processes

    type(mp_comm_type), intent(in) :: group

    Message passing environment identifier

  • private subroutine mp_alltoall_r(sb, rb, count, group)

    All-to-all data exchange, rank 1 arrays, equal sizes

    Index meaning

    The first two indices specify the data while the last index counts the processes

    Sizes of ranks All processes have the same data size.

    MPI mapping mpi_alltoall

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(in), CONTIGUOUS :: sb(:)

    array with data to send

    real(kind=real_4), intent(out), CONTIGUOUS :: rb(:)

    array into which data is received

    integer, intent(in) :: count

    number of elements to send/receive (product of the extents of the first two dimensions)

    type(mp_comm_type), intent(in) :: group

    Message passing environment identifier

  • private subroutine mp_alltoall_r22(sb, rb, count, group)

    All-to-all data exchange, rank-2 arrays, equal sizes

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(in), CONTIGUOUS :: sb(:,:)
    real(kind=real_4), intent(out), CONTIGUOUS :: rb(:,:)
    integer, intent(in) :: count
    type(mp_comm_type), intent(in) :: group
  • private subroutine mp_alltoall_r44(sb, rb, count, group)

    All-to-all data exchange, rank 4 data, equal sizes

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(in), DIMENSION(:, :, :, :), CONTIGUOUS :: sb
    real(kind=real_4), intent(out), DIMENSION(:, :, :, :), CONTIGUOUS :: rb
    integer, intent(in) :: count
    type(mp_comm_type), intent(in) :: group
  • private subroutine mp_alltoall_r11v(sb, scount, sdispl, rb, rcount, rdispl, group)

    All-to-all data exchange, rank-1 data of different sizes

    MPI mapping mpi_alltoallv

    Array sizes The scount, rcount, and the sdispl and rdispl arrays have a size equal to the number of processes.

    Offsets Values in sdispl and rdispl start with 0.

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(in), CONTIGUOUS :: sb(:)

    Data to send

    integer, intent(in), CONTIGUOUS :: scount(:)

    Data counts for data sent to other processes Respective data offsets for data sent to process

    integer, intent(in), CONTIGUOUS :: sdispl(:)

    Data counts for data sent to other processes Respective data offsets for data sent to process

    real(kind=real_4), intent(inout), CONTIGUOUS :: rb(:)

    Buffer into which to receive data

    integer, intent(in), CONTIGUOUS :: rcount(:)

    Data counts for data received from other processes Respective data offsets for data received from other processes

    integer, intent(in), CONTIGUOUS :: rdispl(:)

    Data counts for data received from other processes Respective data offsets for data received from other processes

    type(mp_comm_type), intent(in) :: group

    Message passing environment identifier

  • private subroutine mp_alltoall_z(sb, rb, count, group)

    All-to-all data exchange, rank 1 arrays, equal sizes

    Index meaning

    The first two indices specify the data while the last index counts the processes

    Sizes of ranks All processes have the same data size.

    MPI mapping mpi_alltoall

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(in), CONTIGUOUS :: sb(:)

    array with data to send

    complex(kind=real_8), intent(out), CONTIGUOUS :: rb(:)

    array into which data is received

    integer, intent(in) :: count

    number of elements to send/receive (product of the extents of the first two dimensions)

    type(mp_comm_type), intent(in) :: group

    Message passing environment identifier

  • private subroutine mp_alltoall_z22(sb, rb, count, group)

    All-to-all data exchange, rank-2 arrays, equal sizes

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(in), CONTIGUOUS :: sb(:,:)
    complex(kind=real_8), intent(out), CONTIGUOUS :: rb(:,:)
    integer, intent(in) :: count
    type(mp_comm_type), intent(in) :: group
  • private subroutine mp_alltoall_z44(sb, rb, count, group)

    All-to-all data exchange, rank 4 data, equal sizes

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(in), DIMENSION(:, :, :, :), CONTIGUOUS :: sb
    complex(kind=real_8), intent(out), DIMENSION(:, :, :, :), CONTIGUOUS :: rb
    integer, intent(in) :: count
    type(mp_comm_type), intent(in) :: group
  • private subroutine mp_alltoall_z11v(sb, scount, sdispl, rb, rcount, rdispl, group)

    All-to-all data exchange, rank-1 data of different sizes

    MPI mapping mpi_alltoallv

    Array sizes The scount, rcount, and the sdispl and rdispl arrays have a size equal to the number of processes.

    Offsets Values in sdispl and rdispl start with 0.

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(in), CONTIGUOUS :: sb(:)

    Data to send

    integer, intent(in), CONTIGUOUS :: scount(:)

    Data counts for data sent to other processes Respective data offsets for data sent to process

    integer, intent(in), CONTIGUOUS :: sdispl(:)

    Data counts for data sent to other processes Respective data offsets for data sent to process

    complex(kind=real_8), intent(inout), CONTIGUOUS :: rb(:)

    Buffer into which to receive data

    integer, intent(in), CONTIGUOUS :: rcount(:)

    Data counts for data received from other processes Respective data offsets for data received from other processes

    integer, intent(in), CONTIGUOUS :: rdispl(:)

    Data counts for data received from other processes Respective data offsets for data received from other processes

    type(mp_comm_type), intent(in) :: group

    Message passing environment identifier

  • private subroutine mp_alltoall_c(sb, rb, count, group)

    All-to-all data exchange, rank 1 arrays, equal sizes

    Index meaning

    The first two indices specify the data while the last index counts the processes

    Sizes of ranks All processes have the same data size.

    MPI mapping mpi_alltoall

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(in), CONTIGUOUS :: sb(:)

    array with data to send

    complex(kind=real_4), intent(out), CONTIGUOUS :: rb(:)

    array into which data is received

    integer, intent(in) :: count

    number of elements to send/receive (product of the extents of the first two dimensions)

    type(mp_comm_type), intent(in) :: group

    Message passing environment identifier

  • private subroutine mp_alltoall_c22(sb, rb, count, group)

    All-to-all data exchange, rank-2 arrays, equal sizes

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(in), CONTIGUOUS :: sb(:,:)
    complex(kind=real_4), intent(out), CONTIGUOUS :: rb(:,:)
    integer, intent(in) :: count
    type(mp_comm_type), intent(in) :: group
  • private subroutine mp_alltoall_c44(sb, rb, count, group)

    All-to-all data exchange, rank 4 data, equal sizes

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(in), DIMENSION(:, :, :, :), CONTIGUOUS :: sb
    complex(kind=real_4), intent(out), DIMENSION(:, :, :, :), CONTIGUOUS :: rb
    integer, intent(in) :: count
    type(mp_comm_type), intent(in) :: group
  • private subroutine mp_alltoall_c11v(sb, scount, sdispl, rb, rcount, rdispl, group)

    All-to-all data exchange, rank-1 data of different sizes

    MPI mapping mpi_alltoallv

    Array sizes The scount, rcount, and the sdispl and rdispl arrays have a size equal to the number of processes.

    Offsets Values in sdispl and rdispl start with 0.

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(in), CONTIGUOUS :: sb(:)

    Data to send

    integer, intent(in), CONTIGUOUS :: scount(:)

    Data counts for data sent to other processes Respective data offsets for data sent to process

    integer, intent(in), CONTIGUOUS :: sdispl(:)

    Data counts for data sent to other processes Respective data offsets for data sent to process

    complex(kind=real_4), intent(inout), CONTIGUOUS :: rb(:)

    Buffer into which to receive data

    integer, intent(in), CONTIGUOUS :: rcount(:)

    Data counts for data received from other processes Respective data offsets for data received from other processes

    integer, intent(in), CONTIGUOUS :: rdispl(:)

    Data counts for data received from other processes Respective data offsets for data received from other processes

    type(mp_comm_type), intent(in) :: group

    Message passing environment identifier

public interface mp_send

  • private subroutine mp_send_i(msg, dest, tag, gid)

    Send one datum to another process

    MPI mapping mpi_send

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4) :: msg

    Scalar to send

    integer :: dest

    Destination process Transfer identifier

    integer :: tag

    Destination process Transfer identifier

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_send_iv(msg, dest, tag, gid)

    Send rank-1 data to another process

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), CONTIGUOUS :: msg(:)

    Rank-1 data to send

    integer :: dest
    integer :: tag
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_send_l(msg, dest, tag, gid)

    Send one datum to another process

    MPI mapping mpi_send

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8) :: msg

    Scalar to send

    integer :: dest

    Destination process Transfer identifier

    integer :: tag

    Destination process Transfer identifier

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_send_lv(msg, dest, tag, gid)

    Send rank-1 data to another process

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), CONTIGUOUS :: msg(:)

    Rank-1 data to send

    integer :: dest
    integer :: tag
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_send_d(msg, dest, tag, gid)

    Send one datum to another process

    MPI mapping mpi_send

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8) :: msg

    Scalar to send

    integer :: dest

    Destination process Transfer identifier

    integer :: tag

    Destination process Transfer identifier

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_send_dv(msg, dest, tag, gid)

    Send rank-1 data to another process

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), CONTIGUOUS :: msg(:)

    Rank-1 data to send

    integer :: dest
    integer :: tag
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_send_r(msg, dest, tag, gid)

    Send one datum to another process

    MPI mapping mpi_send

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4) :: msg

    Scalar to send

    integer :: dest

    Destination process Transfer identifier

    integer :: tag

    Destination process Transfer identifier

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_send_rv(msg, dest, tag, gid)

    Send rank-1 data to another process

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), CONTIGUOUS :: msg(:)

    Rank-1 data to send

    integer :: dest
    integer :: tag
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_send_z(msg, dest, tag, gid)

    Send one datum to another process

    MPI mapping mpi_send

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8) :: msg

    Scalar to send

    integer :: dest

    Destination process Transfer identifier

    integer :: tag

    Destination process Transfer identifier

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_send_zv(msg, dest, tag, gid)

    Send rank-1 data to another process

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), CONTIGUOUS :: msg(:)

    Rank-1 data to send

    integer :: dest
    integer :: tag
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_send_c(msg, dest, tag, gid)

    Send one datum to another process

    MPI mapping mpi_send

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4) :: msg

    Scalar to send

    integer :: dest

    Destination process Transfer identifier

    integer :: tag

    Destination process Transfer identifier

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_send_cv(msg, dest, tag, gid)

    Send rank-1 data to another process

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), CONTIGUOUS :: msg(:)

    Rank-1 data to send

    integer :: dest
    integer :: tag
    type(mp_comm_type), intent(in) :: gid

public interface mp_recv

  • private subroutine mp_recv_i(msg, source, tag, gid)

    Receive one datum from another process

    MPI mapping mpi_send

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(inout) :: msg

    Place received data into this variable

    integer, intent(inout) :: source

    Process to receive from Transfer identifier

    integer, intent(inout) :: tag

    Process to receive from Transfer identifier

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_recv_iv(msg, source, tag, gid)

    Receive rank-1 data from another process

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(inout), CONTIGUOUS :: msg(:)

    Place received data into this rank-1 array

    integer, intent(inout) :: source
    integer, intent(inout) :: tag
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_recv_l(msg, source, tag, gid)

    Receive one datum from another process

    MPI mapping mpi_send

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(inout) :: msg

    Place received data into this variable

    integer, intent(inout) :: source

    Process to receive from Transfer identifier

    integer, intent(inout) :: tag

    Process to receive from Transfer identifier

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_recv_lv(msg, source, tag, gid)

    Receive rank-1 data from another process

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(inout), CONTIGUOUS :: msg(:)

    Place received data into this rank-1 array

    integer, intent(inout) :: source
    integer, intent(inout) :: tag
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_recv_d(msg, source, tag, gid)

    Receive one datum from another process

    MPI mapping mpi_send

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(inout) :: msg

    Place received data into this variable

    integer, intent(inout) :: source

    Process to receive from Transfer identifier

    integer, intent(inout) :: tag

    Process to receive from Transfer identifier

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_recv_dv(msg, source, tag, gid)

    Receive rank-1 data from another process

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(inout), CONTIGUOUS :: msg(:)

    Place received data into this rank-1 array

    integer, intent(inout) :: source
    integer, intent(inout) :: tag
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_recv_r(msg, source, tag, gid)

    Receive one datum from another process

    MPI mapping mpi_send

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(inout) :: msg

    Place received data into this variable

    integer, intent(inout) :: source

    Process to receive from Transfer identifier

    integer, intent(inout) :: tag

    Process to receive from Transfer identifier

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_recv_rv(msg, source, tag, gid)

    Receive rank-1 data from another process

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(inout), CONTIGUOUS :: msg(:)

    Place received data into this rank-1 array

    integer, intent(inout) :: source
    integer, intent(inout) :: tag
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_recv_z(msg, source, tag, gid)

    Receive one datum from another process

    MPI mapping mpi_send

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(inout) :: msg

    Place received data into this variable

    integer, intent(inout) :: source

    Process to receive from Transfer identifier

    integer, intent(inout) :: tag

    Process to receive from Transfer identifier

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_recv_zv(msg, source, tag, gid)

    Receive rank-1 data from another process

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(inout), CONTIGUOUS :: msg(:)

    Place received data into this rank-1 array

    integer, intent(inout) :: source
    integer, intent(inout) :: tag
    type(mp_comm_type), intent(in) :: gid
  • private subroutine mp_recv_c(msg, source, tag, gid)

    Receive one datum from another process

    MPI mapping mpi_send

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(inout) :: msg

    Place received data into this variable

    integer, intent(inout) :: source

    Process to receive from Transfer identifier

    integer, intent(inout) :: tag

    Process to receive from Transfer identifier

    type(mp_comm_type), intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_recv_cv(msg, source, tag, gid)

    Receive rank-1 data from another process

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(inout), CONTIGUOUS :: msg(:)

    Place received data into this rank-1 array

    integer, intent(inout) :: source
    integer, intent(inout) :: tag
    type(mp_comm_type), intent(in) :: gid

public interface mp_sendrecv

  • private subroutine mp_sendrecv_iv(msgin, dest, msgout, source, comm)

    Sends and receives vector data

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), intent(in), CONTIGUOUS :: msgin(:)

    Data to send

    integer, intent(in) :: dest

    Process to send data to

    integer(kind=int_4), intent(out), CONTIGUOUS :: msgout(:)

    Received data

    integer, intent(in) :: source

    Process from which to receive

    type(mp_comm_type), intent(in) :: comm

    Message passing environment identifier

  • private subroutine mp_sendrecv_lv(msgin, dest, msgout, source, comm)

    Sends and receives vector data

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), intent(in), CONTIGUOUS :: msgin(:)

    Data to send

    integer, intent(in) :: dest

    Process to send data to

    integer(kind=int_8), intent(out), CONTIGUOUS :: msgout(:)

    Received data

    integer, intent(in) :: source

    Process from which to receive

    type(mp_comm_type), intent(in) :: comm

    Message passing environment identifier

  • private subroutine mp_sendrecv_dv(msgin, dest, msgout, source, comm)

    Sends and receives vector data

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(in), CONTIGUOUS :: msgin(:)

    Data to send

    integer, intent(in) :: dest

    Process to send data to

    real(kind=real_8), intent(out), CONTIGUOUS :: msgout(:)

    Received data

    integer, intent(in) :: source

    Process from which to receive

    type(mp_comm_type), intent(in) :: comm

    Message passing environment identifier

  • private subroutine mp_sendrecv_rv(msgin, dest, msgout, source, comm)

    Sends and receives vector data

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(in), CONTIGUOUS :: msgin(:)

    Data to send

    integer, intent(in) :: dest

    Process to send data to

    real(kind=real_4), intent(out), CONTIGUOUS :: msgout(:)

    Received data

    integer, intent(in) :: source

    Process from which to receive

    type(mp_comm_type), intent(in) :: comm

    Message passing environment identifier

  • private subroutine mp_sendrecv_zv(msgin, dest, msgout, source, comm)

    Sends and receives vector data

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(in), CONTIGUOUS :: msgin(:)

    Data to send

    integer, intent(in) :: dest

    Process to send data to

    complex(kind=real_8), intent(out), CONTIGUOUS :: msgout(:)

    Received data

    integer, intent(in) :: source

    Process from which to receive

    type(mp_comm_type), intent(in) :: comm

    Message passing environment identifier

  • private subroutine mp_sendrecv_cv(msgin, dest, msgout, source, comm)

    Sends and receives vector data

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(in), CONTIGUOUS :: msgin(:)

    Data to send

    integer, intent(in) :: dest

    Process to send data to

    complex(kind=real_4), intent(out), CONTIGUOUS :: msgout(:)

    Received data

    integer, intent(in) :: source

    Process from which to receive

    type(mp_comm_type), intent(in) :: comm

    Message passing environment identifier

public interface mp_isendrecv

  • private subroutine mp_isendrecv_i(msgin, dest, msgout, source, comm, send_request, recv_request, tag)

    Non-blocking send and receive of a scalar

    Implementation Calls mpi_isend and mpi_irecv.

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4) :: msgin

    Scalar data to send

    integer, intent(in) :: dest

    Which process to send to

    integer(kind=int_4) :: msgout

    Receive data into this pointer

    integer, intent(in) :: source

    Process to receive from

    type(mp_comm_type), intent(in) :: comm

    Message passing environment identifier

    type(mp_request_type), intent(out) :: send_request

    Request handle for the send Request handle for the receive

    type(mp_request_type), intent(out) :: recv_request

    Request handle for the send Request handle for the receive

    integer, intent(in), optional :: tag

    tag to differentiate requests

  • private subroutine mp_isendrecv_iv(msgin, dest, msgout, source, comm, send_request, recv_request, tag)

    Non-blocking send and receive of a vector

    Implementation Calls mpi_isend and mpi_irecv.

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), CONTIGUOUS, DIMENSION(:) :: msgin

    Vector data to send

    integer, intent(in) :: dest

    Which process to send to

    integer(kind=int_4), CONTIGUOUS, DIMENSION(:) :: msgout

    Receive data into this pointer

    integer, intent(in) :: source

    Process to receive from

    type(mp_comm_type), intent(in) :: comm

    Message passing environment identifier

    type(mp_request_type), intent(out) :: send_request

    Request handle for the send Request handle for the receive

    type(mp_request_type), intent(out) :: recv_request

    Request handle for the send Request handle for the receive

    integer, intent(in), optional :: tag

    tag to differentiate requests

  • private subroutine mp_isendrecv_l(msgin, dest, msgout, source, comm, send_request, recv_request, tag)

    Non-blocking send and receive of a scalar

    Implementation Calls mpi_isend and mpi_irecv.

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8) :: msgin

    Scalar data to send

    integer, intent(in) :: dest

    Which process to send to

    integer(kind=int_8) :: msgout

    Receive data into this pointer

    integer, intent(in) :: source

    Process to receive from

    type(mp_comm_type), intent(in) :: comm

    Message passing environment identifier

    type(mp_request_type), intent(out) :: send_request

    Request handle for the send Request handle for the receive

    type(mp_request_type), intent(out) :: recv_request

    Request handle for the send Request handle for the receive

    integer, intent(in), optional :: tag

    tag to differentiate requests

  • private subroutine mp_isendrecv_lv(msgin, dest, msgout, source, comm, send_request, recv_request, tag)

    Non-blocking send and receive of a vector

    Implementation Calls mpi_isend and mpi_irecv.

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), CONTIGUOUS, DIMENSION(:) :: msgin

    Vector data to send

    integer, intent(in) :: dest

    Which process to send to

    integer(kind=int_8), CONTIGUOUS, DIMENSION(:) :: msgout

    Receive data into this pointer

    integer, intent(in) :: source

    Process to receive from

    type(mp_comm_type), intent(in) :: comm

    Message passing environment identifier

    type(mp_request_type), intent(out) :: send_request

    Request handle for the send Request handle for the receive

    type(mp_request_type), intent(out) :: recv_request

    Request handle for the send Request handle for the receive

    integer, intent(in), optional :: tag

    tag to differentiate requests

  • private subroutine mp_isendrecv_d(msgin, dest, msgout, source, comm, send_request, recv_request, tag)

    Non-blocking send and receive of a scalar

    Implementation Calls mpi_isend and mpi_irecv.

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8) :: msgin

    Scalar data to send

    integer, intent(in) :: dest

    Which process to send to

    real(kind=real_8) :: msgout

    Receive data into this pointer

    integer, intent(in) :: source

    Process to receive from

    type(mp_comm_type), intent(in) :: comm

    Message passing environment identifier

    type(mp_request_type), intent(out) :: send_request

    Request handle for the send Request handle for the receive

    type(mp_request_type), intent(out) :: recv_request

    Request handle for the send Request handle for the receive

    integer, intent(in), optional :: tag

    tag to differentiate requests

  • private subroutine mp_isendrecv_dv(msgin, dest, msgout, source, comm, send_request, recv_request, tag)

    Non-blocking send and receive of a vector

    Implementation Calls mpi_isend and mpi_irecv.

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), CONTIGUOUS, DIMENSION(:) :: msgin

    Vector data to send

    integer, intent(in) :: dest

    Which process to send to

    real(kind=real_8), CONTIGUOUS, DIMENSION(:) :: msgout

    Receive data into this pointer

    integer, intent(in) :: source

    Process to receive from

    type(mp_comm_type), intent(in) :: comm

    Message passing environment identifier

    type(mp_request_type), intent(out) :: send_request

    Request handle for the send Request handle for the receive

    type(mp_request_type), intent(out) :: recv_request

    Request handle for the send Request handle for the receive

    integer, intent(in), optional :: tag

    tag to differentiate requests

  • private subroutine mp_isendrecv_r(msgin, dest, msgout, source, comm, send_request, recv_request, tag)

    Non-blocking send and receive of a scalar

    Implementation Calls mpi_isend and mpi_irecv.

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4) :: msgin

    Scalar data to send

    integer, intent(in) :: dest

    Which process to send to

    real(kind=real_4) :: msgout

    Receive data into this pointer

    integer, intent(in) :: source

    Process to receive from

    type(mp_comm_type), intent(in) :: comm

    Message passing environment identifier

    type(mp_request_type), intent(out) :: send_request

    Request handle for the send Request handle for the receive

    type(mp_request_type), intent(out) :: recv_request

    Request handle for the send Request handle for the receive

    integer, intent(in), optional :: tag

    tag to differentiate requests

  • private subroutine mp_isendrecv_rv(msgin, dest, msgout, source, comm, send_request, recv_request, tag)

    Non-blocking send and receive of a vector

    Implementation Calls mpi_isend and mpi_irecv.

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), CONTIGUOUS, DIMENSION(:) :: msgin

    Vector data to send

    integer, intent(in) :: dest

    Which process to send to

    real(kind=real_4), CONTIGUOUS, DIMENSION(:) :: msgout

    Receive data into this pointer

    integer, intent(in) :: source

    Process to receive from

    type(mp_comm_type), intent(in) :: comm

    Message passing environment identifier

    type(mp_request_type), intent(out) :: send_request

    Request handle for the send Request handle for the receive

    type(mp_request_type), intent(out) :: recv_request

    Request handle for the send Request handle for the receive

    integer, intent(in), optional :: tag

    tag to differentiate requests

  • private subroutine mp_isendrecv_z(msgin, dest, msgout, source, comm, send_request, recv_request, tag)

    Non-blocking send and receive of a scalar

    Implementation Calls mpi_isend and mpi_irecv.

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8) :: msgin

    Scalar data to send

    integer, intent(in) :: dest

    Which process to send to

    complex(kind=real_8) :: msgout

    Receive data into this pointer

    integer, intent(in) :: source

    Process to receive from

    type(mp_comm_type), intent(in) :: comm

    Message passing environment identifier

    type(mp_request_type), intent(out) :: send_request

    Request handle for the send Request handle for the receive

    type(mp_request_type), intent(out) :: recv_request

    Request handle for the send Request handle for the receive

    integer, intent(in), optional :: tag

    tag to differentiate requests

  • private subroutine mp_isendrecv_zv(msgin, dest, msgout, source, comm, send_request, recv_request, tag)

    Non-blocking send and receive of a vector

    Implementation Calls mpi_isend and mpi_irecv.

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), CONTIGUOUS, DIMENSION(:) :: msgin

    Vector data to send

    integer, intent(in) :: dest

    Which process to send to

    complex(kind=real_8), CONTIGUOUS, DIMENSION(:) :: msgout

    Receive data into this pointer

    integer, intent(in) :: source

    Process to receive from

    type(mp_comm_type), intent(in) :: comm

    Message passing environment identifier

    type(mp_request_type), intent(out) :: send_request

    Request handle for the send Request handle for the receive

    type(mp_request_type), intent(out) :: recv_request

    Request handle for the send Request handle for the receive

    integer, intent(in), optional :: tag

    tag to differentiate requests

  • private subroutine mp_isendrecv_c(msgin, dest, msgout, source, comm, send_request, recv_request, tag)

    Non-blocking send and receive of a scalar

    Implementation Calls mpi_isend and mpi_irecv.

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4) :: msgin

    Scalar data to send

    integer, intent(in) :: dest

    Which process to send to

    complex(kind=real_4) :: msgout

    Receive data into this pointer

    integer, intent(in) :: source

    Process to receive from

    type(mp_comm_type), intent(in) :: comm

    Message passing environment identifier

    type(mp_request_type), intent(out) :: send_request

    Request handle for the send Request handle for the receive

    type(mp_request_type), intent(out) :: recv_request

    Request handle for the send Request handle for the receive

    integer, intent(in), optional :: tag

    tag to differentiate requests

  • private subroutine mp_isendrecv_cv(msgin, dest, msgout, source, comm, send_request, recv_request, tag)

    Non-blocking send and receive of a vector

    Implementation Calls mpi_isend and mpi_irecv.

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), CONTIGUOUS, DIMENSION(:) :: msgin

    Vector data to send

    integer, intent(in) :: dest

    Which process to send to

    complex(kind=real_4), CONTIGUOUS, DIMENSION(:) :: msgout

    Receive data into this pointer

    integer, intent(in) :: source

    Process to receive from

    type(mp_comm_type), intent(in) :: comm

    Message passing environment identifier

    type(mp_request_type), intent(out) :: send_request

    Request handle for the send Request handle for the receive

    type(mp_request_type), intent(out) :: recv_request

    Request handle for the send Request handle for the receive

    integer, intent(in), optional :: tag

    tag to differentiate requests

public interface mp_isend

  • private subroutine mp_isend_iv(msgin, dest, comm, request, tag)

    Non-blocking send of vector data

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), CONTIGUOUS, DIMENSION(:) :: msgin
    integer, intent(in) :: dest
    type(mp_comm_type), intent(in) :: comm
    type(mp_request_type), intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_isend_im2(msgin, dest, comm, request, tag)

    Non-blocking send of matrix data

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), DIMENSION(:, :), CONTIGUOUS :: msgin
    integer, intent(in) :: dest
    type(mp_comm_type), intent(in) :: comm
    type(mp_request_type), intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_isend_lv(msgin, dest, comm, request, tag)

    Non-blocking send of vector data

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), CONTIGUOUS, DIMENSION(:) :: msgin
    integer, intent(in) :: dest
    type(mp_comm_type), intent(in) :: comm
    type(mp_request_type), intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_isend_lm2(msgin, dest, comm, request, tag)

    Non-blocking send of matrix data

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), DIMENSION(:, :), CONTIGUOUS :: msgin
    integer, intent(in) :: dest
    type(mp_comm_type), intent(in) :: comm
    type(mp_request_type), intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_isend_dv(msgin, dest, comm, request, tag)

    Non-blocking send of vector data

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), CONTIGUOUS, DIMENSION(:) :: msgin
    integer, intent(in) :: dest
    type(mp_comm_type), intent(in) :: comm
    type(mp_request_type), intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_isend_dm2(msgin, dest, comm, request, tag)

    Non-blocking send of matrix data

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), DIMENSION(:, :), CONTIGUOUS :: msgin
    integer, intent(in) :: dest
    type(mp_comm_type), intent(in) :: comm
    type(mp_request_type), intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_isend_rv(msgin, dest, comm, request, tag)

    Non-blocking send of vector data

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), CONTIGUOUS, DIMENSION(:) :: msgin
    integer, intent(in) :: dest
    type(mp_comm_type), intent(in) :: comm
    type(mp_request_type), intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_isend_rm2(msgin, dest, comm, request, tag)

    Non-blocking send of matrix data

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), DIMENSION(:, :), CONTIGUOUS :: msgin
    integer, intent(in) :: dest
    type(mp_comm_type), intent(in) :: comm
    type(mp_request_type), intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_isend_zv(msgin, dest, comm, request, tag)

    Non-blocking send of vector data

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), CONTIGUOUS, DIMENSION(:) :: msgin
    integer, intent(in) :: dest
    type(mp_comm_type), intent(in) :: comm
    type(mp_request_type), intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_isend_zm2(msgin, dest, comm, request, tag)

    Non-blocking send of matrix data

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), DIMENSION(:, :), CONTIGUOUS :: msgin
    integer, intent(in) :: dest
    type(mp_comm_type), intent(in) :: comm
    type(mp_request_type), intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_isend_cv(msgin, dest, comm, request, tag)

    Non-blocking send of vector data

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), CONTIGUOUS, DIMENSION(:) :: msgin
    integer, intent(in) :: dest
    type(mp_comm_type), intent(in) :: comm
    type(mp_request_type), intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_isend_cm2(msgin, dest, comm, request, tag)

    Non-blocking send of matrix data

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), DIMENSION(:, :), CONTIGUOUS :: msgin
    integer, intent(in) :: dest
    type(mp_comm_type), intent(in) :: comm
    type(mp_request_type), intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_isend_bv(msgin, dest, comm, request, tag)

    Non-blocking send of logical vector data

    Arguments

    Type IntentOptional Attributes Name
    logical, DIMENSION(:), CONTIGUOUS :: msgin

    the input message

    integer, intent(in) :: dest

    the destination processor

    type(mp_comm_type), intent(in) :: comm

    the communicator object

    type(mp_request_type), intent(out) :: request

    communication request index

    integer, intent(in), optional :: tag

    message tag

  • private subroutine mp_isend_custom(msgin, dest, comm, request, tag)

    Non-blocking send of custom type

    Arguments

    Type IntentOptional Attributes Name
    type(mp_type_descriptor_type), intent(in) :: msgin
    integer, intent(in) :: dest
    type(mp_comm_type), intent(in) :: comm
    type(mp_request_type), intent(out) :: request
    integer, intent(in), optional :: tag

public interface mp_irecv

  • private subroutine mp_irecv_iv(msgout, source, comm, request, tag)

    Non-blocking receive of vector data

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), CONTIGUOUS, DIMENSION(:) :: msgout
    integer, intent(in) :: source
    type(mp_comm_type), intent(in) :: comm
    type(mp_request_type), intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_irecv_im2(msgout, source, comm, request, tag)

    Non-blocking receive of matrix data

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), DIMENSION(:, :), CONTIGUOUS :: msgout
    integer, intent(in) :: source
    type(mp_comm_type), intent(in) :: comm
    type(mp_request_type), intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_irecv_lv(msgout, source, comm, request, tag)

    Non-blocking receive of vector data

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), CONTIGUOUS, DIMENSION(:) :: msgout
    integer, intent(in) :: source
    type(mp_comm_type), intent(in) :: comm
    type(mp_request_type), intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_irecv_lm2(msgout, source, comm, request, tag)

    Non-blocking receive of matrix data

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), DIMENSION(:, :), CONTIGUOUS :: msgout
    integer, intent(in) :: source
    type(mp_comm_type), intent(in) :: comm
    type(mp_request_type), intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_irecv_dv(msgout, source, comm, request, tag)

    Non-blocking receive of vector data

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), CONTIGUOUS, DIMENSION(:) :: msgout
    integer, intent(in) :: source
    type(mp_comm_type), intent(in) :: comm
    type(mp_request_type), intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_irecv_dm2(msgout, source, comm, request, tag)

    Non-blocking receive of matrix data

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), DIMENSION(:, :), CONTIGUOUS :: msgout
    integer, intent(in) :: source
    type(mp_comm_type), intent(in) :: comm
    type(mp_request_type), intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_irecv_rv(msgout, source, comm, request, tag)

    Non-blocking receive of vector data

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), CONTIGUOUS, DIMENSION(:) :: msgout
    integer, intent(in) :: source
    type(mp_comm_type), intent(in) :: comm
    type(mp_request_type), intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_irecv_rm2(msgout, source, comm, request, tag)

    Non-blocking receive of matrix data

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), DIMENSION(:, :), CONTIGUOUS :: msgout
    integer, intent(in) :: source
    type(mp_comm_type), intent(in) :: comm
    type(mp_request_type), intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_irecv_zv(msgout, source, comm, request, tag)

    Non-blocking receive of vector data

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), CONTIGUOUS, DIMENSION(:) :: msgout
    integer, intent(in) :: source
    type(mp_comm_type), intent(in) :: comm
    type(mp_request_type), intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_irecv_zm2(msgout, source, comm, request, tag)

    Non-blocking receive of matrix data

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), DIMENSION(:, :), CONTIGUOUS :: msgout
    integer, intent(in) :: source
    type(mp_comm_type), intent(in) :: comm
    type(mp_request_type), intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_irecv_cv(msgout, source, comm, request, tag)

    Non-blocking receive of vector data

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), CONTIGUOUS, DIMENSION(:) :: msgout
    integer, intent(in) :: source
    type(mp_comm_type), intent(in) :: comm
    type(mp_request_type), intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_irecv_cm2(msgout, source, comm, request, tag)

    Non-blocking receive of matrix data

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), DIMENSION(:, :), CONTIGUOUS :: msgout
    integer, intent(in) :: source
    type(mp_comm_type), intent(in) :: comm
    type(mp_request_type), intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_irecv_bv(msgout, source, comm, request, tag)

    Non-blocking receive of logical vector data

    Arguments

    Type IntentOptional Attributes Name
    logical, DIMENSION(:), CONTIGUOUS :: msgout

    the received message

    integer, intent(in) :: source

    the source processor

    type(mp_comm_type), intent(in) :: comm

    the communicator object

    type(mp_request_type), intent(out) :: request

    communication request index

    integer, intent(in), optional :: tag

    message tag

  • private subroutine mp_irecv_custom(msgout, source, comm, request, tag)

    Non-blocking receive of vector data

    Arguments

    Type IntentOptional Attributes Name
    type(mp_type_descriptor_type), intent(inout) :: msgout
    integer, intent(in) :: source
    type(mp_comm_type), intent(in) :: comm
    type(mp_request_type), intent(out) :: request
    integer, intent(in), optional :: tag

public interface mp_win_create

  • private subroutine mp_win_create_iv(base, comm, win)

    Window initialization function for vector data

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), CONTIGUOUS, DIMENSION(:) :: base
    type(mp_comm_type), intent(in) :: comm
    type(mp_win_type), intent(out) :: win
  • private subroutine mp_win_create_lv(base, comm, win)

    Window initialization function for vector data

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), CONTIGUOUS, DIMENSION(:) :: base
    type(mp_comm_type), intent(in) :: comm
    type(mp_win_type), intent(out) :: win
  • private subroutine mp_win_create_dv(base, comm, win)

    Window initialization function for vector data

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), CONTIGUOUS, DIMENSION(:) :: base
    type(mp_comm_type), intent(in) :: comm
    type(mp_win_type), intent(out) :: win
  • private subroutine mp_win_create_rv(base, comm, win)

    Window initialization function for vector data

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), CONTIGUOUS, DIMENSION(:) :: base
    type(mp_comm_type), intent(in) :: comm
    type(mp_win_type), intent(out) :: win
  • private subroutine mp_win_create_zv(base, comm, win)

    Window initialization function for vector data

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), CONTIGUOUS, DIMENSION(:) :: base
    type(mp_comm_type), intent(in) :: comm
    type(mp_win_type), intent(out) :: win
  • private subroutine mp_win_create_cv(base, comm, win)

    Window initialization function for vector data

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), CONTIGUOUS, DIMENSION(:) :: base
    type(mp_comm_type), intent(in) :: comm
    type(mp_win_type), intent(out) :: win

public interface mp_rget

  • private subroutine mp_rget_iv(base, source, win, win_data, myproc, disp, request, origin_datatype, target_datatype)

    Single-sided get function for vector data

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), CONTIGUOUS, DIMENSION(:) :: base
    integer, intent(in) :: source
    type(mp_win_type), intent(in) :: win
    integer(kind=int_4), CONTIGUOUS, DIMENSION(:) :: win_data
    integer, intent(in), optional :: myproc
    integer, intent(in), optional :: disp
    type(mp_request_type), intent(out) :: request
    type(mp_type_descriptor_type), intent(in), optional :: origin_datatype
    type(mp_type_descriptor_type), intent(in), optional :: target_datatype
  • private subroutine mp_rget_lv(base, source, win, win_data, myproc, disp, request, origin_datatype, target_datatype)

    Single-sided get function for vector data

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), CONTIGUOUS, DIMENSION(:) :: base
    integer, intent(in) :: source
    type(mp_win_type), intent(in) :: win
    integer(kind=int_8), CONTIGUOUS, DIMENSION(:) :: win_data
    integer, intent(in), optional :: myproc
    integer, intent(in), optional :: disp
    type(mp_request_type), intent(out) :: request
    type(mp_type_descriptor_type), intent(in), optional :: origin_datatype
    type(mp_type_descriptor_type), intent(in), optional :: target_datatype
  • private subroutine mp_rget_dv(base, source, win, win_data, myproc, disp, request, origin_datatype, target_datatype)

    Single-sided get function for vector data

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), CONTIGUOUS, DIMENSION(:) :: base
    integer, intent(in) :: source
    type(mp_win_type), intent(in) :: win
    real(kind=real_8), CONTIGUOUS, DIMENSION(:) :: win_data
    integer, intent(in), optional :: myproc
    integer, intent(in), optional :: disp
    type(mp_request_type), intent(out) :: request
    type(mp_type_descriptor_type), intent(in), optional :: origin_datatype
    type(mp_type_descriptor_type), intent(in), optional :: target_datatype
  • private subroutine mp_rget_rv(base, source, win, win_data, myproc, disp, request, origin_datatype, target_datatype)

    Single-sided get function for vector data

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), CONTIGUOUS, DIMENSION(:) :: base
    integer, intent(in) :: source
    type(mp_win_type), intent(in) :: win
    real(kind=real_4), CONTIGUOUS, DIMENSION(:) :: win_data
    integer, intent(in), optional :: myproc
    integer, intent(in), optional :: disp
    type(mp_request_type), intent(out) :: request
    type(mp_type_descriptor_type), intent(in), optional :: origin_datatype
    type(mp_type_descriptor_type), intent(in), optional :: target_datatype
  • private subroutine mp_rget_zv(base, source, win, win_data, myproc, disp, request, origin_datatype, target_datatype)

    Single-sided get function for vector data

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), CONTIGUOUS, DIMENSION(:) :: base
    integer, intent(in) :: source
    type(mp_win_type), intent(in) :: win
    complex(kind=real_8), CONTIGUOUS, DIMENSION(:) :: win_data
    integer, intent(in), optional :: myproc
    integer, intent(in), optional :: disp
    type(mp_request_type), intent(out) :: request
    type(mp_type_descriptor_type), intent(in), optional :: origin_datatype
    type(mp_type_descriptor_type), intent(in), optional :: target_datatype
  • private subroutine mp_rget_cv(base, source, win, win_data, myproc, disp, request, origin_datatype, target_datatype)

    Single-sided get function for vector data

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), CONTIGUOUS, DIMENSION(:) :: base
    integer, intent(in) :: source
    type(mp_win_type), intent(in) :: win
    complex(kind=real_4), CONTIGUOUS, DIMENSION(:) :: win_data
    integer, intent(in), optional :: myproc
    integer, intent(in), optional :: disp
    type(mp_request_type), intent(out) :: request
    type(mp_type_descriptor_type), intent(in), optional :: origin_datatype
    type(mp_type_descriptor_type), intent(in), optional :: target_datatype

public interface mp_allocate

  • private subroutine mp_allocate_i(DATA, len, stat)

    Allocates special parallel memory

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), DIMENSION(:), POINTER, CONTIGUOUS :: DATA

    pointer to integer array to allocate

    integer, intent(in) :: len

    number of integers to allocate

    integer, intent(out), optional :: stat

    allocation status result

  • private subroutine mp_allocate_l(DATA, len, stat)

    Allocates special parallel memory

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), DIMENSION(:), POINTER, CONTIGUOUS :: DATA

    pointer to integer array to allocate

    integer, intent(in) :: len

    number of integers to allocate

    integer, intent(out), optional :: stat

    allocation status result

  • private subroutine mp_allocate_d(DATA, len, stat)

    Allocates special parallel memory

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), DIMENSION(:), POINTER, CONTIGUOUS :: DATA

    pointer to integer array to allocate

    integer, intent(in) :: len

    number of integers to allocate

    integer, intent(out), optional :: stat

    allocation status result

  • private subroutine mp_allocate_r(DATA, len, stat)

    Allocates special parallel memory

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), DIMENSION(:), POINTER, CONTIGUOUS :: DATA

    pointer to integer array to allocate

    integer, intent(in) :: len

    number of integers to allocate

    integer, intent(out), optional :: stat

    allocation status result

  • private subroutine mp_allocate_z(DATA, len, stat)

    Allocates special parallel memory

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), DIMENSION(:), POINTER, CONTIGUOUS :: DATA

    pointer to integer array to allocate

    integer, intent(in) :: len

    number of integers to allocate

    integer, intent(out), optional :: stat

    allocation status result

  • private subroutine mp_allocate_c(DATA, len, stat)

    Allocates special parallel memory

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), DIMENSION(:), POINTER, CONTIGUOUS :: DATA

    pointer to integer array to allocate

    integer, intent(in) :: len

    number of integers to allocate

    integer, intent(out), optional :: stat

    allocation status result

public interface mp_deallocate

  • private subroutine mp_deallocate_i(DATA, stat)

    Deallocates special parallel memory

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), DIMENSION(:), POINTER, CONTIGUOUS :: DATA

    pointer to special memory to deallocate

    integer, intent(out), optional :: stat
  • private subroutine mp_deallocate_l(DATA, stat)

    Deallocates special parallel memory

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), DIMENSION(:), POINTER, CONTIGUOUS :: DATA

    pointer to special memory to deallocate

    integer, intent(out), optional :: stat
  • private subroutine mp_deallocate_d(DATA, stat)

    Deallocates special parallel memory

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), DIMENSION(:), POINTER, CONTIGUOUS :: DATA

    pointer to special memory to deallocate

    integer, intent(out), optional :: stat
  • private subroutine mp_deallocate_r(DATA, stat)

    Deallocates special parallel memory

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), DIMENSION(:), POINTER, CONTIGUOUS :: DATA

    pointer to special memory to deallocate

    integer, intent(out), optional :: stat
  • private subroutine mp_deallocate_z(DATA, stat)

    Deallocates special parallel memory

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), DIMENSION(:), POINTER, CONTIGUOUS :: DATA

    pointer to special memory to deallocate

    integer, intent(out), optional :: stat
  • private subroutine mp_deallocate_c(DATA, stat)

    Deallocates special parallel memory

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), DIMENSION(:), POINTER, CONTIGUOUS :: DATA

    pointer to special memory to deallocate

    integer, intent(out), optional :: stat

public interface mp_type_make

  • private function mp_type_make_i(ptr, vector_descriptor, index_descriptor) result(type_descriptor)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_4), DIMENSION(:), POINTER :: ptr
    integer, intent(in), optional, DIMENSION(2) :: vector_descriptor
    type(mp_indexing_meta_type), intent(in), optional :: index_descriptor

    Return Value type(mp_type_descriptor_type)

  • private function mp_type_make_l(ptr, vector_descriptor, index_descriptor) result(type_descriptor)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=int_8), DIMENSION(:), POINTER :: ptr
    integer, intent(in), optional, DIMENSION(2) :: vector_descriptor
    type(mp_indexing_meta_type), intent(in), optional :: index_descriptor

    Return Value type(mp_type_descriptor_type)

  • private function mp_type_make_d(ptr, vector_descriptor, index_descriptor) result(type_descriptor)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), DIMENSION(:), POINTER :: ptr
    integer, intent(in), optional, DIMENSION(2) :: vector_descriptor
    type(mp_indexing_meta_type), intent(in), optional :: index_descriptor

    Return Value type(mp_type_descriptor_type)

  • private function mp_type_make_r(ptr, vector_descriptor, index_descriptor) result(type_descriptor)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), DIMENSION(:), POINTER :: ptr
    integer, intent(in), optional, DIMENSION(2) :: vector_descriptor
    type(mp_indexing_meta_type), intent(in), optional :: index_descriptor

    Return Value type(mp_type_descriptor_type)

  • private function mp_type_make_z(ptr, vector_descriptor, index_descriptor) result(type_descriptor)

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), DIMENSION(:), POINTER :: ptr
    integer, intent(in), optional, DIMENSION(2) :: vector_descriptor
    type(mp_indexing_meta_type), intent(in), optional :: index_descriptor

    Return Value type(mp_type_descriptor_type)

  • private function mp_type_make_c(ptr, vector_descriptor, index_descriptor) result(type_descriptor)

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), DIMENSION(:), POINTER :: ptr
    integer, intent(in), optional, DIMENSION(2) :: vector_descriptor
    type(mp_indexing_meta_type), intent(in), optional :: index_descriptor

    Return Value type(mp_type_descriptor_type)

  • private function mp_type_make_struct(subtypes, vector_descriptor, index_descriptor) result(type_descriptor)

    Arguments

    Type IntentOptional Attributes Name
    type(mp_type_descriptor_type), intent(in), DIMENSION(:) :: subtypes
    integer, intent(in), optional, DIMENSION(2) :: vector_descriptor
    type(mp_indexing_meta_type), intent(in), optional :: index_descriptor

    Return Value type(mp_type_descriptor_type)

public interface mp_file_write_at

  • private subroutine mp_file_write_at_i(fh, offset, msg)

    Arguments

    Type IntentOptional Attributes Name
    type(mp_file_type), intent(in) :: fh
    integer(kind=file_offset), intent(in) :: offset
    integer(kind=int_4), intent(in) :: msg
  • private subroutine mp_file_write_at_iv(fh, offset, msg, msglen)

    (parallel) Blocking individual file write using explicit offsets (serial) Unformatted stream write

    MPI-I/O mapping mpi_file_write_at

    STREAM-I/O mapping WRITE

    Arguments

    Type IntentOptional Attributes Name
    type(mp_file_type), intent(in) :: fh

    file handle (file storage unit)

    integer(kind=file_offset), intent(in) :: offset

    file offset (position)

    integer(kind=int_4), intent(in) :: msg(:)

    data to be written to the file

    integer, intent(in), optional :: msglen

    number of the elements of data

  • private subroutine mp_file_write_at_l(fh, offset, msg)

    Arguments

    Type IntentOptional Attributes Name
    type(mp_file_type), intent(in) :: fh
    integer(kind=file_offset), intent(in) :: offset
    integer(kind=int_8), intent(in) :: msg
  • private subroutine mp_file_write_at_lv(fh, offset, msg, msglen)

    (parallel) Blocking individual file write using explicit offsets (serial) Unformatted stream write

    MPI-I/O mapping mpi_file_write_at

    STREAM-I/O mapping WRITE

    Arguments

    Type IntentOptional Attributes Name
    type(mp_file_type), intent(in) :: fh

    file handle (file storage unit)

    integer(kind=file_offset), intent(in) :: offset

    file offset (position)

    integer(kind=int_8), intent(in) :: msg(:)

    data to be written to the file

    integer, intent(in), optional :: msglen

    number of the elements of data

  • private subroutine mp_file_write_at_d(fh, offset, msg)

    Arguments

    Type IntentOptional Attributes Name
    type(mp_file_type), intent(in) :: fh
    integer(kind=file_offset), intent(in) :: offset
    real(kind=real_8), intent(in) :: msg
  • private subroutine mp_file_write_at_dv(fh, offset, msg, msglen)

    (parallel) Blocking individual file write using explicit offsets (serial) Unformatted stream write

    MPI-I/O mapping mpi_file_write_at

    STREAM-I/O mapping WRITE

    Arguments

    Type IntentOptional Attributes Name
    type(mp_file_type), intent(in) :: fh

    file handle (file storage unit)

    integer(kind=file_offset), intent(in) :: offset

    file offset (position)

    real(kind=real_8), intent(in) :: msg(:)

    data to be written to the file

    integer, intent(in), optional :: msglen

    number of the elements of data

  • private subroutine mp_file_write_at_r(fh, offset, msg)

    Arguments

    Type IntentOptional Attributes Name
    type(mp_file_type), intent(in) :: fh
    integer(kind=file_offset), intent(in) :: offset
    real(kind=real_4), intent(in) :: msg
  • private subroutine mp_file_write_at_rv(fh, offset, msg, msglen)

    (parallel) Blocking individual file write using explicit offsets (serial) Unformatted stream write

    MPI-I/O mapping mpi_file_write_at

    STREAM-I/O mapping WRITE

    Arguments

    Type IntentOptional Attributes Name
    type(mp_file_type), intent(in) :: fh

    file handle (file storage unit)

    integer(kind=file_offset), intent(in) :: offset

    file offset (position)

    real(kind=real_4), intent(in) :: msg(:)

    data to be written to the file

    integer, intent(in), optional :: msglen

    number of the elements of data

  • private subroutine mp_file_write_at_z(fh, offset, msg)

    Arguments

    Type IntentOptional Attributes Name
    type(mp_file_type), intent(in) :: fh
    integer(kind=file_offset), intent(in) :: offset
    complex(kind=real_8), intent(in) :: msg
  • private subroutine mp_file_write_at_zv(fh, offset, msg, msglen)

    (parallel) Blocking individual file write using explicit offsets (serial) Unformatted stream write

    MPI-I/O mapping mpi_file_write_at

    STREAM-I/O mapping WRITE

    Arguments

    Type IntentOptional Attributes Name
    type(mp_file_type), intent(in) :: fh

    file handle (file storage unit)

    integer(kind=file_offset), intent(in) :: offset

    file offset (position)

    complex(kind=real_8), intent(in) :: msg(:)

    data to be written to the file

    integer, intent(in), optional :: msglen

    number of the elements of data

  • private subroutine mp_file_write_at_c(fh, offset, msg)

    Arguments

    Type IntentOptional Attributes Name
    type(mp_file_type), intent(in) :: fh
    integer(kind=file_offset), intent(in) :: offset
    complex(kind=real_4), intent(in) :: msg
  • private subroutine mp_file_write_at_cv(fh, offset, msg, msglen)

    (parallel) Blocking individual file write using explicit offsets (serial) Unformatted stream write

    MPI-I/O mapping mpi_file_write_at

    STREAM-I/O mapping WRITE

    Arguments

    Type IntentOptional Attributes Name
    type(mp_file_type), intent(in) :: fh

    file handle (file storage unit)

    integer(kind=file_offset), intent(in) :: offset

    file offset (position)

    complex(kind=real_4), intent(in) :: msg(:)

    data to be written to the file

    integer, intent(in), optional :: msglen

    number of the elements of data

  • private subroutine mp_file_write_at_ch(fh, offset, msg)

    Arguments

    Type IntentOptional Attributes Name
    type(mp_file_type), intent(in) :: fh
    integer(kind=file_offset), intent(in) :: offset
    character(len=*), intent(in) :: msg

public interface mp_file_write_at_all

  • private subroutine mp_file_write_at_all_i(fh, offset, msg)

    Arguments

    Type IntentOptional Attributes Name
    type(mp_file_type), intent(in) :: fh
    integer(kind=file_offset), intent(in) :: offset
    integer(kind=int_4), intent(in) :: msg
  • private subroutine mp_file_write_at_all_iv(fh, offset, msg, msglen)

    (parallel) Blocking collective file write using explicit offsets (serial) Unformatted stream write

    MPI-I/O mapping mpi_file_write_at_all

    STREAM-I/O mapping WRITE

    Arguments

    Type IntentOptional Attributes Name
    type(mp_file_type), intent(in) :: fh
    integer(kind=file_offset), intent(in) :: offset
    integer(kind=int_4), intent(in) :: msg(:)
    integer, intent(in), optional :: msglen
  • private subroutine mp_file_write_at_all_l(fh, offset, msg)

    Arguments

    Type IntentOptional Attributes Name
    type(mp_file_type), intent(in) :: fh
    integer(kind=file_offset), intent(in) :: offset
    integer(kind=int_8), intent(in) :: msg
  • private subroutine mp_file_write_at_all_lv(fh, offset, msg, msglen)

    (parallel) Blocking collective file write using explicit offsets (serial) Unformatted stream write

    MPI-I/O mapping mpi_file_write_at_all

    STREAM-I/O mapping WRITE

    Arguments

    Type IntentOptional Attributes Name
    type(mp_file_type), intent(in) :: fh
    integer(kind=file_offset), intent(in) :: offset
    integer(kind=int_8), intent(in) :: msg(:)
    integer, intent(in), optional :: msglen
  • private subroutine mp_file_write_at_all_d(fh, offset, msg)

    Arguments

    Type IntentOptional Attributes Name
    type(mp_file_type), intent(in) :: fh
    integer(kind=file_offset), intent(in) :: offset
    real(kind=real_8), intent(in) :: msg
  • private subroutine mp_file_write_at_all_dv(fh, offset, msg, msglen)

    (parallel) Blocking collective file write using explicit offsets (serial) Unformatted stream write

    MPI-I/O mapping mpi_file_write_at_all

    STREAM-I/O mapping WRITE

    Arguments

    Type IntentOptional Attributes Name
    type(mp_file_type), intent(in) :: fh
    integer(kind=file_offset), intent(in) :: offset
    real(kind=real_8), intent(in) :: msg(:)
    integer, intent(in), optional :: msglen
  • private subroutine mp_file_write_at_all_r(fh, offset, msg)

    Arguments

    Type IntentOptional Attributes Name
    type(mp_file_type), intent(in) :: fh
    integer(kind=file_offset), intent(in) :: offset
    real(kind=real_4), intent(in) :: msg
  • private subroutine mp_file_write_at_all_rv(fh, offset, msg, msglen)

    (parallel) Blocking collective file write using explicit offsets (serial) Unformatted stream write

    MPI-I/O mapping mpi_file_write_at_all

    STREAM-I/O mapping WRITE

    Arguments

    Type IntentOptional Attributes Name
    type(mp_file_type), intent(in) :: fh
    integer(kind=file_offset), intent(in) :: offset
    real(kind=real_4), intent(in) :: msg(:)
    integer, intent(in), optional :: msglen
  • private subroutine mp_file_write_at_all_z(fh, offset, msg)

    Arguments

    Type IntentOptional Attributes Name
    type(mp_file_type), intent(in) :: fh
    integer(kind=file_offset), intent(in) :: offset
    complex(kind=real_8), intent(in) :: msg
  • private subroutine mp_file_write_at_all_zv(fh, offset, msg, msglen)

    (parallel) Blocking collective file write using explicit offsets (serial) Unformatted stream write

    MPI-I/O mapping mpi_file_write_at_all

    STREAM-I/O mapping WRITE

    Arguments

    Type IntentOptional Attributes Name
    type(mp_file_type), intent(in) :: fh
    integer(kind=file_offset), intent(in) :: offset
    complex(kind=real_8), intent(in) :: msg(:)
    integer, intent(in), optional :: msglen
  • private subroutine mp_file_write_at_all_c(fh, offset, msg)

    Arguments

    Type IntentOptional Attributes Name