dbcsr_mpiwrap Module

Interface to the message passing library MPI



Contents

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

TypeVisibilityAttributesNameInitial
logical, public, parameter:: dbcsr_is_parallel =.FALSE.
integer, public, parameter:: mp_any_tag =-1
integer, public, parameter:: mp_any_source =-2
integer, public, parameter:: mp_comm_null =-3
integer, public, parameter:: mp_comm_self =-11
integer, public, parameter:: mp_comm_world =-12
integer, public, parameter:: mp_request_null =-4
integer, public, parameter:: mp_win_null =-5
integer, public, parameter:: mp_status_size =-6
integer, public, parameter:: mp_proc_null =-7
integer, public, parameter:: mp_max_library_version_string =1
integer, public, parameter:: mp_max_processor_name =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
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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer, intent(out), optional :: numtask
    integer, intent(out), optional :: taskid
    integer, intent(in) :: groupid

    mpi communicator

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

    Arguments

    TypeIntentOptionalAttributesName
    integer, intent(out) :: numtask
    integer, intent(out) :: dims(2)
    integer, intent(out) :: task_coor(2)
    integer, intent(in) :: groupid
  • private subroutine mp_environ_c2(comm, ndims, dims, task_coor, periods)

    Arguments

    TypeIntentOptionalAttributesName
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer, intent(inout), DIMENSION(:), CONTIGUOUS:: requests
  • private subroutine mp_waitall_2(requests)

    waits for completion of the given requests

    Arguments

    TypeIntentOptionalAttributesName
    integer, intent(inout), DIMENSION(:, :), CONTIGUOUS:: 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

    TypeIntentOptionalAttributesName
    integer, 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

    TypeIntentOptionalAttributesName
    integer, 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

    TypeIntentOptionalAttributesName
    integer, intent(inout), DIMENSION(:), CONTIGUOUS:: 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

    TypeIntentOptionalAttributesName
    integer, intent(inout), DIMENSION(:, :), CONTIGUOUS:: 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), intent(inout), CONTIGUOUS:: msg(:)

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

    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), intent(inout), CONTIGUOUS:: msg(:)

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

    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4) :: msg

    Datum to broadcast

    integer :: source

    Processes which broadcasts Message passing environment identifier

    integer :: gid

    Processes which broadcasts Message passing environment identifier

  • private subroutine mp_bcast_iv(msg, source, gid)

    Broadcasts rank-1 data to all processes

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), CONTIGUOUS:: msg(:)

    Data to broadcast

    integer :: source
    integer :: gid
  • private subroutine mp_bcast_im(msg, source, gid)

    Broadcasts rank-2 data to all processes

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), CONTIGUOUS:: msg(:,:)

    Data to broadcast

    integer :: source
    integer :: gid
  • private subroutine mp_bcast_i3(msg, source, gid)

    Broadcasts rank-3 data to all processes

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), CONTIGUOUS:: msg(:,:,:)

    Data to broadcast

    integer :: source
    integer :: gid
  • private subroutine mp_bcast_l(msg, source, gid)

    Broadcasts a datum to all processes.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8) :: msg

    Datum to broadcast

    integer :: source

    Processes which broadcasts Message passing environment identifier

    integer :: gid

    Processes which broadcasts Message passing environment identifier

  • private subroutine mp_bcast_lv(msg, source, gid)

    Broadcasts rank-1 data to all processes

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), CONTIGUOUS:: msg(:)

    Data to broadcast

    integer :: source
    integer :: gid
  • private subroutine mp_bcast_lm(msg, source, gid)

    Broadcasts rank-2 data to all processes

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), CONTIGUOUS:: msg(:,:)

    Data to broadcast

    integer :: source
    integer :: gid
  • private subroutine mp_bcast_l3(msg, source, gid)

    Broadcasts rank-3 data to all processes

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), CONTIGUOUS:: msg(:,:,:)

    Data to broadcast

    integer :: source
    integer :: gid
  • private subroutine mp_bcast_d(msg, source, gid)

    Broadcasts a datum to all processes.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8) :: msg

    Datum to broadcast

    integer :: source

    Processes which broadcasts Message passing environment identifier

    integer :: gid

    Processes which broadcasts Message passing environment identifier

  • private subroutine mp_bcast_dv(msg, source, gid)

    Broadcasts rank-1 data to all processes

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), CONTIGUOUS:: msg(:)

    Data to broadcast

    integer :: source
    integer :: gid
  • private subroutine mp_bcast_dm(msg, source, gid)

    Broadcasts rank-2 data to all processes

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), CONTIGUOUS:: msg(:,:)

    Data to broadcast

    integer :: source
    integer :: gid
  • private subroutine mp_bcast_d3(msg, source, gid)

    Broadcasts rank-3 data to all processes

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), CONTIGUOUS:: msg(:,:,:)

    Data to broadcast

    integer :: source
    integer :: gid
  • private subroutine mp_bcast_r(msg, source, gid)

    Broadcasts a datum to all processes.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4) :: msg

    Datum to broadcast

    integer :: source

    Processes which broadcasts Message passing environment identifier

    integer :: gid

    Processes which broadcasts Message passing environment identifier

  • private subroutine mp_bcast_rv(msg, source, gid)

    Broadcasts rank-1 data to all processes

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), CONTIGUOUS:: msg(:)

    Data to broadcast

    integer :: source
    integer :: gid
  • private subroutine mp_bcast_rm(msg, source, gid)

    Broadcasts rank-2 data to all processes

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), CONTIGUOUS:: msg(:,:)

    Data to broadcast

    integer :: source
    integer :: gid
  • private subroutine mp_bcast_r3(msg, source, gid)

    Broadcasts rank-3 data to all processes

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), CONTIGUOUS:: msg(:,:,:)

    Data to broadcast

    integer :: source
    integer :: gid
  • private subroutine mp_bcast_z(msg, source, gid)

    Broadcasts a datum to all processes.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8) :: msg

    Datum to broadcast

    integer :: source

    Processes which broadcasts Message passing environment identifier

    integer :: gid

    Processes which broadcasts Message passing environment identifier

  • private subroutine mp_bcast_zv(msg, source, gid)

    Broadcasts rank-1 data to all processes

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), CONTIGUOUS:: msg(:)

    Data to broadcast

    integer :: source
    integer :: gid
  • private subroutine mp_bcast_zm(msg, source, gid)

    Broadcasts rank-2 data to all processes

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), CONTIGUOUS:: msg(:,:)

    Data to broadcast

    integer :: source
    integer :: gid
  • private subroutine mp_bcast_z3(msg, source, gid)

    Broadcasts rank-3 data to all processes

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), CONTIGUOUS:: msg(:,:,:)

    Data to broadcast

    integer :: source
    integer :: gid
  • private subroutine mp_bcast_c(msg, source, gid)

    Broadcasts a datum to all processes.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4) :: msg

    Datum to broadcast

    integer :: source

    Processes which broadcasts Message passing environment identifier

    integer :: gid

    Processes which broadcasts Message passing environment identifier

  • private subroutine mp_bcast_cv(msg, source, gid)

    Broadcasts rank-1 data to all processes

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), CONTIGUOUS:: msg(:)

    Data to broadcast

    integer :: source
    integer :: gid
  • private subroutine mp_bcast_cm(msg, source, gid)

    Broadcasts rank-2 data to all processes

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), CONTIGUOUS:: msg(:,:)

    Data to broadcast

    integer :: source
    integer :: gid
  • private subroutine mp_bcast_c3(msg, source, gid)

    Broadcasts rank-3 data to all processes

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), CONTIGUOUS:: msg(:,:,:)

    Data to broadcast

    integer :: source
    integer :: gid
  • private subroutine mp_bcast_b(msg, source, gid)

    Arguments

    TypeIntentOptionalAttributesName
    logical :: msg
    integer :: source
    integer :: gid
  • private subroutine mp_bcast_bv(msg, source, gid)

    Arguments

    TypeIntentOptionalAttributesName
    logical, CONTIGUOUS:: msg(:)
    integer :: source
    integer :: gid
  • private subroutine mp_bcast_av(msg, source, gid)

    Arguments

    TypeIntentOptionalAttributesName
    character(len=*) :: msg
    integer :: source
    integer :: gid
  • private subroutine mp_bcast_am(msg, source, gid)

    Arguments

    TypeIntentOptionalAttributesName
    character(len=*) :: msg(:)
    integer :: source
    integer :: gid

public interface mp_ibcast

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

    Broadcasts a datum to all processes.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4) :: msg

    Datum to broadcast

    integer :: source

    Processes which broadcasts Message passing environment identifier

    integer :: gid

    Processes which broadcasts Message passing environment identifier

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

    Broadcasts rank-1 data to all processes

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), CONTIGUOUS:: msg(:)

    Data to broadcast

    integer :: source
    integer :: gid
    integer, intent(inout) :: request
  • private subroutine mp_ibcast_l(msg, source, gid, request)

    Broadcasts a datum to all processes.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8) :: msg

    Datum to broadcast

    integer :: source

    Processes which broadcasts Message passing environment identifier

    integer :: gid

    Processes which broadcasts Message passing environment identifier

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

    Broadcasts rank-1 data to all processes

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), CONTIGUOUS:: msg(:)

    Data to broadcast

    integer :: source
    integer :: gid
    integer, intent(inout) :: request
  • private subroutine mp_ibcast_d(msg, source, gid, request)

    Broadcasts a datum to all processes.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8) :: msg

    Datum to broadcast

    integer :: source

    Processes which broadcasts Message passing environment identifier

    integer :: gid

    Processes which broadcasts Message passing environment identifier

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

    Broadcasts rank-1 data to all processes

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), CONTIGUOUS:: msg(:)

    Data to broadcast

    integer :: source
    integer :: gid
    integer, intent(inout) :: request
  • private subroutine mp_ibcast_r(msg, source, gid, request)

    Broadcasts a datum to all processes.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4) :: msg

    Datum to broadcast

    integer :: source

    Processes which broadcasts Message passing environment identifier

    integer :: gid

    Processes which broadcasts Message passing environment identifier

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

    Broadcasts rank-1 data to all processes

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), CONTIGUOUS:: msg(:)

    Data to broadcast

    integer :: source
    integer :: gid
    integer, intent(inout) :: request
  • private subroutine mp_ibcast_z(msg, source, gid, request)

    Broadcasts a datum to all processes.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8) :: msg

    Datum to broadcast

    integer :: source

    Processes which broadcasts Message passing environment identifier

    integer :: gid

    Processes which broadcasts Message passing environment identifier

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

    Broadcasts rank-1 data to all processes

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), CONTIGUOUS:: msg(:)

    Data to broadcast

    integer :: source
    integer :: gid
    integer, intent(inout) :: request
  • private subroutine mp_ibcast_c(msg, source, gid, request)

    Broadcasts a datum to all processes.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4) :: msg

    Datum to broadcast

    integer :: source

    Processes which broadcasts Message passing environment identifier

    integer :: gid

    Processes which broadcasts Message passing environment identifier

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

    Broadcasts rank-1 data to all processes

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), CONTIGUOUS:: msg(:)

    Data to broadcast

    integer :: source
    integer :: gid
    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), intent(inout) :: msg

    Datum to sum (input) and result (output)

    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), intent(inout), CONTIGUOUS:: msg(:)

    Vector to sum and result

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), intent(inout), CONTIGUOUS:: msg(:,:)

    Matrix to sum and result

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), intent(inout), CONTIGUOUS:: msg(:,:,:)

    Array to sum and result

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), intent(inout), CONTIGUOUS:: msg(:,:,:,:)

    Array to sum and result

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), intent(inout) :: msg

    Datum to sum (input) and result (output)

    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), intent(inout), CONTIGUOUS:: msg(:)

    Vector to sum and result

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), intent(inout), CONTIGUOUS:: msg(:,:)

    Matrix to sum and result

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), intent(inout), CONTIGUOUS:: msg(:,:,:)

    Array to sum and result

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), intent(inout), CONTIGUOUS:: msg(:,:,:,:)

    Array to sum and result

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), intent(inout) :: msg

    Datum to sum (input) and result (output)

    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), intent(inout), CONTIGUOUS:: msg(:)

    Vector to sum and result

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), intent(inout), CONTIGUOUS:: msg(:,:)

    Matrix to sum and result

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), intent(inout), CONTIGUOUS:: msg(:,:,:)

    Array to sum and result

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), intent(inout), CONTIGUOUS:: msg(:,:,:,:)

    Array to sum and result

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), intent(inout) :: msg

    Datum to sum (input) and result (output)

    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), intent(inout), CONTIGUOUS:: msg(:)

    Vector to sum and result

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), intent(inout), CONTIGUOUS:: msg(:,:)

    Matrix to sum and result

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), intent(inout), CONTIGUOUS:: msg(:,:,:)

    Array to sum and result

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), intent(inout), CONTIGUOUS:: msg(:,:,:,:)

    Array to sum and result

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), intent(inout) :: msg

    Datum to sum (input) and result (output)

    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), intent(inout), CONTIGUOUS:: msg(:)

    Vector to sum and result

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), intent(inout), CONTIGUOUS:: msg(:,:)

    Matrix to sum and result

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), intent(inout), CONTIGUOUS:: msg(:,:,:)

    Array to sum and result

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), intent(inout), CONTIGUOUS:: msg(:,:,:,:)

    Array to sum and result

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), intent(inout) :: msg

    Datum to sum (input) and result (output)

    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), intent(inout), CONTIGUOUS:: msg(:)

    Vector to sum and result

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), intent(inout), CONTIGUOUS:: msg(:,:)

    Matrix to sum and result

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), intent(inout), CONTIGUOUS:: msg(:,:,:)

    Array to sum and result

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), intent(inout), CONTIGUOUS:: msg(:,:,:,:)

    Array to sum and result

    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), intent(inout), CONTIGUOUS:: msg(:)

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

    integer, intent(in) :: root

    Message passing environment identifier

    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), intent(inout), CONTIGUOUS:: msg(:,:)

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

    integer, intent(in) :: root
    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), intent(inout), CONTIGUOUS:: msg(:)

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

    integer, intent(in) :: root

    Message passing environment identifier

    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), intent(inout), CONTIGUOUS:: msg(:,:)

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

    integer, intent(in) :: root
    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), intent(inout), CONTIGUOUS:: msg(:)

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

    integer, intent(in) :: root

    Message passing environment identifier

    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), intent(inout), CONTIGUOUS:: msg(:,:)

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

    integer, intent(in) :: root
    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), intent(inout), CONTIGUOUS:: msg(:)

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

    integer, intent(in) :: root

    Message passing environment identifier

    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), intent(inout), CONTIGUOUS:: msg(:,:)

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

    integer, intent(in) :: root
    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), intent(inout), CONTIGUOUS:: msg(:)

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

    integer, intent(in) :: root

    Message passing environment identifier

    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), intent(inout), CONTIGUOUS:: msg(:,:)

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

    integer, intent(in) :: root
    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), intent(inout), CONTIGUOUS:: msg(:)

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

    integer, intent(in) :: root

    Message passing environment identifier

    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), intent(inout), CONTIGUOUS:: msg(:,:)

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

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

    Logical OR reduction

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    logical, intent(inout) :: msg

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

    integer, intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_sum_bv(msg, gid)

    Logical OR reduction

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    logical, intent(inout), DIMENSION(:), CONTIGUOUS:: msg

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

    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), intent(inout), CONTIGUOUS:: msg(:)

    Vector to sum and result

    integer, intent(in) :: gid
    integer, intent(inout) :: request
  • private subroutine mp_isum_lv(msg, gid, request)

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), intent(inout), CONTIGUOUS:: msg(:)

    Vector to sum and result

    integer, intent(in) :: gid
    integer, intent(inout) :: request
  • private subroutine mp_isum_dv(msg, gid, request)

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), intent(inout), CONTIGUOUS:: msg(:)

    Vector to sum and result

    integer, intent(in) :: gid
    integer, intent(inout) :: request
  • private subroutine mp_isum_rv(msg, gid, request)

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), intent(inout), CONTIGUOUS:: msg(:)

    Vector to sum and result

    integer, intent(in) :: gid
    integer, intent(inout) :: request
  • private subroutine mp_isum_zv(msg, gid, request)

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), intent(inout), CONTIGUOUS:: msg(:)

    Vector to sum and result

    integer, intent(in) :: gid
    integer, intent(inout) :: request
  • private subroutine mp_isum_cv(msg, gid, request)

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), intent(inout), CONTIGUOUS:: msg(:)

    Vector to sum and result

    integer, intent(in) :: gid
    integer, intent(inout) :: request
  • private subroutine mp_isum_bv(msg, gid, request)

    Logical OR reduction

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    logical, intent(inout), DIMENSION(:), CONTIGUOUS:: msg

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

    integer, intent(in) :: gid

    Message passing environment identifier

    integer, 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

    TypeIntentOptionalAttributesName
    integer(kind=int_4), intent(in), CONTIGUOUS:: msg(:,:)

    Matrix to sum (input)

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

    Matrix containing result (output)

    integer, 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

    TypeIntentOptionalAttributesName
    integer(kind=int_8), intent(in), CONTIGUOUS:: msg(:,:)

    Matrix to sum (input)

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

    Matrix containing result (output)

    integer, 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

    TypeIntentOptionalAttributesName
    real(kind=real_8), intent(in), CONTIGUOUS:: msg(:,:)

    Matrix to sum (input)

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

    Matrix containing result (output)

    integer, 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

    TypeIntentOptionalAttributesName
    real(kind=real_4), intent(in), CONTIGUOUS:: msg(:,:)

    Matrix to sum (input)

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

    Matrix containing result (output)

    integer, 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

    TypeIntentOptionalAttributesName
    complex(kind=real_8), intent(in), CONTIGUOUS:: msg(:,:)

    Matrix to sum (input)

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

    Matrix containing result (output)

    integer, 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

    TypeIntentOptionalAttributesName
    complex(kind=real_4), intent(in), CONTIGUOUS:: msg(:,:)

    Matrix to sum (input)

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

    Matrix containing result (output)

    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), intent(inout) :: msg

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

    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), intent(inout), CONTIGUOUS:: msg(:)

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

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), intent(inout) :: msg

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

    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), intent(inout), CONTIGUOUS:: msg(:)

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

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), intent(inout) :: msg

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

    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), intent(inout), CONTIGUOUS:: msg(:)

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

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), intent(inout) :: msg

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

    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), intent(inout), CONTIGUOUS:: msg(:)

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

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), intent(inout) :: msg

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

    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), intent(inout), CONTIGUOUS:: msg(:)

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

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), intent(inout) :: msg

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

    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), intent(inout), CONTIGUOUS:: msg(:)

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

    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), intent(inout) :: msg

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

    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), intent(inout), CONTIGUOUS:: msg(:)

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

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), intent(inout) :: msg

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

    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), intent(inout), CONTIGUOUS:: msg(:)

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

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), intent(inout) :: msg

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

    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), intent(inout), CONTIGUOUS:: msg(:)

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

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), intent(inout) :: msg

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

    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), intent(inout), CONTIGUOUS:: msg(:)

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

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), intent(inout) :: msg

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

    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), intent(inout), CONTIGUOUS:: msg(:)

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

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), intent(inout) :: msg

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

    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), intent(inout), CONTIGUOUS:: msg(:)

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

    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), intent(inout) :: msg

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

    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), intent(inout) :: msg

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

    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), intent(inout) :: msg

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

    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), intent(inout) :: msg

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

    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), intent(inout) :: msg

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

    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), intent(inout) :: msg

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

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: gid

    Process which gathers the data Message passing environment identifier

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

    Gathers data from all processes to one

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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
    integer, intent(in) :: gid
  • private subroutine mp_gather_iv(msg, msg_gather, root, gid)

    Gathers data from all processes to one

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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
    integer, intent(in) :: gid
  • private subroutine mp_gather_l(msg, msg_gather, root, gid)

    Gathers a datum from all processes to one

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: gid

    Process which gathers the data Message passing environment identifier

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

    Gathers data from all processes to one

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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
    integer, intent(in) :: gid
  • private subroutine mp_gather_lv(msg, msg_gather, root, gid)

    Gathers data from all processes to one

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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
    integer, intent(in) :: gid
  • private subroutine mp_gather_d(msg, msg_gather, root, gid)

    Gathers a datum from all processes to one

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: gid

    Process which gathers the data Message passing environment identifier

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

    Gathers data from all processes to one

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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
    integer, intent(in) :: gid
  • private subroutine mp_gather_dv(msg, msg_gather, root, gid)

    Gathers data from all processes to one

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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
    integer, intent(in) :: gid
  • private subroutine mp_gather_r(msg, msg_gather, root, gid)

    Gathers a datum from all processes to one

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: gid

    Process which gathers the data Message passing environment identifier

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

    Gathers data from all processes to one

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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
    integer, intent(in) :: gid
  • private subroutine mp_gather_rv(msg, msg_gather, root, gid)

    Gathers data from all processes to one

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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
    integer, intent(in) :: gid
  • private subroutine mp_gather_z(msg, msg_gather, root, gid)

    Gathers a datum from all processes to one

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: gid

    Process which gathers the data Message passing environment identifier

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

    Gathers data from all processes to one

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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
    integer, intent(in) :: gid
  • private subroutine mp_gather_zv(msg, msg_gather, root, gid)

    Gathers data from all processes to one

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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
    integer, intent(in) :: gid
  • private subroutine mp_gather_c(msg, msg_gather, root, gid)

    Gathers a datum from all processes to one

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: gid

    Process which gathers the data Message passing environment identifier

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

    Gathers data from all processes to one

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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
    integer, intent(in) :: gid
  • private subroutine mp_gather_cv(msg, msg_gather, root, gid)

    Gathers data from all processes to one

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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
    integer, 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.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: comm

    Process which gathers the data Message passing environment identifier

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

    Gathers data from all processes to one.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: comm

    Process which gathers the data Message passing environment identifier

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

    Gathers data from all processes to one.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: comm

    Process which gathers the data Message passing environment identifier

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

    Gathers data from all processes to one.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: comm

    Process which gathers the data Message passing environment identifier

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

    Gathers data from all processes to one.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: comm

    Process which gathers the data Message passing environment identifier

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

    Gathers data from all processes to one.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: comm

    Process which gathers the data 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), intent(in) :: msgout

    Datum to send

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

    Received data

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), intent(in) :: msgout

    Datum to send

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

    Received data

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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) :: 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), intent(in), CONTIGUOUS:: msgout(:,:)

    Rank-2 data to send

    integer(kind=int_4), intent(out), CONTIGUOUS:: msgin(:,:,:)
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), intent(in), CONTIGUOUS:: msgout(:,:,:)

    Rank-3 data to send

    integer(kind=int_4), intent(out), CONTIGUOUS:: msgin(:,:,:,:)
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), intent(in), CONTIGUOUS:: msgout(:,:)

    Rank-2 data to send

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), intent(in) :: msgout

    Datum to send

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

    Received data

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), intent(in) :: msgout

    Datum to send

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

    Received data

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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) :: 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), intent(in), CONTIGUOUS:: msgout(:,:)

    Rank-2 data to send

    integer(kind=int_8), intent(out), CONTIGUOUS:: msgin(:,:,:)
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), intent(in), CONTIGUOUS:: msgout(:,:,:)

    Rank-3 data to send

    integer(kind=int_8), intent(out), CONTIGUOUS:: msgin(:,:,:,:)
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), intent(in), CONTIGUOUS:: msgout(:,:)

    Rank-2 data to send

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), intent(in) :: msgout

    Datum to send

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

    Received data

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), intent(in) :: msgout

    Datum to send

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

    Received data

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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) :: 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), intent(in), CONTIGUOUS:: msgout(:,:)

    Rank-2 data to send

    real(kind=real_4), intent(out), CONTIGUOUS:: msgin(:,:,:)
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), intent(in), CONTIGUOUS:: msgout(:,:,:)

    Rank-3 data to send

    real(kind=real_4), intent(out), CONTIGUOUS:: msgin(:,:,:,:)
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), intent(in), CONTIGUOUS:: msgout(:,:)

    Rank-2 data to send

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), intent(in) :: msgout

    Datum to send

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

    Received data

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), intent(in) :: msgout

    Datum to send

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

    Received data

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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) :: 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), intent(in), CONTIGUOUS:: msgout(:,:)

    Rank-2 data to send

    real(kind=real_8), intent(out), CONTIGUOUS:: msgin(:,:,:)
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), intent(in), CONTIGUOUS:: msgout(:,:,:)

    Rank-3 data to send

    real(kind=real_8), intent(out), CONTIGUOUS:: msgin(:,:,:,:)
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), intent(in), CONTIGUOUS:: msgout(:,:)

    Rank-2 data to send

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), intent(in) :: msgout

    Datum to send

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

    Received data

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), intent(in) :: msgout

    Datum to send

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

    Received data

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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) :: 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), intent(in), CONTIGUOUS:: msgout(:,:)

    Rank-2 data to send

    complex(kind=real_4), intent(out), CONTIGUOUS:: msgin(:,:,:)
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), intent(in), CONTIGUOUS:: msgout(:,:,:)

    Rank-3 data to send

    complex(kind=real_4), intent(out), CONTIGUOUS:: msgin(:,:,:,:)
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), intent(in), CONTIGUOUS:: msgout(:,:)

    Rank-2 data to send

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

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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), intent(in) :: msgout

    Datum to send

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

    Received data

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), intent(in) :: msgout

    Datum to send

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

    Received data

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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) :: 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), intent(in), CONTIGUOUS:: msgout(:,:)

    Rank-2 data to send

    complex(kind=real_8), intent(out), CONTIGUOUS:: msgin(:,:,:)
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), intent(in), CONTIGUOUS:: msgout(:,:,:)

    Rank-3 data to send

    complex(kind=real_8), intent(out), CONTIGUOUS:: msgin(:,:,:,:)
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), intent(in), CONTIGUOUS:: msgout(:,:)

    Rank-2 data to send

    complex(kind=real_8), intent(out), CONTIGUOUS:: msgin(:,:)
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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(:)
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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(:)
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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(:)
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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(:)
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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(:)
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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(:)
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), intent(in) :: msgout

    Datum to send

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

    Received data

    integer, intent(in) :: gid

    Message passing environment identifier

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), intent(in) :: msgout

    Datum to send

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

    Received data

    integer, intent(in) :: gid

    Message passing environment identifier

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), intent(in) :: msgout

    Datum to send

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

    Received data

    integer, intent(in) :: gid

    Message passing environment identifier

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), intent(in) :: msgout

    Datum to send

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

    Received data

    integer, intent(in) :: gid

    Message passing environment identifier

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), intent(in) :: msgout

    Datum to send

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

    Received data

    integer, intent(in) :: gid

    Message passing environment identifier

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), intent(in) :: msgout

    Datum to send

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

    Received data

    integer, intent(in) :: gid

    Message passing environment identifier

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), intent(in), CONTIGUOUS:: msgout(:)

    Rank-1 data to send

    integer(kind=int_4), intent(out), CONTIGUOUS:: msgin(:)
    integer, intent(in) :: gid
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), intent(in), CONTIGUOUS:: msgout(:)

    Rank-1 data to send

    integer(kind=int_8), intent(out), CONTIGUOUS:: msgin(:)
    integer, intent(in) :: gid
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), intent(in), CONTIGUOUS:: msgout(:)

    Rank-1 data to send

    real(kind=real_4), intent(out), CONTIGUOUS:: msgin(:)
    integer, intent(in) :: gid
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), intent(in), CONTIGUOUS:: msgout(:)

    Rank-1 data to send

    real(kind=real_8), intent(out), CONTIGUOUS:: msgin(:)
    integer, intent(in) :: gid
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), intent(in), CONTIGUOUS:: msgout(:)

    Rank-1 data to send

    complex(kind=real_4), intent(out), CONTIGUOUS:: msgin(:)
    integer, intent(in) :: gid
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), intent(in), CONTIGUOUS:: msgout(:)

    Rank-1 data to send

    complex(kind=real_8), intent(out), CONTIGUOUS:: msgin(:)
    integer, intent(in) :: gid
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), intent(in), CONTIGUOUS:: msgout(:)

    Rank-2 data to send

    integer(kind=int_4), intent(out), CONTIGUOUS:: msgin(:,:,:)
    integer, intent(in) :: gid
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), intent(in), CONTIGUOUS:: msgout(:)

    Rank-2 data to send

    integer(kind=int_8), intent(out), CONTIGUOUS:: msgin(:,:,:)
    integer, intent(in) :: gid
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), intent(in), CONTIGUOUS:: msgout(:)

    Rank-2 data to send

    real(kind=real_4), intent(out), CONTIGUOUS:: msgin(:,:,:)
    integer, intent(in) :: gid
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), intent(in), CONTIGUOUS:: msgout(:)

    Rank-2 data to send

    real(kind=real_8), intent(out), CONTIGUOUS:: msgin(:,:,:)
    integer, intent(in) :: gid
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), intent(in), CONTIGUOUS:: msgout(:)

    Rank-2 data to send

    complex(kind=real_4), intent(out), CONTIGUOUS:: msgin(:,:,:)
    integer, intent(in) :: gid
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), intent(in), CONTIGUOUS:: msgout(:)

    Rank-2 data to send

    complex(kind=real_8), intent(out), CONTIGUOUS:: msgin(:,:,:)
    integer, intent(in) :: gid
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), intent(in), CONTIGUOUS:: msgout(:,:)

    Rank-2 data to send

    integer(kind=int_4), intent(out), CONTIGUOUS:: msgin(:,:)
    integer, intent(in) :: gid
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), intent(in), CONTIGUOUS:: msgout(:,:)

    Rank-2 data to send

    integer(kind=int_8), intent(out), CONTIGUOUS:: msgin(:,:)
    integer, intent(in) :: gid
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), intent(in), CONTIGUOUS:: msgout(:,:)

    Rank-2 data to send

    real(kind=real_4), intent(out), CONTIGUOUS:: msgin(:,:)
    integer, intent(in) :: gid
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), intent(in), CONTIGUOUS:: msgout(:,:)

    Rank-2 data to send

    real(kind=real_8), intent(out), CONTIGUOUS:: msgin(:,:)
    integer, intent(in) :: gid
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), intent(in), CONTIGUOUS:: msgout(:,:)

    Rank-2 data to send

    complex(kind=real_4), intent(out), CONTIGUOUS:: msgin(:,:)
    integer, intent(in) :: gid
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), intent(in), CONTIGUOUS:: msgout(:,:)

    Rank-2 data to send

    complex(kind=real_8), intent(out), CONTIGUOUS:: msgin(:,:)
    integer, intent(in) :: gid
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), intent(in), CONTIGUOUS:: msgout(:,:)

    Rank-2 data to send

    integer(kind=int_4), intent(out), CONTIGUOUS:: msgin(:,:,:,:)
    integer, intent(in) :: gid
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), intent(in), CONTIGUOUS:: msgout(:,:)

    Rank-2 data to send

    integer(kind=int_8), intent(out), CONTIGUOUS:: msgin(:,:,:,:)
    integer, intent(in) :: gid
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), intent(in), CONTIGUOUS:: msgout(:,:)

    Rank-2 data to send

    real(kind=real_4), intent(out), CONTIGUOUS:: msgin(:,:,:,:)
    integer, intent(in) :: gid
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), intent(in), CONTIGUOUS:: msgout(:,:)

    Rank-2 data to send

    real(kind=real_8), intent(out), CONTIGUOUS:: msgin(:,:,:,:)
    integer, intent(in) :: gid
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), intent(in), CONTIGUOUS:: msgout(:,:)

    Rank-2 data to send

    complex(kind=real_4), intent(out), CONTIGUOUS:: msgin(:,:,:,:)
    integer, intent(in) :: gid
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), intent(in), CONTIGUOUS:: msgout(:,:)

    Rank-2 data to send

    complex(kind=real_8), intent(out), CONTIGUOUS:: msgin(:,:,:,:)
    integer, intent(in) :: gid
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), intent(in), CONTIGUOUS:: msgout(:,:,:)

    Rank-3 data to send

    integer(kind=int_4), intent(out), CONTIGUOUS:: msgin(:,:,:)
    integer, intent(in) :: gid
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), intent(in), CONTIGUOUS:: msgout(:,:,:)

    Rank-3 data to send

    integer(kind=int_8), intent(out), CONTIGUOUS:: msgin(:,:,:)
    integer, intent(in) :: gid
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), intent(in), CONTIGUOUS:: msgout(:,:,:)

    Rank-3 data to send

    real(kind=real_4), intent(out), CONTIGUOUS:: msgin(:,:,:)
    integer, intent(in) :: gid
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), intent(in), CONTIGUOUS:: msgout(:,:,:)

    Rank-3 data to send

    real(kind=real_8), intent(out), CONTIGUOUS:: msgin(:,:,:)
    integer, intent(in) :: gid
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), intent(in), CONTIGUOUS:: msgout(:,:,:)

    Rank-3 data to send

    complex(kind=real_4), intent(out), CONTIGUOUS:: msgin(:,:,:)
    integer, intent(in) :: gid
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), intent(in), CONTIGUOUS:: msgout(:,:,:)

    Rank-3 data to send

    complex(kind=real_8), intent(out), CONTIGUOUS:: msgin(:,:,:)
    integer, intent(in) :: gid
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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(:)
    integer, intent(in) :: gid

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

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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(:,:)
    integer, intent(in) :: gid

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

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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(:)
    integer, intent(in) :: gid

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

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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(:,:)
    integer, intent(in) :: gid

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

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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(:)
    integer, intent(in) :: gid

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

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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(:,:)
    integer, intent(in) :: gid

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

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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(:)
    integer, intent(in) :: gid

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

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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(:,:)
    integer, intent(in) :: gid

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

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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(:)
    integer, intent(in) :: gid

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

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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(:,:)
    integer, intent(in) :: gid

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

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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(:)
    integer, intent(in) :: gid

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

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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(:,:)
    integer, intent(in) :: gid

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

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: gid

    Process which scatters data Message passing environment identifier

    integer, intent(inout) :: request
  • private subroutine mp_iscatter_l(msg_scatter, msg, root, gid, request)

    Scatters data from one processes to all others

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: gid

    Process which scatters data Message passing environment identifier

    integer, intent(inout) :: request
  • private subroutine mp_iscatter_r(msg_scatter, msg, root, gid, request)

    Scatters data from one processes to all others

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: gid

    Process which scatters data Message passing environment identifier

    integer, intent(inout) :: request
  • private subroutine mp_iscatter_d(msg_scatter, msg, root, gid, request)

    Scatters data from one processes to all others

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: gid

    Process which scatters data Message passing environment identifier

    integer, intent(inout) :: request
  • private subroutine mp_iscatter_c(msg_scatter, msg, root, gid, request)

    Scatters data from one processes to all others

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: gid

    Process which scatters data Message passing environment identifier

    integer, intent(inout) :: request
  • private subroutine mp_iscatter_z(msg_scatter, msg, root, gid, request)

    Scatters data from one processes to all others

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: gid

    Process which scatters data Message passing environment identifier

    integer, intent(inout) :: request
  • private subroutine mp_iscatter_iv2(msg_scatter, msg, root, gid, request)

    Scatters data from one processes to all others

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: gid

    Process which scatters data Message passing environment identifier

    integer, intent(inout) :: request
  • private subroutine mp_iscatter_lv2(msg_scatter, msg, root, gid, request)

    Scatters data from one processes to all others

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: gid

    Process which scatters data Message passing environment identifier

    integer, intent(inout) :: request
  • private subroutine mp_iscatter_rv2(msg_scatter, msg, root, gid, request)

    Scatters data from one processes to all others

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: gid

    Process which scatters data Message passing environment identifier

    integer, intent(inout) :: request
  • private subroutine mp_iscatter_dv2(msg_scatter, msg, root, gid, request)

    Scatters data from one processes to all others

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: gid

    Process which scatters data Message passing environment identifier

    integer, intent(inout) :: request
  • private subroutine mp_iscatter_cv2(msg_scatter, msg, root, gid, request)

    Scatters data from one processes to all others

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: gid

    Process which scatters data Message passing environment identifier

    integer, intent(inout) :: request
  • private subroutine mp_iscatter_zv2(msg_scatter, msg, root, gid, request)

    Scatters data from one processes to all others

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: gid

    Process which scatters data Message passing environment identifier

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: root

    Process which scatters data Message passing environment identifier

    integer, intent(in) :: gid

    Process which scatters data Message passing environment identifier

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: root

    Process which scatters data Message passing environment identifier

    integer, intent(in) :: gid

    Process which scatters data Message passing environment identifier

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: root

    Process which scatters data Message passing environment identifier

    integer, intent(in) :: gid

    Process which scatters data Message passing environment identifier

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: root

    Process which scatters data Message passing environment identifier

    integer, intent(in) :: gid

    Process which scatters data Message passing environment identifier

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: root

    Process which scatters data Message passing environment identifier

    integer, intent(in) :: gid

    Process which scatters data Message passing environment identifier

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: root

    Process which scatters data Message passing environment identifier

    integer, intent(in) :: gid

    Process which scatters data Message passing environment identifier

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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) Message passing environment identifier

    integer, intent(in) :: group

    number of elements to send/receive (product of the extents of the first two dimensions) Message passing environment identifier

  • private subroutine mp_alltoall_i22(sb, rb, count, group)

    All-to-all data exchange, rank-2 arrays, equal sizes

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), intent(in), CONTIGUOUS:: sb(:,:)
    integer(kind=int_4), intent(out), CONTIGUOUS:: rb(:,:)
    integer, intent(in) :: count
    integer, intent(in) :: group
  • private subroutine mp_alltoall_i44(sb, rb, count, group)

    All-to-all data exchange, rank 4 data, equal sizes

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), intent(in), DIMENSION(:, :, :, :), CONTIGUOUS:: sb
    integer(kind=int_4), intent(out), DIMENSION(:, :, :, :), CONTIGUOUS:: rb
    integer, intent(in) :: count
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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) Message passing environment identifier

    integer, intent(in) :: group

    number of elements to send/receive (product of the extents of the first two dimensions) Message passing environment identifier

  • private subroutine mp_alltoall_l22(sb, rb, count, group)

    All-to-all data exchange, rank-2 arrays, equal sizes

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), intent(in), CONTIGUOUS:: sb(:,:)
    integer(kind=int_8), intent(out), CONTIGUOUS:: rb(:,:)
    integer, intent(in) :: count
    integer, intent(in) :: group
  • private subroutine mp_alltoall_l44(sb, rb, count, group)

    All-to-all data exchange, rank 4 data, equal sizes

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), intent(in), DIMENSION(:, :, :, :), CONTIGUOUS:: sb
    integer(kind=int_8), intent(out), DIMENSION(:, :, :, :), CONTIGUOUS:: rb
    integer, intent(in) :: count
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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) Message passing environment identifier

    integer, intent(in) :: group

    number of elements to send/receive (product of the extents of the first two dimensions) Message passing environment identifier

  • private subroutine mp_alltoall_d22(sb, rb, count, group)

    All-to-all data exchange, rank-2 arrays, equal sizes

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), intent(in), CONTIGUOUS:: sb(:,:)
    real(kind=real_8), intent(out), CONTIGUOUS:: rb(:,:)
    integer, intent(in) :: count
    integer, intent(in) :: group
  • private subroutine mp_alltoall_d44(sb, rb, count, group)

    All-to-all data exchange, rank 4 data, equal sizes

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), intent(in), DIMENSION(:, :, :, :), CONTIGUOUS:: sb
    real(kind=real_8), intent(out), DIMENSION(:, :, :, :), CONTIGUOUS:: rb
    integer, intent(in) :: count
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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) Message passing environment identifier

    integer, intent(in) :: group

    number of elements to send/receive (product of the extents of the first two dimensions) Message passing environment identifier

  • private subroutine mp_alltoall_r22(sb, rb, count, group)

    All-to-all data exchange, rank-2 arrays, equal sizes

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), intent(in), CONTIGUOUS:: sb(:,:)
    real(kind=real_4), intent(out), CONTIGUOUS:: rb(:,:)
    integer, intent(in) :: count
    integer, intent(in) :: group
  • private subroutine mp_alltoall_r44(sb, rb, count, group)

    All-to-all data exchange, rank 4 data, equal sizes

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), intent(in), DIMENSION(:, :, :, :), CONTIGUOUS:: sb
    real(kind=real_4), intent(out), DIMENSION(:, :, :, :), CONTIGUOUS:: rb
    integer, intent(in) :: count
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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) Message passing environment identifier

    integer, intent(in) :: group

    number of elements to send/receive (product of the extents of the first two dimensions) Message passing environment identifier

  • private subroutine mp_alltoall_z22(sb, rb, count, group)

    All-to-all data exchange, rank-2 arrays, equal sizes

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), intent(in), CONTIGUOUS:: sb(:,:)
    complex(kind=real_8), intent(out), CONTIGUOUS:: rb(:,:)
    integer, intent(in) :: count
    integer, intent(in) :: group
  • private subroutine mp_alltoall_z44(sb, rb, count, group)

    All-to-all data exchange, rank 4 data, equal sizes

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), intent(in), DIMENSION(:, :, :, :), CONTIGUOUS:: sb
    complex(kind=real_8), intent(out), DIMENSION(:, :, :, :), CONTIGUOUS:: rb
    integer, intent(in) :: count
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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) Message passing environment identifier

    integer, intent(in) :: group

    number of elements to send/receive (product of the extents of the first two dimensions) Message passing environment identifier

  • private subroutine mp_alltoall_c22(sb, rb, count, group)

    All-to-all data exchange, rank-2 arrays, equal sizes

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), intent(in), CONTIGUOUS:: sb(:,:)
    complex(kind=real_4), intent(out), CONTIGUOUS:: rb(:,:)
    integer, intent(in) :: count
    integer, intent(in) :: group
  • private subroutine mp_alltoall_c44(sb, rb, count, group)

    All-to-all data exchange, rank 4 data, equal sizes

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), intent(in), DIMENSION(:, :, :, :), CONTIGUOUS:: sb
    complex(kind=real_4), intent(out), DIMENSION(:, :, :, :), CONTIGUOUS:: rb
    integer, intent(in) :: count
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4) :: msg

    Scalar to send

    integer :: dest

    Destination process Transfer identifier Message passing environment identifier

    integer :: tag

    Destination process Transfer identifier Message passing environment identifier

    integer :: gid

    Destination process Transfer identifier Message passing environment identifier

  • private subroutine mp_send_iv(msg, dest, tag, gid)

    Send rank-1 data to another process

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), CONTIGUOUS:: msg(:)

    Rank-1 data to send

    integer :: dest
    integer :: tag
    integer :: gid
  • private subroutine mp_send_l(msg, dest, tag, gid)

    Send one datum to another process

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8) :: msg

    Scalar to send

    integer :: dest

    Destination process Transfer identifier Message passing environment identifier

    integer :: tag

    Destination process Transfer identifier Message passing environment identifier

    integer :: gid

    Destination process Transfer identifier Message passing environment identifier

  • private subroutine mp_send_lv(msg, dest, tag, gid)

    Send rank-1 data to another process

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), CONTIGUOUS:: msg(:)

    Rank-1 data to send

    integer :: dest
    integer :: tag
    integer :: gid
  • private subroutine mp_send_d(msg, dest, tag, gid)

    Send one datum to another process

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8) :: msg

    Scalar to send

    integer :: dest

    Destination process Transfer identifier Message passing environment identifier

    integer :: tag

    Destination process Transfer identifier Message passing environment identifier

    integer :: gid

    Destination process Transfer identifier Message passing environment identifier

  • private subroutine mp_send_dv(msg, dest, tag, gid)

    Send rank-1 data to another process

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), CONTIGUOUS:: msg(:)

    Rank-1 data to send

    integer :: dest
    integer :: tag
    integer :: gid
  • private subroutine mp_send_r(msg, dest, tag, gid)

    Send one datum to another process

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4) :: msg

    Scalar to send

    integer :: dest

    Destination process Transfer identifier Message passing environment identifier

    integer :: tag

    Destination process Transfer identifier Message passing environment identifier

    integer :: gid

    Destination process Transfer identifier Message passing environment identifier

  • private subroutine mp_send_rv(msg, dest, tag, gid)

    Send rank-1 data to another process

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), CONTIGUOUS:: msg(:)

    Rank-1 data to send

    integer :: dest
    integer :: tag
    integer :: gid
  • private subroutine mp_send_z(msg, dest, tag, gid)

    Send one datum to another process

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8) :: msg

    Scalar to send

    integer :: dest

    Destination process Transfer identifier Message passing environment identifier

    integer :: tag

    Destination process Transfer identifier Message passing environment identifier

    integer :: gid

    Destination process Transfer identifier Message passing environment identifier

  • private subroutine mp_send_zv(msg, dest, tag, gid)

    Send rank-1 data to another process

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), CONTIGUOUS:: msg(:)

    Rank-1 data to send

    integer :: dest
    integer :: tag
    integer :: gid
  • private subroutine mp_send_c(msg, dest, tag, gid)

    Send one datum to another process

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4) :: msg

    Scalar to send

    integer :: dest

    Destination process Transfer identifier Message passing environment identifier

    integer :: tag

    Destination process Transfer identifier Message passing environment identifier

    integer :: gid

    Destination process Transfer identifier Message passing environment identifier

  • private subroutine mp_send_cv(msg, dest, tag, gid)

    Send rank-1 data to another process

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), CONTIGUOUS:: msg(:)

    Rank-1 data to send

    integer :: dest
    integer :: tag
    integer :: gid

public interface mp_recv

  • private subroutine mp_recv_i(msg, source, tag, gid)

    Receive one datum from another process

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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

    integer, intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_recv_iv(msg, source, tag, gid)

    Receive rank-1 data from another process

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), intent(inout), CONTIGUOUS:: msg(:)

    Place received data into this rank-1 array

    integer, intent(inout) :: source
    integer, intent(inout) :: tag
    integer, intent(in) :: gid
  • private subroutine mp_recv_l(msg, source, tag, gid)

    Receive one datum from another process

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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

    integer, intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_recv_lv(msg, source, tag, gid)

    Receive rank-1 data from another process

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), intent(inout), CONTIGUOUS:: msg(:)

    Place received data into this rank-1 array

    integer, intent(inout) :: source
    integer, intent(inout) :: tag
    integer, intent(in) :: gid
  • private subroutine mp_recv_d(msg, source, tag, gid)

    Receive one datum from another process

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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

    integer, intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_recv_dv(msg, source, tag, gid)

    Receive rank-1 data from another process

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), intent(inout), CONTIGUOUS:: msg(:)

    Place received data into this rank-1 array

    integer, intent(inout) :: source
    integer, intent(inout) :: tag
    integer, intent(in) :: gid
  • private subroutine mp_recv_r(msg, source, tag, gid)

    Receive one datum from another process

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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

    integer, intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_recv_rv(msg, source, tag, gid)

    Receive rank-1 data from another process

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), intent(inout), CONTIGUOUS:: msg(:)

    Place received data into this rank-1 array

    integer, intent(inout) :: source
    integer, intent(inout) :: tag
    integer, intent(in) :: gid
  • private subroutine mp_recv_z(msg, source, tag, gid)

    Receive one datum from another process

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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

    integer, intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_recv_zv(msg, source, tag, gid)

    Receive rank-1 data from another process

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), intent(inout), CONTIGUOUS:: msg(:)

    Place received data into this rank-1 array

    integer, intent(inout) :: source
    integer, intent(inout) :: tag
    integer, intent(in) :: gid
  • private subroutine mp_recv_c(msg, source, tag, gid)

    Receive one datum from another process

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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

    integer, intent(in) :: gid

    Message passing environment identifier

  • private subroutine mp_recv_cv(msg, source, tag, gid)

    Receive rank-1 data from another process

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), intent(inout), CONTIGUOUS:: msg(:)

    Place received data into this rank-1 array

    integer, intent(inout) :: source
    integer, intent(inout) :: tag
    integer, intent(in) :: gid

public interface mp_sendrecv

  • private subroutine mp_sendrecv_iv(msgin, dest, msgout, source, comm)

    Sends and receives vector data

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: comm

    Process from which to receive Message passing environment identifier

  • private subroutine mp_sendrecv_lv(msgin, dest, msgout, source, comm)

    Sends and receives vector data

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: comm

    Process from which to receive Message passing environment identifier

  • private subroutine mp_sendrecv_dv(msgin, dest, msgout, source, comm)

    Sends and receives vector data

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: comm

    Process from which to receive Message passing environment identifier

  • private subroutine mp_sendrecv_rv(msgin, dest, msgout, source, comm)

    Sends and receives vector data

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: comm

    Process from which to receive Message passing environment identifier

  • private subroutine mp_sendrecv_zv(msgin, dest, msgout, source, comm)

    Sends and receives vector data

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: comm

    Process from which to receive Message passing environment identifier

  • private subroutine mp_sendrecv_cv(msgin, dest, msgout, source, comm)

    Sends and receives vector data

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: comm

    Process from which to receive 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: comm

    Process to receive from Message passing environment identifier

    integer, intent(out) :: send_request

    Request handle for the send Request handle for the receive

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: comm

    Process to receive from Message passing environment identifier

    integer, intent(out) :: send_request

    Request handle for the send Request handle for the receive

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: comm

    Process to receive from Message passing environment identifier

    integer, intent(out) :: send_request

    Request handle for the send Request handle for the receive

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: comm

    Process to receive from Message passing environment identifier

    integer, intent(out) :: send_request

    Request handle for the send Request handle for the receive

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: comm

    Process to receive from Message passing environment identifier

    integer, intent(out) :: send_request

    Request handle for the send Request handle for the receive

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: comm

    Process to receive from Message passing environment identifier

    integer, intent(out) :: send_request

    Request handle for the send Request handle for the receive

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: comm

    Process to receive from Message passing environment identifier

    integer, intent(out) :: send_request

    Request handle for the send Request handle for the receive

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: comm

    Process to receive from Message passing environment identifier

    integer, intent(out) :: send_request

    Request handle for the send Request handle for the receive

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: comm

    Process to receive from Message passing environment identifier

    integer, intent(out) :: send_request

    Request handle for the send Request handle for the receive

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: comm

    Process to receive from Message passing environment identifier

    integer, intent(out) :: send_request

    Request handle for the send Request handle for the receive

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: comm

    Process to receive from Message passing environment identifier

    integer, intent(out) :: send_request

    Request handle for the send Request handle for the receive

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    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 Message passing environment identifier

    integer, intent(in) :: comm

    Process to receive from Message passing environment identifier

    integer, intent(out) :: send_request

    Request handle for the send Request handle for the receive

    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), CONTIGUOUS, DIMENSION(:):: msgin
    integer, intent(in) :: dest
    integer, intent(in) :: comm
    integer, intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_isend_im2(msgin, dest, comm, request, tag)

    Non-blocking send of matrix data

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), DIMENSION(:, :), CONTIGUOUS:: msgin
    integer, intent(in) :: dest
    integer, intent(in) :: comm
    integer, intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_isend_lv(msgin, dest, comm, request, tag)

    Non-blocking send of vector data

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), CONTIGUOUS, DIMENSION(:):: msgin
    integer, intent(in) :: dest
    integer, intent(in) :: comm
    integer, intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_isend_lm2(msgin, dest, comm, request, tag)

    Non-blocking send of matrix data

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), DIMENSION(:, :), CONTIGUOUS:: msgin
    integer, intent(in) :: dest
    integer, intent(in) :: comm
    integer, intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_isend_dv(msgin, dest, comm, request, tag)

    Non-blocking send of vector data

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), CONTIGUOUS, DIMENSION(:):: msgin
    integer, intent(in) :: dest
    integer, intent(in) :: comm
    integer, intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_isend_dm2(msgin, dest, comm, request, tag)

    Non-blocking send of matrix data

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), DIMENSION(:, :), CONTIGUOUS:: msgin
    integer, intent(in) :: dest
    integer, intent(in) :: comm
    integer, intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_isend_rv(msgin, dest, comm, request, tag)

    Non-blocking send of vector data

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), CONTIGUOUS, DIMENSION(:):: msgin
    integer, intent(in) :: dest
    integer, intent(in) :: comm
    integer, intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_isend_rm2(msgin, dest, comm, request, tag)

    Non-blocking send of matrix data

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), DIMENSION(:, :), CONTIGUOUS:: msgin
    integer, intent(in) :: dest
    integer, intent(in) :: comm
    integer, intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_isend_zv(msgin, dest, comm, request, tag)

    Non-blocking send of vector data

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), CONTIGUOUS, DIMENSION(:):: msgin
    integer, intent(in) :: dest
    integer, intent(in) :: comm
    integer, intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_isend_zm2(msgin, dest, comm, request, tag)

    Non-blocking send of matrix data

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), DIMENSION(:, :), CONTIGUOUS:: msgin
    integer, intent(in) :: dest
    integer, intent(in) :: comm
    integer, intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_isend_cv(msgin, dest, comm, request, tag)

    Non-blocking send of vector data

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), CONTIGUOUS, DIMENSION(:):: msgin
    integer, intent(in) :: dest
    integer, intent(in) :: comm
    integer, intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_isend_cm2(msgin, dest, comm, request, tag)

    Non-blocking send of matrix data

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), DIMENSION(:, :), CONTIGUOUS:: msgin
    integer, intent(in) :: dest
    integer, intent(in) :: comm
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    logical, DIMENSION(:), CONTIGUOUS:: msgin

    the input message

    integer, intent(in) :: dest

    the destination processor the communicator object

    integer, intent(in) :: comm

    the destination processor the communicator object

    integer, 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

    TypeIntentOptionalAttributesName
    type(mp_type_descriptor_type), intent(in) :: msgin
    integer, intent(in) :: dest
    integer, intent(in) :: comm
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), CONTIGUOUS, DIMENSION(:):: msgout
    integer, intent(in) :: source
    integer, intent(in) :: comm
    integer, intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_irecv_im2(msgout, source, comm, request, tag)

    Non-blocking receive of matrix data

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), DIMENSION(:, :), CONTIGUOUS:: msgout
    integer, intent(in) :: source
    integer, intent(in) :: comm
    integer, intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_irecv_lv(msgout, source, comm, request, tag)

    Non-blocking receive of vector data

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), CONTIGUOUS, DIMENSION(:):: msgout
    integer, intent(in) :: source
    integer, intent(in) :: comm
    integer, intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_irecv_lm2(msgout, source, comm, request, tag)

    Non-blocking receive of matrix data

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), DIMENSION(:, :), CONTIGUOUS:: msgout
    integer, intent(in) :: source
    integer, intent(in) :: comm
    integer, intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_irecv_dv(msgout, source, comm, request, tag)

    Non-blocking receive of vector data

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), CONTIGUOUS, DIMENSION(:):: msgout
    integer, intent(in) :: source
    integer, intent(in) :: comm
    integer, intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_irecv_dm2(msgout, source, comm, request, tag)

    Non-blocking receive of matrix data

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), DIMENSION(:, :), CONTIGUOUS:: msgout
    integer, intent(in) :: source
    integer, intent(in) :: comm
    integer, intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_irecv_rv(msgout, source, comm, request, tag)

    Non-blocking receive of vector data

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), CONTIGUOUS, DIMENSION(:):: msgout
    integer, intent(in) :: source
    integer, intent(in) :: comm
    integer, intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_irecv_rm2(msgout, source, comm, request, tag)

    Non-blocking receive of matrix data

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), DIMENSION(:, :), CONTIGUOUS:: msgout
    integer, intent(in) :: source
    integer, intent(in) :: comm
    integer, intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_irecv_zv(msgout, source, comm, request, tag)

    Non-blocking receive of vector data

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), CONTIGUOUS, DIMENSION(:):: msgout
    integer, intent(in) :: source
    integer, intent(in) :: comm
    integer, intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_irecv_zm2(msgout, source, comm, request, tag)

    Non-blocking receive of matrix data

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), DIMENSION(:, :), CONTIGUOUS:: msgout
    integer, intent(in) :: source
    integer, intent(in) :: comm
    integer, intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_irecv_cv(msgout, source, comm, request, tag)

    Non-blocking receive of vector data

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), CONTIGUOUS, DIMENSION(:):: msgout
    integer, intent(in) :: source
    integer, intent(in) :: comm
    integer, intent(out) :: request
    integer, intent(in), optional :: tag
  • private subroutine mp_irecv_cm2(msgout, source, comm, request, tag)

    Non-blocking receive of matrix data

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), DIMENSION(:, :), CONTIGUOUS:: msgout
    integer, intent(in) :: source
    integer, intent(in) :: comm
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    logical, DIMENSION(:), CONTIGUOUS:: msgout

    the received message

    integer, intent(in) :: source

    the source processor the communicator object

    integer, intent(in) :: comm

    the source processor the communicator object

    integer, 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

    TypeIntentOptionalAttributesName
    type(mp_type_descriptor_type), intent(inout) :: msgout
    integer, intent(in) :: source
    integer, intent(in) :: comm
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), CONTIGUOUS, DIMENSION(:):: base
    integer, intent(in) :: comm
    integer, intent(inout) :: win
  • private subroutine mp_win_create_lv(base, comm, win)

    Window initialization function for vector data

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), CONTIGUOUS, DIMENSION(:):: base
    integer, intent(in) :: comm
    integer, intent(inout) :: win
  • private subroutine mp_win_create_dv(base, comm, win)

    Window initialization function for vector data

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), CONTIGUOUS, DIMENSION(:):: base
    integer, intent(in) :: comm
    integer, intent(inout) :: win
  • private subroutine mp_win_create_rv(base, comm, win)

    Window initialization function for vector data

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), CONTIGUOUS, DIMENSION(:):: base
    integer, intent(in) :: comm
    integer, intent(inout) :: win
  • private subroutine mp_win_create_zv(base, comm, win)

    Window initialization function for vector data

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), CONTIGUOUS, DIMENSION(:):: base
    integer, intent(in) :: comm
    integer, intent(inout) :: win
  • private subroutine mp_win_create_cv(base, comm, win)

    Window initialization function for vector data

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), CONTIGUOUS, DIMENSION(:):: base
    integer, intent(in) :: comm
    integer, intent(inout) :: 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_4), CONTIGUOUS, DIMENSION(:):: base
    integer, intent(in) :: source
    integer, intent(in) :: win
    integer(kind=int_4), CONTIGUOUS, DIMENSION(:):: win_data
    integer, intent(in), optional :: myproc
    integer, intent(in), optional :: disp
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=int_8), CONTIGUOUS, DIMENSION(:):: base
    integer, intent(in) :: source
    integer, intent(in) :: win
    integer(kind=int_8), CONTIGUOUS, DIMENSION(:):: win_data
    integer, intent(in), optional :: myproc
    integer, intent(in), optional :: disp
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_8), CONTIGUOUS, DIMENSION(:):: base
    integer, intent(in) :: source
    integer, intent(in) :: win
    real(kind=real_8), CONTIGUOUS, DIMENSION(:):: win_data
    integer, intent(in), optional :: myproc
    integer, intent(in), optional :: disp
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=real_4), CONTIGUOUS, DIMENSION(:):: base
    integer, intent(in) :: source
    integer, intent(in) :: win
    real(kind=real_4), CONTIGUOUS, DIMENSION(:):: win_data
    integer, intent(in), optional :: myproc
    integer, intent(in), optional :: disp
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_8), CONTIGUOUS, DIMENSION(:):: base
    integer, intent(in) :: source
    integer, intent(in) :: win
    complex(kind=real_8), CONTIGUOUS, DIMENSION(:):: win_data
    integer, intent(in), optional :: myproc
    integer, intent(in), optional :: disp
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    complex(kind=real_4), CONTIGUOUS, DIMENSION(:):: base
    integer, intent(in) :: source
    integer, intent(in) :: win
    complex(kind=real_4), CONTIGUOUS, DIMENSION(:):: win_data
    integer, intent(in), optional :: myproc
    integer, intent(in), optional :: disp
    integer, 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

    TypeIntentOptionalAttributesName
    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

    TypeIntentOptionalAttributesName
    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

    TypeIntentOptionalAttributesName
    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

    TypeIntentOptionalAttributesName
    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

    TypeIntentOptionalAttributesName
    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

    TypeIntentOptionalAttributesName
    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

    TypeIntentOptionalAttributesName
    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

    TypeIntentOptionalAttributesName
    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

    TypeIntentOptionalAttributesName
    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

    TypeIntentOptionalAttributesName
    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

    TypeIntentOptionalAttributesName
    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

    TypeIntentOptionalAttributesName
    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

    TypeIntentOptionalAttributesName
    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

    TypeIntentOptionalAttributesName
    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

    TypeIntentOptionalAttributesName
    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

    TypeIntentOptionalAttributesName
    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

    TypeIntentOptionalAttributesName
    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

    TypeIntentOptionalAttributesName
    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

    TypeIntentOptionalAttributesName
    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

    TypeIntentOptionalAttributesName
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer, 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

    TypeIntentOptionalAttributesName
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer, 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

    TypeIntentOptionalAttributesName
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer, 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

    TypeIntentOptionalAttributesName
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer, 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

    TypeIntentOptionalAttributesName
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer, 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

    TypeIntentOptionalAttributesName
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer, 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

    TypeIntentOptionalAttributesName
    integer, 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

    TypeIntentOptionalAttributesName
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer, 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

    TypeIntentOptionalAttributesName
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer, 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

    TypeIntentOptionalAttributesName
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer, 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

    TypeIntentOptionalAttributesName
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer, 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

    TypeIntentOptionalAttributesName
    integer, 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

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer, 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

    TypeIntentOptionalAttributesName
    integer, intent(in) :: fh
    integer(kind=file_offset), intent(in) :: offset
    complex(kind=real_4), intent(in) :: msg
  • private subroutine mp_file_write_at_all_cv(fh, offset, msg, msglen)

    (parallel) Blocking collective file write using explicit offsets (serial) Unformatted stream write

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer, intent(in) :: fh
    integer(kind=file_offset), intent(in) :: offset
    complex(kind=real_4), intent(in) :: msg(:)
    integer, intent(in), optional :: msglen
  • private subroutine mp_file_write_at_all_ch(fh, offset, msg)

    Arguments

    TypeIntentOptionalAttributesName
    integer, intent(in) :: fh
    integer(kind=file_offset), intent(in) :: offset
    character(len=*), intent(in) :: msg

public interface mp_file_read_at_all

  • private subroutine mp_file_read_at_all_i(fh, offset, msg)

    Arguments

    TypeIntentOptionalAttributesName
    integer, intent(in) :: fh
    integer(kind=file_offset), intent(in) :: offset
    integer(kind=int_4), intent(out) :: msg
  • private subroutine mp_file_read_at_all_iv(fh, offset, msg, msglen)

    (parallel) Blocking collective file read using explicit offsets (serial) Unformatted stream read

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer, intent(in) :: fh
    integer(kind=file_offset), intent(in) :: offset
    integer(kind=int_4), intent(out) :: msg(:)
    integer, intent(in), optional :: msglen
  • private subroutine mp_file_read_at_all_l(fh, offset, msg)

    Arguments

    TypeIntentOptionalAttributesName
    integer, intent(in) :: fh
    integer(kind=file_offset), intent(in) :: offset
    integer(kind=int_8), intent(out) :: msg
  • private subroutine mp_file_read_at_all_lv(fh, offset, msg, msglen)

    (parallel) Blocking collective file read using explicit offsets (serial) Unformatted stream read

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer, intent(in) :: fh
    integer(kind=file_offset), intent(in) :: offset
    integer(kind=int_8), intent(out) :: msg(:)
    integer, intent(in), optional :: msglen
  • private subroutine mp_file_read_at_all_d(fh, offset, msg)

    Arguments

    TypeIntentOptionalAttributesName
    integer, intent(in) :: fh
    integer(kind=file_offset), intent(in) :: offset
    real(kind=real_8), intent(out) :: msg
  • private subroutine mp_file_read_at_all_dv(fh, offset, msg, msglen)

    (parallel) Blocking collective file read using explicit offsets (serial) Unformatted stream read

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer, intent(in) :: fh
    integer(kind=file_offset), intent(in) :: offset
    real(kind=real_8), intent(out) :: msg(:)
    integer, intent(in), optional :: msglen
  • private subroutine mp_file_read_at_all_r(fh, offset, msg)

    Arguments

    TypeIntentOptionalAttributesName
    integer, intent(in) :: fh
    integer(kind=file_offset), intent(in) :: offset
    real(kind=real_4), intent(out) :: msg
  • private subroutine mp_file_read_at_all_rv(fh, offset, msg, msglen)

    (parallel) Blocking collective file read using explicit offsets (serial) Unformatted stream read

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer, intent(in) :: fh
    integer(kind=file_offset), intent(in) :: offset
    real(kind=real_4), intent(out) :: msg(:)
    integer, intent(in), optional :: msglen
  • private subroutine mp_file_read_at_all_z(fh, offset, msg)

    Arguments

    TypeIntentOptionalAttributesName
    integer, intent(in) :: fh
    integer(kind=file_offset), intent(in) :: offset
    complex(kind=real_8), intent(out) :: msg
  • private subroutine mp_file_read_at_all_zv(fh, offset, msg, msglen)

    (parallel) Blocking collective file read using explicit offsets (serial) Unformatted stream read

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer, intent(in) :: fh
    integer(kind=file_offset), intent(in) :: offset
    complex(kind=real_8), intent(out) :: msg(:)
    integer, intent(in), optional :: msglen
  • private subroutine mp_file_read_at_all_c(fh, offset, msg)

    Arguments

    TypeIntentOptionalAttributesName
    integer, intent(in) :: fh
    integer(kind=file_offset), intent(in) :: offset
    complex(kind=real_4), intent(out) :: msg
  • private subroutine mp_file_read_at_all_cv(fh, offset, msg, msglen)

    (parallel) Blocking collective file read using explicit offsets (serial) Unformatted stream read

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer, intent(in) :: fh
    integer(kind=file_offset), intent(in) :: offset
    complex(kind=real_4), intent(out) :: msg(:)
    integer, intent(in), optional :: msglen
  • private subroutine mp_file_read_at_all_ch(fh, offset, msg)

    Arguments

    TypeIntentOptionalAttributesName
    integer, intent(in) :: fh
    integer(kind=file_offset), intent(in) :: offset
    character(len=*), intent(out) :: msg

Derived Types

type, private :: mp_indexing_meta_type

Components

TypeVisibilityAttributesNameInitial
integer, public, DIMENSION(:), POINTER:: index
integer, public, DIMENSION(:), POINTER:: chunks

type, public :: mp_type_descriptor_type

Components

TypeVisibilityAttributesNameInitial
integer, public :: type_handle
integer, public :: length
integer(kind=int_4), public, DIMENSION(:), POINTER:: data_i
integer(kind=int_8), public, DIMENSION(:), POINTER:: data_l
real(kind=real_4), public, DIMENSION(:), POINTER:: data_r
real(kind=real_8), public, DIMENSION(:), POINTER:: data_d
complex(kind=real_4), public, DIMENSION(:), POINTER:: data_c
complex(kind=real_8), public, DIMENSION(:), POINTER:: data_z
type(mp_type_descriptor_type), public, DIMENSION(:), POINTER:: subtype
integer, public :: vector_descriptor(2)
logical, public :: has_indexing
type(mp_indexing_meta_type), public :: index_descriptor

type, private :: mp_file_indexing_meta_type

Components

TypeVisibilityAttributesNameInitial
integer, public, DIMENSION(:), POINTER:: index
integer(kind=address_kind), public, DIMENSION(:), POINTER:: chunks

type, private :: mp_perf_type

Components

TypeVisibilityAttributesNameInitial
character(len=20), public :: name
integer, public :: count
real(kind=dp), public :: msg_size

type, public :: mp_perf_env_type

Components

TypeVisibilityAttributesNameInitial
integer, public :: ref_count
integer, public :: id_nr
type(mp_perf_type), public, DIMENSION(MAX_PERF):: mp_perfs

type, private :: mp_perf_env_p_type

Components

TypeVisibilityAttributesNameInitial
type(mp_perf_env_type), public, POINTER:: mp_perf_env=> Null()

Functions

public function mp_get_comm_count()

Return the current number of communicators

Arguments

None

Return Value integer

public pure function has_mp_perf_env() result(res)

Arguments

None

Return Value logical

public function get_mp_perf_env() result(res)

Arguments

None

Return Value type(mp_perf_env_type),POINTER

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

TypeIntentOptionalAttributesName
integer, DIMENSION(:):: requests

the list of requests to test

Return Value logical

logical which determines if requests are complete

private function mp_type_make_struct(subtypes, vector_descriptor, index_descriptor) result(type_descriptor)

Arguments

TypeIntentOptionalAttributesName
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 function mp_type_indexed_make_i(count, lengths, displs) result(type_descriptor)

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: count
integer, intent(in), DIMENSION(1:count), TARGET:: lengths
integer, intent(in), DIMENSION(1:count), TARGET:: displs

Return Value type(mp_type_descriptor_type)

private function mp_type_make_i(ptr, vector_descriptor, index_descriptor) result(type_descriptor)

Arguments

TypeIntentOptionalAttributesName
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)

public function mp_type_indexed_make_l(count, lengths, displs) result(type_descriptor)

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: count
integer, intent(in), DIMENSION(1:count), TARGET:: lengths
integer, intent(in), DIMENSION(1:count), TARGET:: displs

Return Value type(mp_type_descriptor_type)

private function mp_type_make_l(ptr, vector_descriptor, index_descriptor) result(type_descriptor)

Arguments

TypeIntentOptionalAttributesName
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)

public function mp_type_indexed_make_d(count, lengths, displs) result(type_descriptor)

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: count
integer, intent(in), DIMENSION(1:count), TARGET:: lengths
integer, intent(in), DIMENSION(1:count), TARGET:: displs

Return Value type(mp_type_descriptor_type)

private function mp_type_make_d(ptr, vector_descriptor, index_descriptor) result(type_descriptor)

Arguments

TypeIntentOptionalAttributesName
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)

public function mp_type_indexed_make_r(count, lengths, displs) result(type_descriptor)

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: count
integer, intent(in), DIMENSION(1:count), TARGET:: lengths
integer, intent(in), DIMENSION(1:count), TARGET:: displs

Return Value type(mp_type_descriptor_type)

private function mp_type_make_r(ptr, vector_descriptor, index_descriptor) result(type_descriptor)

Arguments

TypeIntentOptionalAttributesName
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)

public function mp_type_indexed_make_z(count, lengths, displs) result(type_descriptor)

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: count
integer, intent(in), DIMENSION(1:count), TARGET:: lengths
integer, intent(in), DIMENSION(1:count), TARGET:: displs

Return Value type(mp_type_descriptor_type)

private function mp_type_make_z(ptr, vector_descriptor, index_descriptor) result(type_descriptor)

Arguments

TypeIntentOptionalAttributesName
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)

public function mp_type_indexed_make_c(count, lengths, displs) result(type_descriptor)

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: count
integer, intent(in), DIMENSION(1:count), TARGET:: lengths
integer, intent(in), DIMENSION(1:count), TARGET:: displs

Return Value type(mp_type_descriptor_type)

private function mp_type_make_c(ptr, vector_descriptor, index_descriptor) result(type_descriptor)

Arguments

TypeIntentOptionalAttributesName
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)


Subroutines

public subroutine mp_world_init(mp_comm)

initializes the system default communicator

Read more…

Arguments

TypeIntentOptionalAttributesName
integer, intent(out) :: mp_comm

[output] : handle of the default communicator

public subroutine mp_reordering(mp_comm, mp_new_comm, ranks_order)

re-create the system default communicator with a different MPI rank order

Read more…

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: mp_comm

[output] : handle of the default communicator

integer, intent(out) :: mp_new_comm
integer, DIMENSION(:), CONTIGUOUS:: ranks_order

public subroutine mp_world_finalize()

finalizes the system default communicator

Arguments

None

public subroutine add_mp_perf_env(perf_env)

start and stop the performance indicators for every call to start there has to be (exactly) one call to stop

Read more…

Arguments

TypeIntentOptionalAttributesName
type(mp_perf_env_type), optional POINTER:: perf_env

private subroutine mp_perf_env_create(perf_env)

Arguments

TypeIntentOptionalAttributesName
type(mp_perf_env_type), optional POINTER:: perf_env

public subroutine mp_perf_env_release(perf_env)

Arguments

TypeIntentOptionalAttributesName
type(mp_perf_env_type), POINTER:: perf_env

public subroutine mp_perf_env_retain(perf_env)

Arguments

TypeIntentOptionalAttributesName
type(mp_perf_env_type), POINTER:: perf_env

private subroutine mp_perf_env_describe(perf_env, iw)

Arguments

TypeIntentOptionalAttributesName
type(mp_perf_env_type), POINTER:: perf_env
integer, intent(in) :: iw

public subroutine rm_mp_perf_env()

Arguments

None

public subroutine describe_mp_perf_env(scr)

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: scr

public subroutine mp_abort()

globally stops all tasks this is intended to be low level, most of CP2K should call dbcsr_abort()

Arguments

None

private subroutine mp_stop(ierr, prg_code)

stops after an mpi error translating the error code

Read more…

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: ierr

an error code * returned by an mpi call *

character(len=*) :: prg_code

public subroutine mp_sync(group)

synchronizes with a barrier a given group of mpi tasks

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: group

mpi communicator

public subroutine mp_isync(group, request)

synchronizes with a barrier a given group of mpi tasks

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: group

mpi communicator

integer, intent(out) :: request

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.

Read more…

Arguments

TypeIntentOptionalAttributesName
integer, intent(out), optional :: numtask
integer, intent(out), optional :: taskid
integer, intent(in) :: groupid

mpi communicator

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

Arguments

TypeIntentOptionalAttributesName
integer, intent(out) :: numtask
integer, intent(out) :: dims(2)
integer, intent(out) :: task_coor(2)
integer, intent(in) :: groupid

private subroutine mp_environ_c2(comm, ndims, dims, task_coor, periods)

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: comm
integer, intent(in) :: ndims
integer, intent(out) :: dims(ndims)
integer, intent(out) :: task_coor(ndims)
logical, intent(out) :: periods(ndims)

public subroutine mp_cart_create(comm_old, ndims, dims, pos, comm_cart)

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: comm_old
integer, intent(in) :: ndims
integer, intent(inout), CONTIGUOUS:: dims(:)
integer, intent(out), CONTIGUOUS:: pos(:)
integer, intent(out) :: comm_cart

public subroutine mp_cart_coords(comm, rank, coords)

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: comm
integer, intent(in) :: rank
integer, intent(out), DIMENSION(:), CONTIGUOUS:: coords

public subroutine mp_comm_compare(comm1, comm2, res)

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: comm1
integer, intent(in) :: comm2
integer, intent(out) :: res

public subroutine mp_cart_sub(comm, rdim, sub_comm)

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: comm
logical, intent(in), DIMENSION(:), CONTIGUOUS:: rdim
integer, intent(out) :: sub_comm

public subroutine mp_comm_free(comm)

Arguments

TypeIntentOptionalAttributesName
integer, intent(inout) :: comm

public subroutine mp_comm_dup(comm1, comm2)

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: comm1
integer, intent(out) :: comm2

public subroutine mp_rank_compare(comm1, comm2, rank)

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: comm1
integer, intent(in) :: comm2
integer, intent(out), DIMENSION(:), CONTIGUOUS:: rank

public subroutine mp_dims_create(nodes, dims)

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: nodes
integer, intent(inout), DIMENSION(:), CONTIGUOUS:: dims

public subroutine mp_cart_rank(group, pos, rank)

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: group
integer, intent(in), DIMENSION(:), CONTIGUOUS:: pos
integer, intent(out) :: rank

public subroutine mp_wait(request)

waits for completion of the given request

Read more…

Arguments

TypeIntentOptionalAttributesName
integer, intent(inout) :: request

private subroutine mp_waitall_1(requests)

waits for completion of the given requests

Read more…

Arguments

TypeIntentOptionalAttributesName
integer, intent(inout), DIMENSION(:), CONTIGUOUS:: requests

private subroutine mp_waitall_2(requests)

waits for completion of the given requests

Arguments

TypeIntentOptionalAttributesName
integer, intent(inout), DIMENSION(:, :), CONTIGUOUS:: requests

public subroutine mp_waitany(requests, completed)

waits for completion of any of the given requests

Arguments

TypeIntentOptionalAttributesName
integer, intent(inout), DIMENSION(:), CONTIGUOUS:: requests
integer, intent(out) :: completed

private subroutine mp_test_1(request, flag)

Tests for completion of the given request.

Arguments

TypeIntentOptionalAttributesName
integer, intent(inout) :: request

the request

logical, intent(out) :: flag

logical which determines if the request is completed

private subroutine mp_testany_1(requests, completed, flag)

tests for completion of the given requests

Arguments

TypeIntentOptionalAttributesName
integer, intent(inout), DIMENSION(:), CONTIGUOUS:: 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

TypeIntentOptionalAttributesName
integer, intent(inout), DIMENSION(:, :), CONTIGUOUS:: requests
integer, intent(out), optional :: completed
logical, intent(out), optional :: flag

public subroutine mp_comm_split_direct(comm, sub_comm, color, key)

the direct way to split a communicator each color is a sub_comm, the rank order is accoring to the order in the orig comm

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: comm
integer, intent(out) :: sub_comm
integer, intent(in) :: color
integer, intent(in), optional :: key

public subroutine mp_comm_split(comm, sub_comm, ngroups, group_distribution, subgroup_min_size, n_subgroups, group_partition, stride)

splits the given communicator in group in subgroups trying to organize them in a way that the communication within each subgroup is efficient (but not necessarily the communication between subgroups)

Read more…

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: comm

the mpi communicator that you want to split

integer, intent(out) :: sub_comm

the communicator for the subgroup (created, needs to be freed later) actual number of groups

integer, intent(out) :: ngroups

the communicator for the subgroup (created, needs to be freed later) actual number of groups

integer, DIMENSION(0:):: group_distribution

input : allocated with array with the nprocs entries (0 .. nprocs-1)

integer, intent(in), optional :: subgroup_min_size

the minimum size of the subgroup the number of subgroups wanted

integer, intent(in), optional :: n_subgroups

the minimum size of the subgroup the number of subgroups wanted

integer, optional DIMENSION(0:):: group_partition

n_subgroups sized array containing the number of cpus wanted per group. should match the total number of cpus (only used if present and associated) (0..ngroups-1)

integer, optional :: stride

create groups using a stride (default=1) through the ranks of the comm to be split.

public subroutine mp_probe(source, comm, tag)

probes for an incoming message with any tag

Arguments

TypeIntentOptionalAttributesName
integer :: source

the source of the possible incoming message, if MP_ANY_SOURCE it is a blocking one and return value is the source of the next incoming message if source is a different value it is a non-blocking probe retuning MP_ANY_SOURCE if there is no incoming message

integer, intent(in) :: comm

the communicator

integer, intent(out) :: tag

the tag of the incoming message

private subroutine mp_bcast_b(msg, source, gid)

Arguments

TypeIntentOptionalAttributesName
logical :: msg
integer :: source
integer :: gid

private subroutine mp_bcast_bv(msg, source, gid)

Arguments

TypeIntentOptionalAttributesName
logical, CONTIGUOUS:: msg(:)
integer :: source
integer :: gid

private subroutine mp_isend_bv(msgin, dest, comm, request, tag)

Non-blocking send of logical vector data

Read more…

Arguments

TypeIntentOptionalAttributesName
logical, DIMENSION(:), CONTIGUOUS:: msgin

the input message

integer, intent(in) :: dest

the destination processor the communicator object

integer, intent(in) :: comm

the destination processor the communicator object

integer, intent(out) :: request

communication request index

integer, intent(in), optional :: tag

message tag

private subroutine mp_irecv_bv(msgout, source, comm, request, tag)

Non-blocking receive of logical vector data

Read more…

Arguments

TypeIntentOptionalAttributesName
logical, DIMENSION(:), CONTIGUOUS:: msgout

the received message

integer, intent(in) :: source

the source processor the communicator object

integer, intent(in) :: comm

the source processor the communicator object

integer, intent(out) :: request

communication request index

integer, intent(in), optional :: tag

message tag

private subroutine mp_bcast_av(msg, source, gid)

Arguments

TypeIntentOptionalAttributesName
character(len=*) :: msg
integer :: source
integer :: gid

private subroutine mp_bcast_am(msg, source, gid)

Arguments

TypeIntentOptionalAttributesName
character(len=*) :: msg(:)
integer :: source
integer :: gid

private subroutine mp_minloc_dv(msg, gid)

Finds the location of the minimal element in a vector.

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), intent(inout), CONTIGUOUS:: msg(:)

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

integer, intent(in) :: gid

Message passing environment identifier

private subroutine mp_maxloc_dv(msg, gid)

Finds the location of the maximal element in a vector.

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), intent(inout), CONTIGUOUS:: msg(:)

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

integer, intent(in) :: gid

Message passing environment identifier

private subroutine mp_sum_b(msg, gid)

Logical OR reduction

Read more…

Arguments

TypeIntentOptionalAttributesName
logical, intent(inout) :: msg

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

integer, intent(in) :: gid

Message passing environment identifier

private subroutine mp_sum_bv(msg, gid)

Logical OR reduction

Read more…

Arguments

TypeIntentOptionalAttributesName
logical, intent(inout), DIMENSION(:), CONTIGUOUS:: msg

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

integer, intent(in) :: gid

Message passing environment identifier

private subroutine mp_isum_bv(msg, gid, request)

Logical OR reduction

Read more…

Arguments

TypeIntentOptionalAttributesName
logical, intent(inout), DIMENSION(:), CONTIGUOUS:: msg

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

integer, intent(in) :: gid

Message passing environment identifier

integer, intent(inout) :: request

public subroutine mp_get_library_version(version, resultlen)

Get Version of the MPI Library (MPI 3)

Arguments

TypeIntentOptionalAttributesName
character(len=*), intent(out) :: version

Version of the library, declared as CHARACTER(LEN=mp_max_library_version_string)

integer, intent(out) :: resultlen

Length (in printable characters) of the result returned in version (integer)

public subroutine mp_get_processor_name(procname, resultlen)

Get a unique specifier for the actual (as opposed to virtual) node (MPI 2.1)

Arguments

TypeIntentOptionalAttributesName
character(len=*), intent(out) :: procname

Name of processor, declared as CHARACTER(LEN=mp_max_processor_name)

integer, intent(out), optional :: resultlen

Length (in characters) of procname (INTEGER)

public subroutine mp_file_open(groupid, fh, filepath, amode_status, info)

Opens a file

Read more…

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: groupid

message passing environment identifier

integer, intent(out) :: fh

file handle (file storage unit)

character(len=*), intent(in) :: filepath

path to the file

integer, intent(in) :: amode_status

access mode

integer, intent(in), optional :: info

info object

public subroutine mp_file_delete(filepath, info)

Deletes a file. Auxiliary routine to emulate 'replace' action for mp_file_open. Only the master processor should call this routine.

Arguments

TypeIntentOptionalAttributesName
character(len=*), intent(in) :: filepath

path to the file

integer, intent(in), optional :: info

info object

public subroutine mp_file_close(fh)

Closes a file

Read more…

Arguments

TypeIntentOptionalAttributesName
integer, intent(inout) :: fh

file handle (file storage unit)

public subroutine mp_file_get_size(fh, file_size)

Returns the file size

Read more…

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: fh

file handle (file storage unit)

integer(kind=file_offset), intent(out) :: file_size

the file size

public subroutine mp_file_get_position(fh, pos)

Returns the file position

Read more…

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: fh

file handle (file storage unit)

integer(kind=file_offset), intent(out) :: pos

the file position

private subroutine mp_file_write_at_ch(fh, offset, msg)

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: fh
integer(kind=file_offset), intent(in) :: offset
character(len=*), intent(in) :: msg

private subroutine mp_file_write_at_all_ch(fh, offset, msg)

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: fh
integer(kind=file_offset), intent(in) :: offset
character(len=*), intent(in) :: msg

private subroutine mp_file_read_at_all_ch(fh, offset, msg)

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: fh
integer(kind=file_offset), intent(in) :: offset
character(len=*), intent(out) :: msg

public subroutine mp_type_size(type_descriptor, type_size)

Returns the size of a data type in bytes

Read more…

Arguments

TypeIntentOptionalAttributesName
type(mp_type_descriptor_type), intent(in) :: type_descriptor

data type

integer, intent(out) :: type_size

size of the data type

private recursive subroutine mp_type_free_m(type_descriptor)

Arguments

TypeIntentOptionalAttributesName
type(mp_type_descriptor_type), intent(inout) :: type_descriptor

private subroutine mp_isend_custom(msgin, dest, comm, request, tag)

Non-blocking send of custom type

Arguments

TypeIntentOptionalAttributesName
type(mp_type_descriptor_type), intent(in) :: msgin
integer, intent(in) :: dest
integer, intent(in) :: comm
integer, intent(out) :: request
integer, intent(in), optional :: tag

private subroutine mp_irecv_custom(msgout, source, comm, request, tag)

Non-blocking receive of vector data

Arguments

TypeIntentOptionalAttributesName
type(mp_type_descriptor_type), intent(inout) :: msgout
integer, intent(in) :: source
integer, intent(in) :: comm
integer, intent(out) :: request
integer, intent(in), optional :: tag

public subroutine mp_win_free(win)

Window free

Arguments

TypeIntentOptionalAttributesName
integer, intent(inout) :: win

public subroutine mp_win_flush_all(win)

Window flush

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: win

public subroutine mp_win_lock_all(win)

Window lock

Arguments

TypeIntentOptionalAttributesName
integer, intent(inout) :: win

public subroutine mp_win_unlock_all(win)

Window lock

Arguments

TypeIntentOptionalAttributesName
integer, intent(inout) :: win

private subroutine mp_alltoall_i11v(sb, scount, sdispl, rb, rcount, rdispl, group)

All-to-all data exchange, rank-1 data of different sizes

Read more…

Arguments

TypeIntentOptionalAttributesName
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

integer, intent(in) :: group

Message passing environment identifier

private subroutine mp_alltoall_i(sb, rb, count, group)

All-to-all data exchange, rank 1 arrays, equal sizes

Read more…

Arguments

TypeIntentOptionalAttributesName
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) Message passing environment identifier

integer, intent(in) :: group

number of elements to send/receive (product of the extents of the first two dimensions) Message passing environment identifier

private subroutine mp_alltoall_i22(sb, rb, count, group)

All-to-all data exchange, rank-2 arrays, equal sizes

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), intent(in), CONTIGUOUS:: sb(:,:)
integer(kind=int_4), intent(out), CONTIGUOUS:: rb(:,:)
integer, intent(in) :: count
integer, intent(in) :: group

private subroutine mp_alltoall_i44(sb, rb, count, group)

All-to-all data exchange, rank 4 data, equal sizes

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), intent(in), DIMENSION(:, :, :, :), CONTIGUOUS:: sb
integer(kind=int_4), intent(out), DIMENSION(:, :, :, :), CONTIGUOUS:: rb
integer, intent(in) :: count
integer, intent(in) :: group

private subroutine mp_send_i(msg, dest, tag, gid)

Send one datum to another process

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4) :: msg

Scalar to send

integer :: dest

Destination process Transfer identifier Message passing environment identifier

integer :: tag

Destination process Transfer identifier Message passing environment identifier

integer :: gid

Destination process Transfer identifier Message passing environment identifier

private subroutine mp_send_iv(msg, dest, tag, gid)

Send rank-1 data to another process

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), CONTIGUOUS:: msg(:)

Rank-1 data to send

integer :: dest
integer :: tag
integer :: gid

private subroutine mp_recv_i(msg, source, tag, gid)

Receive one datum from another process

Read more…

Arguments

TypeIntentOptionalAttributesName
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

integer, intent(in) :: gid

Message passing environment identifier

private subroutine mp_recv_iv(msg, source, tag, gid)

Receive rank-1 data from another process

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), intent(inout), CONTIGUOUS:: msg(:)

Place received data into this rank-1 array

integer, intent(inout) :: source
integer, intent(inout) :: tag
integer, intent(in) :: gid

private subroutine mp_bcast_i(msg, source, gid)

Broadcasts a datum to all processes.

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4) :: msg

Datum to broadcast

integer :: source

Processes which broadcasts Message passing environment identifier

integer :: gid

Processes which broadcasts Message passing environment identifier

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

Broadcasts a datum to all processes.

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4) :: msg

Datum to broadcast

integer :: source

Processes which broadcasts Message passing environment identifier

integer :: gid

Processes which broadcasts Message passing environment identifier

integer, intent(inout) :: request

private subroutine mp_bcast_iv(msg, source, gid)

Broadcasts rank-1 data to all processes

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), CONTIGUOUS:: msg(:)

Data to broadcast

integer :: source
integer :: gid

private subroutine mp_ibcast_iv(msg, source, gid, request)

Broadcasts rank-1 data to all processes

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), CONTIGUOUS:: msg(:)

Data to broadcast

integer :: source
integer :: gid
integer, intent(inout) :: request

private subroutine mp_bcast_im(msg, source, gid)

Broadcasts rank-2 data to all processes

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), CONTIGUOUS:: msg(:,:)

Data to broadcast

integer :: source
integer :: gid

private subroutine mp_bcast_i3(msg, source, gid)

Broadcasts rank-3 data to all processes

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), CONTIGUOUS:: msg(:,:,:)

Data to broadcast

integer :: source
integer :: gid

private subroutine mp_sum_i(msg, gid)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), intent(inout) :: msg

Datum to sum (input) and result (output)

integer, 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.

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), intent(inout), CONTIGUOUS:: msg(:)

Vector to sum and result

integer, intent(in) :: gid

private subroutine mp_isum_iv(msg, gid, request)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), intent(inout), CONTIGUOUS:: msg(:)

Vector to sum and result

integer, intent(in) :: gid
integer, intent(inout) :: request

private subroutine mp_sum_im(msg, gid)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), intent(inout), CONTIGUOUS:: msg(:,:)

Matrix to sum and result

integer, intent(in) :: gid

private subroutine mp_sum_im3(msg, gid)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), intent(inout), CONTIGUOUS:: msg(:,:,:)

Array to sum and result

integer, intent(in) :: gid

private subroutine mp_sum_im4(msg, gid)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), intent(inout), CONTIGUOUS:: msg(:,:,:,:)

Array to sum and result

integer, 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.

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), intent(inout), CONTIGUOUS:: msg(:)

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

integer, intent(in) :: root

Message passing environment identifier

integer, 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.

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), intent(inout), CONTIGUOUS:: msg(:,:)

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

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

private subroutine mp_sum_partial_im(msg, res, gid)

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

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), intent(in), CONTIGUOUS:: msg(:,:)

Matrix to sum (input)

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

Matrix containing result (output)

integer, intent(in) :: gid

Message passing environment identifier

private subroutine mp_max_i(msg, gid)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), intent(inout) :: msg

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

integer, 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.

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), intent(inout), CONTIGUOUS:: msg(:)

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

integer, intent(in) :: gid

private subroutine mp_min_i(msg, gid)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), intent(inout) :: msg

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

integer, 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.

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), intent(inout), CONTIGUOUS:: msg(:)

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

integer, intent(in) :: gid

private subroutine mp_prod_i(msg, gid)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), intent(inout) :: msg

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

integer, intent(in) :: gid

message passing environment identifier

private subroutine mp_iscatter_i(msg_scatter, msg, root, gid, request)

Scatters data from one processes to all others

Read more…

Arguments

TypeIntentOptionalAttributesName
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 Message passing environment identifier

integer, intent(in) :: gid

Process which scatters data Message passing environment identifier

integer, intent(inout) :: request

private subroutine mp_iscatter_iv2(msg_scatter, msg, root, gid, request)

Scatters data from one processes to all others

Read more…

Arguments

TypeIntentOptionalAttributesName
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 Message passing environment identifier

integer, intent(in) :: gid

Process which scatters data Message passing environment identifier

integer, 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

Read more…

Arguments

TypeIntentOptionalAttributesName
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 Message passing environment identifier

integer, intent(in) :: root

Process which scatters data Message passing environment identifier

integer, intent(in) :: gid

Process which scatters data Message passing environment identifier

integer, intent(inout) :: request

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

Gathers a datum from all processes to one

Read more…

Arguments

TypeIntentOptionalAttributesName
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 Message passing environment identifier

integer, intent(in) :: gid

Process which gathers the data Message passing environment identifier

private subroutine mp_gather_iv(msg, msg_gather, root, gid)

Gathers data from all processes to one

Read more…

Arguments

TypeIntentOptionalAttributesName
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
integer, intent(in) :: gid

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

Gathers data from all processes to one

Read more…

Arguments

TypeIntentOptionalAttributesName
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
integer, intent(in) :: gid

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

Gathers data from all processes to one.

Read more…

Arguments

TypeIntentOptionalAttributesName
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 Message passing environment identifier

integer, intent(in) :: comm

Process which gathers the data Message passing environment identifier

private subroutine mp_allgather_i(msgout, msgin, gid)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), intent(in) :: msgout

Datum to send

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

Received data

integer, 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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), intent(in) :: msgout

Datum to send

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

Received data

integer, intent(in) :: gid

Message passing environment identifier

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

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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), intent(in) :: msgout

Datum to send

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

Received data

integer, intent(in) :: gid

Message passing environment identifier

integer, intent(inout) :: request

private subroutine mp_allgather_i12(msgout, msgin, gid)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
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) :: 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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), intent(in), CONTIGUOUS:: msgout(:,:)

Rank-2 data to send

integer(kind=int_4), intent(out), CONTIGUOUS:: msgin(:,:,:)
integer, 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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), intent(in), CONTIGUOUS:: msgout(:,:,:)

Rank-3 data to send

integer(kind=int_4), intent(out), CONTIGUOUS:: msgin(:,:,:,:)
integer, 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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), intent(in), CONTIGUOUS:: msgout(:,:)

Rank-2 data to send

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

private subroutine mp_iallgather_i11(msgout, msgin, gid, request)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), intent(in), CONTIGUOUS:: msgout(:)

Rank-1 data to send

integer(kind=int_4), intent(out), CONTIGUOUS:: msgin(:)
integer, intent(in) :: gid
integer, 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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), intent(in), CONTIGUOUS:: msgout(:)

Rank-2 data to send

integer(kind=int_4), intent(out), CONTIGUOUS:: msgin(:,:,:)
integer, intent(in) :: gid
integer, 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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), intent(in), CONTIGUOUS:: msgout(:,:)

Rank-2 data to send

integer(kind=int_4), intent(out), CONTIGUOUS:: msgin(:,:)
integer, intent(in) :: gid
integer, 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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), intent(in), CONTIGUOUS:: msgout(:,:)

Rank-2 data to send

integer(kind=int_4), intent(out), CONTIGUOUS:: msgin(:,:,:,:)
integer, intent(in) :: gid
integer, 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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), intent(in), CONTIGUOUS:: msgout(:,:,:)

Rank-3 data to send

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

private subroutine mp_allgatherv_iv(msgout, msgin, rcount, rdispl, gid)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
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(:)
integer, intent(in) :: gid

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

private subroutine mp_iallgatherv_iv(msgout, msgin, rcount, rdispl, gid, request)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
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(:)
integer, intent(in) :: gid

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

integer, 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

Read more…

Arguments

TypeIntentOptionalAttributesName
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(:,:)
integer, intent(in) :: gid

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

integer, intent(inout) :: request

private subroutine mp_sendrecv_iv(msgin, dest, msgout, source, comm)

Sends and receives vector data

Arguments

TypeIntentOptionalAttributesName
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 Message passing environment identifier

integer, intent(in) :: comm

Process from which to receive Message passing environment identifier

private subroutine mp_isendrecv_i(msgin, dest, msgout, source, comm, send_request, recv_request, tag)

Non-blocking send and receive of a scalar

Read more…

Arguments

TypeIntentOptionalAttributesName
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 Message passing environment identifier

integer, intent(in) :: comm

Process to receive from Message passing environment identifier

integer, intent(out) :: send_request

Request handle for the send Request handle for the receive

integer, 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

Read more…

Arguments

TypeIntentOptionalAttributesName
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 Message passing environment identifier

integer, intent(in) :: comm

Process to receive from Message passing environment identifier

integer, intent(out) :: send_request

Request handle for the send Request handle for the receive

integer, 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_isend_iv(msgin, dest, comm, request, tag)

Non-blocking send of vector data

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), CONTIGUOUS, DIMENSION(:):: msgin
integer, intent(in) :: dest
integer, intent(in) :: comm
integer, intent(out) :: request
integer, intent(in), optional :: tag

private subroutine mp_isend_im2(msgin, dest, comm, request, tag)

Non-blocking send of matrix data

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), DIMENSION(:, :), CONTIGUOUS:: msgin
integer, intent(in) :: dest
integer, intent(in) :: comm
integer, intent(out) :: request
integer, intent(in), optional :: tag

private subroutine mp_irecv_iv(msgout, source, comm, request, tag)

Non-blocking receive of vector data

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), CONTIGUOUS, DIMENSION(:):: msgout
integer, intent(in) :: source
integer, intent(in) :: comm
integer, intent(out) :: request
integer, intent(in), optional :: tag

private subroutine mp_irecv_im2(msgout, source, comm, request, tag)

Non-blocking receive of matrix data

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), DIMENSION(:, :), CONTIGUOUS:: msgout
integer, intent(in) :: source
integer, intent(in) :: comm
integer, intent(out) :: request
integer, intent(in), optional :: tag

private subroutine mp_win_create_iv(base, comm, win)

Window initialization function for vector data

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), CONTIGUOUS, DIMENSION(:):: base
integer, intent(in) :: comm
integer, intent(inout) :: win

private subroutine mp_rget_iv(base, source, win, win_data, myproc, disp, request, origin_datatype, target_datatype)

Single-sided get function for vector data

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), CONTIGUOUS, DIMENSION(:):: base
integer, intent(in) :: source
integer, intent(in) :: win
integer(kind=int_4), CONTIGUOUS, DIMENSION(:):: win_data
integer, intent(in), optional :: myproc
integer, intent(in), optional :: disp
integer, 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_allocate_i(DATA, len, stat)

Allocates special parallel memory

Arguments

TypeIntentOptionalAttributesName
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_deallocate_i(DATA, stat)

Deallocates special parallel memory

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_4), DIMENSION(:), POINTER, CONTIGUOUS:: DATA

pointer to special memory to deallocate

integer, intent(out), optional :: stat

private subroutine mp_file_write_at_iv(fh, offset, msg, msglen)

(parallel) Blocking individual file write using explicit offsets (serial) Unformatted stream write

Read more…

Arguments

TypeIntentOptionalAttributesName
integer, 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_i(fh, offset, msg)

Arguments

TypeIntentOptionalAttributesName
integer, 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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer, 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_i(fh, offset, msg)

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: fh
integer(kind=file_offset), intent(in) :: offset
integer(kind=int_4), intent(in) :: msg

private subroutine mp_file_read_at_all_iv(fh, offset, msg, msglen)

(parallel) Blocking collective file read using explicit offsets (serial) Unformatted stream read

Read more…

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: fh
integer(kind=file_offset), intent(in) :: offset
integer(kind=int_4), intent(out) :: msg(:)
integer, intent(in), optional :: msglen

private subroutine mp_file_read_at_all_i(fh, offset, msg)

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: fh
integer(kind=file_offset), intent(in) :: offset
integer(kind=int_4), intent(out) :: msg

private subroutine mp_alltoall_l11v(sb, scount, sdispl, rb, rcount, rdispl, group)

All-to-all data exchange, rank-1 data of different sizes

Read more…

Arguments

TypeIntentOptionalAttributesName
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

integer, 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

Read more…

Arguments

TypeIntentOptionalAttributesName
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) Message passing environment identifier

integer, intent(in) :: group

number of elements to send/receive (product of the extents of the first two dimensions) Message passing environment identifier

private subroutine mp_alltoall_l22(sb, rb, count, group)

All-to-all data exchange, rank-2 arrays, equal sizes

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), intent(in), CONTIGUOUS:: sb(:,:)
integer(kind=int_8), intent(out), CONTIGUOUS:: rb(:,:)
integer, intent(in) :: count
integer, intent(in) :: group

private subroutine mp_alltoall_l44(sb, rb, count, group)

All-to-all data exchange, rank 4 data, equal sizes

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), intent(in), DIMENSION(:, :, :, :), CONTIGUOUS:: sb
integer(kind=int_8), intent(out), DIMENSION(:, :, :, :), CONTIGUOUS:: rb
integer, intent(in) :: count
integer, intent(in) :: group

private subroutine mp_send_l(msg, dest, tag, gid)

Send one datum to another process

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8) :: msg

Scalar to send

integer :: dest

Destination process Transfer identifier Message passing environment identifier

integer :: tag

Destination process Transfer identifier Message passing environment identifier

integer :: gid

Destination process Transfer identifier Message passing environment identifier

private subroutine mp_send_lv(msg, dest, tag, gid)

Send rank-1 data to another process

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), CONTIGUOUS:: msg(:)

Rank-1 data to send

integer :: dest
integer :: tag
integer :: gid

private subroutine mp_recv_l(msg, source, tag, gid)

Receive one datum from another process

Read more…

Arguments

TypeIntentOptionalAttributesName
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

integer, intent(in) :: gid

Message passing environment identifier

private subroutine mp_recv_lv(msg, source, tag, gid)

Receive rank-1 data from another process

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), intent(inout), CONTIGUOUS:: msg(:)

Place received data into this rank-1 array

integer, intent(inout) :: source
integer, intent(inout) :: tag
integer, intent(in) :: gid

private subroutine mp_bcast_l(msg, source, gid)

Broadcasts a datum to all processes.

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8) :: msg

Datum to broadcast

integer :: source

Processes which broadcasts Message passing environment identifier

integer :: gid

Processes which broadcasts Message passing environment identifier

private subroutine mp_ibcast_l(msg, source, gid, request)

Broadcasts a datum to all processes.

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8) :: msg

Datum to broadcast

integer :: source

Processes which broadcasts Message passing environment identifier

integer :: gid

Processes which broadcasts Message passing environment identifier

integer, intent(inout) :: request

private subroutine mp_bcast_lv(msg, source, gid)

Broadcasts rank-1 data to all processes

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), CONTIGUOUS:: msg(:)

Data to broadcast

integer :: source
integer :: gid

private subroutine mp_ibcast_lv(msg, source, gid, request)

Broadcasts rank-1 data to all processes

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), CONTIGUOUS:: msg(:)

Data to broadcast

integer :: source
integer :: gid
integer, intent(inout) :: request

private subroutine mp_bcast_lm(msg, source, gid)

Broadcasts rank-2 data to all processes

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), CONTIGUOUS:: msg(:,:)

Data to broadcast

integer :: source
integer :: gid

private subroutine mp_bcast_l3(msg, source, gid)

Broadcasts rank-3 data to all processes

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), CONTIGUOUS:: msg(:,:,:)

Data to broadcast

integer :: source
integer :: gid

private subroutine mp_sum_l(msg, gid)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), intent(inout) :: msg

Datum to sum (input) and result (output)

integer, 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.

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), intent(inout), CONTIGUOUS:: msg(:)

Vector to sum and result

integer, intent(in) :: gid

private subroutine mp_isum_lv(msg, gid, request)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), intent(inout), CONTIGUOUS:: msg(:)

Vector to sum and result

integer, intent(in) :: gid
integer, intent(inout) :: request

private subroutine mp_sum_lm(msg, gid)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), intent(inout), CONTIGUOUS:: msg(:,:)

Matrix to sum and result

integer, intent(in) :: gid

private subroutine mp_sum_lm3(msg, gid)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), intent(inout), CONTIGUOUS:: msg(:,:,:)

Array to sum and result

integer, intent(in) :: gid

private subroutine mp_sum_lm4(msg, gid)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), intent(inout), CONTIGUOUS:: msg(:,:,:,:)

Array to sum and result

integer, 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.

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), intent(inout), CONTIGUOUS:: msg(:)

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

integer, intent(in) :: root

Message passing environment identifier

integer, 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.

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), intent(inout), CONTIGUOUS:: msg(:,:)

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

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

private subroutine mp_sum_partial_lm(msg, res, gid)

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

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), intent(in), CONTIGUOUS:: msg(:,:)

Matrix to sum (input)

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

Matrix containing result (output)

integer, intent(in) :: gid

Message passing environment identifier

private subroutine mp_max_l(msg, gid)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), intent(inout) :: msg

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

integer, 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.

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), intent(inout), CONTIGUOUS:: msg(:)

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

integer, intent(in) :: gid

private subroutine mp_min_l(msg, gid)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), intent(inout) :: msg

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

integer, 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.

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), intent(inout), CONTIGUOUS:: msg(:)

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

integer, intent(in) :: gid

private subroutine mp_prod_l(msg, gid)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), intent(inout) :: msg

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

integer, intent(in) :: gid

message passing environment identifier

private subroutine mp_iscatter_l(msg_scatter, msg, root, gid, request)

Scatters data from one processes to all others

Read more…

Arguments

TypeIntentOptionalAttributesName
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 Message passing environment identifier

integer, intent(in) :: gid

Process which scatters data Message passing environment identifier

integer, intent(inout) :: request

private subroutine mp_iscatter_lv2(msg_scatter, msg, root, gid, request)

Scatters data from one processes to all others

Read more…

Arguments

TypeIntentOptionalAttributesName
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 Message passing environment identifier

integer, intent(in) :: gid

Process which scatters data Message passing environment identifier

integer, 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

Read more…

Arguments

TypeIntentOptionalAttributesName
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 Message passing environment identifier

integer, intent(in) :: root

Process which scatters data Message passing environment identifier

integer, intent(in) :: gid

Process which scatters data Message passing environment identifier

integer, intent(inout) :: request

private subroutine mp_gather_l(msg, msg_gather, root, gid)

Gathers a datum from all processes to one

Read more…

Arguments

TypeIntentOptionalAttributesName
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 Message passing environment identifier

integer, intent(in) :: gid

Process which gathers the data Message passing environment identifier

private subroutine mp_gather_lv(msg, msg_gather, root, gid)

Gathers data from all processes to one

Read more…

Arguments

TypeIntentOptionalAttributesName
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
integer, intent(in) :: gid

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

Gathers data from all processes to one

Read more…

Arguments

TypeIntentOptionalAttributesName
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
integer, intent(in) :: gid

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

Gathers data from all processes to one.

Read more…

Arguments

TypeIntentOptionalAttributesName
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 Message passing environment identifier

integer, intent(in) :: comm

Process which gathers the data Message passing environment identifier

private subroutine mp_allgather_l(msgout, msgin, gid)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), intent(in) :: msgout

Datum to send

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

Received data

integer, 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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), intent(in) :: msgout

Datum to send

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

Received data

integer, intent(in) :: gid

Message passing environment identifier

private subroutine mp_iallgather_l(msgout, msgin, gid, request)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), intent(in) :: msgout

Datum to send

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

Received data

integer, intent(in) :: gid

Message passing environment identifier

integer, intent(inout) :: request

private subroutine mp_allgather_l12(msgout, msgin, gid)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
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) :: 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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), intent(in), CONTIGUOUS:: msgout(:,:)

Rank-2 data to send

integer(kind=int_8), intent(out), CONTIGUOUS:: msgin(:,:,:)
integer, 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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), intent(in), CONTIGUOUS:: msgout(:,:,:)

Rank-3 data to send

integer(kind=int_8), intent(out), CONTIGUOUS:: msgin(:,:,:,:)
integer, 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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), intent(in), CONTIGUOUS:: msgout(:,:)

Rank-2 data to send

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

private subroutine mp_iallgather_l11(msgout, msgin, gid, request)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), intent(in), CONTIGUOUS:: msgout(:)

Rank-1 data to send

integer(kind=int_8), intent(out), CONTIGUOUS:: msgin(:)
integer, intent(in) :: gid
integer, 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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), intent(in), CONTIGUOUS:: msgout(:)

Rank-2 data to send

integer(kind=int_8), intent(out), CONTIGUOUS:: msgin(:,:,:)
integer, intent(in) :: gid
integer, 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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), intent(in), CONTIGUOUS:: msgout(:,:)

Rank-2 data to send

integer(kind=int_8), intent(out), CONTIGUOUS:: msgin(:,:)
integer, intent(in) :: gid
integer, 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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), intent(in), CONTIGUOUS:: msgout(:,:)

Rank-2 data to send

integer(kind=int_8), intent(out), CONTIGUOUS:: msgin(:,:,:,:)
integer, intent(in) :: gid
integer, 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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), intent(in), CONTIGUOUS:: msgout(:,:,:)

Rank-3 data to send

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

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

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

Read more…

Arguments

TypeIntentOptionalAttributesName
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(:)
integer, intent(in) :: gid

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

private subroutine mp_iallgatherv_lv(msgout, msgin, rcount, rdispl, gid, request)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
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(:)
integer, intent(in) :: gid

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

integer, 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

Read more…

Arguments

TypeIntentOptionalAttributesName
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(:,:)
integer, intent(in) :: gid

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

integer, intent(inout) :: request

private subroutine mp_sendrecv_lv(msgin, dest, msgout, source, comm)

Sends and receives vector data

Arguments

TypeIntentOptionalAttributesName
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 Message passing environment identifier

integer, intent(in) :: comm

Process from which to receive Message passing environment identifier

private subroutine mp_isendrecv_l(msgin, dest, msgout, source, comm, send_request, recv_request, tag)

Non-blocking send and receive of a scalar

Read more…

Arguments

TypeIntentOptionalAttributesName
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 Message passing environment identifier

integer, intent(in) :: comm

Process to receive from Message passing environment identifier

integer, intent(out) :: send_request

Request handle for the send Request handle for the receive

integer, 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

Read more…

Arguments

TypeIntentOptionalAttributesName
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 Message passing environment identifier

integer, intent(in) :: comm

Process to receive from Message passing environment identifier

integer, intent(out) :: send_request

Request handle for the send Request handle for the receive

integer, 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_isend_lv(msgin, dest, comm, request, tag)

Non-blocking send of vector data

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), CONTIGUOUS, DIMENSION(:):: msgin
integer, intent(in) :: dest
integer, intent(in) :: comm
integer, intent(out) :: request
integer, intent(in), optional :: tag

private subroutine mp_isend_lm2(msgin, dest, comm, request, tag)

Non-blocking send of matrix data

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), DIMENSION(:, :), CONTIGUOUS:: msgin
integer, intent(in) :: dest
integer, intent(in) :: comm
integer, intent(out) :: request
integer, intent(in), optional :: tag

private subroutine mp_irecv_lv(msgout, source, comm, request, tag)

Non-blocking receive of vector data

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), CONTIGUOUS, DIMENSION(:):: msgout
integer, intent(in) :: source
integer, intent(in) :: comm
integer, intent(out) :: request
integer, intent(in), optional :: tag

private subroutine mp_irecv_lm2(msgout, source, comm, request, tag)

Non-blocking receive of matrix data

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), DIMENSION(:, :), CONTIGUOUS:: msgout
integer, intent(in) :: source
integer, intent(in) :: comm
integer, intent(out) :: request
integer, intent(in), optional :: tag

private subroutine mp_win_create_lv(base, comm, win)

Window initialization function for vector data

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), CONTIGUOUS, DIMENSION(:):: base
integer, intent(in) :: comm
integer, intent(inout) :: win

private subroutine mp_rget_lv(base, source, win, win_data, myproc, disp, request, origin_datatype, target_datatype)

Single-sided get function for vector data

Read more…

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), CONTIGUOUS, DIMENSION(:):: base
integer, intent(in) :: source
integer, intent(in) :: win
integer(kind=int_8), CONTIGUOUS, DIMENSION(:):: win_data
integer, intent(in), optional :: myproc
integer, intent(in), optional :: disp
integer, 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_allocate_l(DATA, len, stat)

Allocates special parallel memory

Arguments

TypeIntentOptionalAttributesName
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_deallocate_l(DATA, stat)

Deallocates special parallel memory

Arguments

TypeIntentOptionalAttributesName
integer(kind=int_8), DIMENSION(:), POINTER, CONTIGUOUS:: DATA

pointer to special memory to deallocate

integer, intent(out), optional :: stat

private subroutine mp_file_write_at_lv(fh, offset, msg, msglen)

(parallel) Blocking individual file write using explicit offsets (serial) Unformatted stream write

Read more…

Arguments

TypeIntentOptionalAttributesName
integer, 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_l(fh, offset, msg)

Arguments

TypeIntentOptionalAttributesName
integer, 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

Read more…

Arguments

TypeIntentOptionalAttributesName
integer, 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_l(fh, offset, msg)

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: fh
integer(kind=file_offset), intent(in) :: offset
integer(kind=int_8), intent(in) :: msg

private subroutine mp_file_read_at_all_lv(fh, offset, msg, msglen)

(parallel) Blocking collective file read using explicit offsets (serial) Unformatted stream read

Read more…

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: fh
integer(kind=file_offset), intent(in) :: offset
integer(kind=int_8), intent(out) :: msg(:)
integer, intent(in), optional :: msglen

private subroutine mp_file_read_at_all_l(fh, offset, msg)

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: fh
integer(kind=file_offset), intent(in) :: offset
integer(kind=int_8), intent(out) :: msg

private subroutine mp_alltoall_d11v(sb, scount, sdispl, rb, rcount, rdispl, group)

All-to-all data exchange, rank-1 data of different sizes

Read more…

Arguments

TypeIntentOptionalAttributesName
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

integer, 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

Read more…

Arguments

TypeIntentOptionalAttributesName
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) Message passing environment identifier

integer, intent(in) :: group

number of elements to send/receive (product of the extents of the first two dimensions) Message passing environment identifier

private subroutine mp_alltoall_d22(sb, rb, count, group)

All-to-all data exchange, rank-2 arrays, equal sizes

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), intent(in), CONTIGUOUS:: sb(:,:)
real(kind=real_8), intent(out), CONTIGUOUS:: rb(:,:)
integer, intent(in) :: count
integer, intent(in) :: group

private subroutine mp_alltoall_d44(sb, rb, count, group)

All-to-all data exchange, rank 4 data, equal sizes

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), intent(in), DIMENSION(:, :, :, :), CONTIGUOUS:: sb
real(kind=real_8), intent(out), DIMENSION(:, :, :, :), CONTIGUOUS:: rb
integer, intent(in) :: count
integer, intent(in) :: group

private subroutine mp_send_d(msg, dest, tag, gid)

Send one datum to another process

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8) :: msg

Scalar to send

integer :: dest

Destination process Transfer identifier Message passing environment identifier

integer :: tag

Destination process Transfer identifier Message passing environment identifier

integer :: gid

Destination process Transfer identifier Message passing environment identifier

private subroutine mp_send_dv(msg, dest, tag, gid)

Send rank-1 data to another process

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), CONTIGUOUS:: msg(:)

Rank-1 data to send

integer :: dest
integer :: tag
integer :: gid

private subroutine mp_recv_d(msg, source, tag, gid)

Receive one datum from another process

Read more…

Arguments

TypeIntentOptionalAttributesName
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

integer, intent(in) :: gid

Message passing environment identifier

private subroutine mp_recv_dv(msg, source, tag, gid)

Receive rank-1 data from another process

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), intent(inout), CONTIGUOUS:: msg(:)

Place received data into this rank-1 array

integer, intent(inout) :: source
integer, intent(inout) :: tag
integer, intent(in) :: gid

private subroutine mp_bcast_d(msg, source, gid)

Broadcasts a datum to all processes.

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8) :: msg

Datum to broadcast

integer :: source

Processes which broadcasts Message passing environment identifier

integer :: gid

Processes which broadcasts Message passing environment identifier

private subroutine mp_ibcast_d(msg, source, gid, request)

Broadcasts a datum to all processes.

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8) :: msg

Datum to broadcast

integer :: source

Processes which broadcasts Message passing environment identifier

integer :: gid

Processes which broadcasts Message passing environment identifier

integer, intent(inout) :: request

private subroutine mp_bcast_dv(msg, source, gid)

Broadcasts rank-1 data to all processes

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), CONTIGUOUS:: msg(:)

Data to broadcast

integer :: source
integer :: gid

private subroutine mp_ibcast_dv(msg, source, gid, request)

Broadcasts rank-1 data to all processes

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), CONTIGUOUS:: msg(:)

Data to broadcast

integer :: source
integer :: gid
integer, intent(inout) :: request

private subroutine mp_bcast_dm(msg, source, gid)

Broadcasts rank-2 data to all processes

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), CONTIGUOUS:: msg(:,:)

Data to broadcast

integer :: source
integer :: gid

private subroutine mp_bcast_d3(msg, source, gid)

Broadcasts rank-3 data to all processes

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), CONTIGUOUS:: msg(:,:,:)

Data to broadcast

integer :: source
integer :: gid

private subroutine mp_sum_d(msg, gid)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), intent(inout) :: msg

Datum to sum (input) and result (output)

integer, 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.

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), intent(inout), CONTIGUOUS:: msg(:)

Vector to sum and result

integer, intent(in) :: gid

private subroutine mp_isum_dv(msg, gid, request)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), intent(inout), CONTIGUOUS:: msg(:)

Vector to sum and result

integer, intent(in) :: gid
integer, intent(inout) :: request

private subroutine mp_sum_dm(msg, gid)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), intent(inout), CONTIGUOUS:: msg(:,:)

Matrix to sum and result

integer, intent(in) :: gid

private subroutine mp_sum_dm3(msg, gid)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), intent(inout), CONTIGUOUS:: msg(:,:,:)

Array to sum and result

integer, intent(in) :: gid

private subroutine mp_sum_dm4(msg, gid)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), intent(inout), CONTIGUOUS:: msg(:,:,:,:)

Array to sum and result

integer, 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.

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), intent(inout), CONTIGUOUS:: msg(:)

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

integer, intent(in) :: root

Message passing environment identifier

integer, 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.

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), intent(inout), CONTIGUOUS:: msg(:,:)

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

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

private subroutine mp_sum_partial_dm(msg, res, gid)

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

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), intent(in), CONTIGUOUS:: msg(:,:)

Matrix to sum (input)

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

Matrix containing result (output)

integer, intent(in) :: gid

Message passing environment identifier

private subroutine mp_max_d(msg, gid)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), intent(inout) :: msg

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

integer, 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.

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), intent(inout), CONTIGUOUS:: msg(:)

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

integer, intent(in) :: gid

private subroutine mp_min_d(msg, gid)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), intent(inout) :: msg

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

integer, 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.

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), intent(inout), CONTIGUOUS:: msg(:)

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

integer, intent(in) :: gid

private subroutine mp_prod_d(msg, gid)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), intent(inout) :: msg

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

integer, intent(in) :: gid

message passing environment identifier

private subroutine mp_iscatter_d(msg_scatter, msg, root, gid, request)

Scatters data from one processes to all others

Read more…

Arguments

TypeIntentOptionalAttributesName
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 Message passing environment identifier

integer, intent(in) :: gid

Process which scatters data Message passing environment identifier

integer, intent(inout) :: request

private subroutine mp_iscatter_dv2(msg_scatter, msg, root, gid, request)

Scatters data from one processes to all others

Read more…

Arguments

TypeIntentOptionalAttributesName
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 Message passing environment identifier

integer, intent(in) :: gid

Process which scatters data Message passing environment identifier

integer, 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

Read more…

Arguments

TypeIntentOptionalAttributesName
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 Message passing environment identifier

integer, intent(in) :: root

Process which scatters data Message passing environment identifier

integer, intent(in) :: gid

Process which scatters data Message passing environment identifier

integer, intent(inout) :: request

private subroutine mp_gather_d(msg, msg_gather, root, gid)

Gathers a datum from all processes to one

Read more…

Arguments

TypeIntentOptionalAttributesName
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 Message passing environment identifier

integer, intent(in) :: gid

Process which gathers the data Message passing environment identifier

private subroutine mp_gather_dv(msg, msg_gather, root, gid)

Gathers data from all processes to one

Read more…

Arguments

TypeIntentOptionalAttributesName
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
integer, intent(in) :: gid

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

Gathers data from all processes to one

Read more…

Arguments

TypeIntentOptionalAttributesName
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
integer, intent(in) :: gid

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

Gathers data from all processes to one.

Read more…

Arguments

TypeIntentOptionalAttributesName
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 Message passing environment identifier

integer, intent(in) :: comm

Process which gathers the data Message passing environment identifier

private subroutine mp_allgather_d(msgout, msgin, gid)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), intent(in) :: msgout

Datum to send

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

Received data

integer, 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

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), intent(in) :: msgout

Datum to send

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

Received data

integer, intent(in) :: gid

Message passing environment identifier

private subroutine mp_iallgather_d(msgout, msgin, gid, request)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), intent(in) :: msgout

Datum to send

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

Received data

integer, intent(in) :: gid

Message passing environment identifier

integer, intent(inout) :: request

private subroutine mp_allgather_d12(msgout, msgin, gid)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
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) :: 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

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), intent(in), CONTIGUOUS:: msgout(:,:)

Rank-2 data to send

real(kind=real_8), intent(out), CONTIGUOUS:: msgin(:,:,:)
integer, 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

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), intent(in), CONTIGUOUS:: msgout(:,:,:)

Rank-3 data to send

real(kind=real_8), intent(out), CONTIGUOUS:: msgin(:,:,:,:)
integer, 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

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), intent(in), CONTIGUOUS:: msgout(:,:)

Rank-2 data to send

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

private subroutine mp_iallgather_d11(msgout, msgin, gid, request)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), intent(in), CONTIGUOUS:: msgout(:)

Rank-1 data to send

real(kind=real_8), intent(out), CONTIGUOUS:: msgin(:)
integer, intent(in) :: gid
integer, 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

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), intent(in), CONTIGUOUS:: msgout(:)

Rank-2 data to send

real(kind=real_8), intent(out), CONTIGUOUS:: msgin(:,:,:)
integer, intent(in) :: gid
integer, 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

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), intent(in), CONTIGUOUS:: msgout(:,:)

Rank-2 data to send

real(kind=real_8), intent(out), CONTIGUOUS:: msgin(:,:)
integer, intent(in) :: gid
integer, 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

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), intent(in), CONTIGUOUS:: msgout(:,:)

Rank-2 data to send

real(kind=real_8), intent(out), CONTIGUOUS:: msgin(:,:,:,:)
integer, intent(in) :: gid
integer, 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

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), intent(in), CONTIGUOUS:: msgout(:,:,:)

Rank-3 data to send

real(kind=real_8), intent(out), CONTIGUOUS:: msgin(:,:,:)
integer, intent(in) :: gid
integer, intent(out) :: request

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

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

Read more…

Arguments

TypeIntentOptionalAttributesName
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(:)
integer, intent(in) :: gid

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

private subroutine mp_iallgatherv_dv(msgout, msgin, rcount, rdispl, gid, request)

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

Read more…

Arguments

TypeIntentOptionalAttributesName
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(:)
integer, intent(in) :: gid

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

integer, 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

Read more…

Arguments

TypeIntentOptionalAttributesName
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(:,:)
integer, intent(in) :: gid

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

integer, intent(inout) :: request

private subroutine mp_sendrecv_dv(msgin, dest, msgout, source, comm)

Sends and receives vector data

Arguments

TypeIntentOptionalAttributesName
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 Message passing environment identifier

integer, intent(in) :: comm

Process from which to receive Message passing environment identifier

private subroutine mp_isendrecv_d(msgin, dest, msgout, source, comm, send_request, recv_request, tag)

Non-blocking send and receive of a scalar

Read more…

Arguments

TypeIntentOptionalAttributesName
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 Message passing environment identifier

integer, intent(in) :: comm

Process to receive from Message passing environment identifier

integer, intent(out) :: send_request

Request handle for the send Request handle for the receive

integer, 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

Read more…

Arguments

TypeIntentOptionalAttributesName
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 Message passing environment identifier

integer, intent(in) :: comm

Process to receive from Message passing environment identifier

integer, intent(out) :: send_request

Request handle for the send Request handle for the receive

integer, 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_isend_dv(msgin, dest, comm, request, tag)

Non-blocking send of vector data

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), CONTIGUOUS, DIMENSION(:):: msgin
integer, intent(in) :: dest
integer, intent(in) :: comm
integer, intent(out) :: request
integer, intent(in), optional :: tag

private subroutine mp_isend_dm2(msgin, dest, comm, request, tag)

Non-blocking send of matrix data

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=real_8), DIMENSION(:, :), CONTIGUOUS:: msgin
integer, intent(in) :: dest
integer, intent(in) :: comm
integer, intent(out) :: request
integer, intent(in), optional :: tag

private subroutine mp_irecv_dv(msgout, source, comm, request, tag)

Non-blocking receive of vector data