Interface to the message passing library MPI
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
logical, | public, | parameter | :: | dbcsr_is_parallel | = | .FALSE. | |
integer, | public, | parameter | :: | mp_any_tag | = | -1 | |
integer, | public, | parameter | :: | mp_any_source | = | -2 | |
integer, | private, | parameter | :: | mp_comm_null_handle | = | -3 | |
integer, | private, | parameter | :: | mp_comm_self_handle | = | -11 | |
integer, | private, | parameter | :: | mp_comm_world_handle | = | -12 | |
integer, | private, | parameter | :: | mp_request_null_handle | = | -4 | |
integer, | private, | parameter | :: | mp_win_null_handle | = | -5 | |
integer, | private, | parameter | :: | mp_file_null_handle | = | -6 | |
integer, | private, | parameter | :: | mp_info_null_handle | = | -7 | |
integer, | private, | parameter | :: | mp_datatype_null_handle | = | -13 | |
integer, | public, | parameter | :: | mp_status_size | = | -7 | |
integer, | public, | parameter | :: | mp_proc_null | = | -8 | |
integer, | public, | parameter | :: | mp_max_library_version_string | = | 1 | |
integer, | public, | parameter | :: | file_offset | = | int_8 | |
integer, | public, | parameter | :: | address_kind | = | int_8 | |
integer, | public, | parameter | :: | file_amode_create | = | 1 | |
integer, | public, | parameter | :: | file_amode_rdonly | = | 2 | |
integer, | public, | parameter | :: | file_amode_wronly | = | 4 | |
integer, | public, | parameter | :: | file_amode_rdwr | = | 8 | |
integer, | public, | parameter | :: | file_amode_excl | = | 64 | |
integer, | public, | parameter | :: | file_amode_append | = | 128 | |
type(mp_comm_type), | public, | parameter | :: | mp_comm_null | = | mp_comm_type(mp_comm_null_handle) | |
type(mp_comm_type), | public, | parameter | :: | mp_comm_self | = | mp_comm_type(mp_comm_self_handle) | |
type(mp_comm_type), | public, | parameter | :: | mp_comm_world | = | mp_comm_type(mp_comm_world_handle) | |
type(mp_request_type), | public, | parameter | :: | mp_request_null | = | mp_request_type(mp_request_null_handle) | |
type(mp_win_type), | public, | parameter | :: | mp_win_null | = | mp_win_type(mp_win_null_handle) | |
type(mp_file_type), | public, | parameter | :: | mp_file_null | = | mp_file_type(mp_file_null_handle) | |
type(mp_info_type), | public, | parameter | :: | mp_info_null | = | mp_info_type(mp_info_null_handle) | |
integer, | public, | parameter | :: | mpi_character_size | = | 1 | |
integer, | public, | parameter | :: | mpi_integer_size | = | 4 | |
character(len=*), | private, | parameter | :: | moduleN | = | 'dbcsr_mpiwrap' | |
integer, | private, | parameter | :: | MAX_PERF | = | 28 | |
integer, | private, | parameter | :: | max_stack_size | = | 10 | |
integer, | private | :: | stack_pointer | = | 0 | ||
type(mp_perf_env_p_type), | private, | DIMENSION(max_stack_size), TARGET, SAVE | :: | mp_perf_stack | |||
character(len=20), | private, | parameter | :: | sname(MAX_PERF) | = | (/"MP_Group            ", "MP_Bcast            ", "MP_Allreduce        ", "MP_Gather           ", "MP_Sync             ", "MP_Alltoall         ", "MP_SendRecv         ", "MP_ISendRecv        ", "MP_Wait             ", "MP_comm_split       ", "MP_ISend            ", "MP_IRecv            ", "MP_Send             ", "MP_Recv             ", "MP_Memory           ", "MP_Put              ", "MP_Get              ", "MP_Fence            ", "MP_Win_Lock         ", "MP_Win_Create       ", "MP_Win_Free         ", "MP_IBcast           ", "MP_IAllreduce       ", "MP_IScatter         ", "MP_RGet             ", "MP_Isync            ", "MP_Read_All         ", "MP_Write_All        "/) | |
integer, | private, | parameter | :: | intlen | = | BIT_SIZE(0)/8 | |
integer, | private, | parameter | :: | reallen | = | 8 | |
integer, | private, | parameter | :: | loglen | = | BIT_SIZE(0)/8 | |
integer, | private, | parameter | :: | charlen | = | 1 | |
integer, | private, | SAVE | :: | last_mp_perf_env_id | = | 0 |
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.
Note
..mp_world_setup is gone, use mp_environ instead (i.e. give a groupid explicitly)
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(out), | optional | :: | numtask | ||
integer, | intent(out), | optional | :: | taskid | ||
type(mp_comm_type), | intent(in) | :: | groupid |
mpi communicator |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(out) | :: | numtask | |||
integer, | intent(out) | :: | dims(2) | |||
integer, | intent(out) | :: | task_coor(2) | |||
type(mp_comm_type), | intent(in) | :: | groupid |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_comm_type), | intent(in) | :: | comm | |||
integer, | intent(in) | :: | ndims | |||
integer, | intent(out) | :: | dims(ndims) | |||
integer, | intent(out) | :: | task_coor(ndims) | |||
logical, | intent(out) | :: | periods(ndims) |
waits for completion of the given requests
Note
see isendrecv
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_request_type), | intent(inout), | DIMENSION(:) | :: | requests |
waits for completion of the given requests
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_request_type), | intent(inout), | DIMENSION(:, :) | :: | requests |
Tests for completion of the given requests. We use mpi_test so that we can use a single status.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_request_type), | DIMENSION(:) | :: | requests |
the list of requests to test |
logical which determines if requests are complete
Tests for completion of the given request.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_request_type), | intent(inout) | :: | request |
the request |
||
logical, | intent(out) | :: | flag |
logical which determines if the request is completed |
tests for completion of the given requests
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_request_type), | intent(inout), | DIMENSION(:) | :: | requests | ||
integer, | intent(out), | optional | :: | completed | ||
logical, | intent(out), | optional | :: | flag |
tests for completion of the given requests
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_request_type), | intent(inout), | DIMENSION(:, :) | :: | requests | ||
integer, | intent(out), | optional | :: | completed | ||
logical, | intent(out), | optional | :: | flag |
Finds the location of the minimal element in a vector.
MPI mapping mpi_allreduce with the MPI_MINLOC reduction function identifier
Invalid data types This routine is invalid for (int_8) data!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Find location of maximum element among these data (input). |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Finds the location of the maximal element in a vector.
MPI mapping mpi_allreduce with the MPI_MAXLOC reduction function identifier
Invalid data types This routine is invalid for (int_8) data!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Find location of maximum element among these data (input). |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Broadcasts a datum to all processes.
MPI mapping mpi_bcast
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4) | :: | msg |
Datum to broadcast |
|||
integer | :: | source |
Processes which broadcasts |
|||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Broadcasts rank-1 data to all processes
Note
see mp_bcast_i1
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | CONTIGUOUS | :: | msg(:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Broadcasts rank-2 data to all processes
Note
see mp_bcast_i1
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | CONTIGUOUS | :: | msg(:,:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Broadcasts rank-3 data to all processes
Note
see mp_bcast_i1
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | CONTIGUOUS | :: | msg(:,:,:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Broadcasts a datum to all processes.
MPI mapping mpi_bcast
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8) | :: | msg |
Datum to broadcast |
|||
integer | :: | source |
Processes which broadcasts |
|||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Broadcasts rank-1 data to all processes
Note
see mp_bcast_l1
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | CONTIGUOUS | :: | msg(:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Broadcasts rank-2 data to all processes
Note
see mp_bcast_l1
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | CONTIGUOUS | :: | msg(:,:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Broadcasts rank-3 data to all processes
Note
see mp_bcast_l1
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | CONTIGUOUS | :: | msg(:,:,:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Broadcasts a datum to all processes.
MPI mapping mpi_bcast
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8) | :: | msg |
Datum to broadcast |
|||
integer | :: | source |
Processes which broadcasts |
|||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Broadcasts rank-1 data to all processes
Note
see mp_bcast_d1
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | CONTIGUOUS | :: | msg(:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Broadcasts rank-2 data to all processes
Note
see mp_bcast_d1
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | CONTIGUOUS | :: | msg(:,:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Broadcasts rank-3 data to all processes
Note
see mp_bcast_d1
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | CONTIGUOUS | :: | msg(:,:,:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Broadcasts a datum to all processes.
MPI mapping mpi_bcast
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4) | :: | msg |
Datum to broadcast |
|||
integer | :: | source |
Processes which broadcasts |
|||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Broadcasts rank-1 data to all processes
Note
see mp_bcast_r1
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | CONTIGUOUS | :: | msg(:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Broadcasts rank-2 data to all processes
Note
see mp_bcast_r1
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | CONTIGUOUS | :: | msg(:,:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Broadcasts rank-3 data to all processes
Note
see mp_bcast_r1
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | CONTIGUOUS | :: | msg(:,:,:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Broadcasts a datum to all processes.
MPI mapping mpi_bcast
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8) | :: | msg |
Datum to broadcast |
|||
integer | :: | source |
Processes which broadcasts |
|||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Broadcasts rank-1 data to all processes
Note
see mp_bcast_z1
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | CONTIGUOUS | :: | msg(:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Broadcasts rank-2 data to all processes
Note
see mp_bcast_z1
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | CONTIGUOUS | :: | msg(:,:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Broadcasts rank-3 data to all processes
Note
see mp_bcast_z1
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | CONTIGUOUS | :: | msg(:,:,:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Broadcasts a datum to all processes.
MPI mapping mpi_bcast
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4) | :: | msg |
Datum to broadcast |
|||
integer | :: | source |
Processes which broadcasts |
|||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Broadcasts rank-1 data to all processes
Note
see mp_bcast_c1
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | CONTIGUOUS | :: | msg(:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Broadcasts rank-2 data to all processes
Note
see mp_bcast_c1
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | CONTIGUOUS | :: | msg(:,:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Broadcasts rank-3 data to all processes
Note
see mp_bcast_c1
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | CONTIGUOUS | :: | msg(:,:,:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
logical | :: | msg | ||||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
logical, | CONTIGUOUS | :: | msg(:) | |||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=*) | :: | msg | ||||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=*) | :: | msg(:) | ||||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Broadcasts a datum to all processes.
MPI mapping mpi_bcast
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4) | :: | msg |
Datum to broadcast |
|||
integer | :: | source |
Processes which broadcasts |
|||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Broadcasts rank-1 data to all processes
Note
see mp_bcast_i1
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | CONTIGUOUS | :: | msg(:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(inout) | :: | request |
Broadcasts a datum to all processes.
MPI mapping mpi_bcast
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8) | :: | msg |
Datum to broadcast |
|||
integer | :: | source |
Processes which broadcasts |
|||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Broadcasts rank-1 data to all processes
Note
see mp_bcast_l1
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | CONTIGUOUS | :: | msg(:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(inout) | :: | request |
Broadcasts a datum to all processes.
MPI mapping mpi_bcast
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8) | :: | msg |
Datum to broadcast |
|||
integer | :: | source |
Processes which broadcasts |
|||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Broadcasts rank-1 data to all processes
Note
see mp_bcast_d1
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | CONTIGUOUS | :: | msg(:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(inout) | :: | request |
Broadcasts a datum to all processes.
MPI mapping mpi_bcast
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4) | :: | msg |
Datum to broadcast |
|||
integer | :: | source |
Processes which broadcasts |
|||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Broadcasts rank-1 data to all processes
Note
see mp_bcast_r1
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | CONTIGUOUS | :: | msg(:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(inout) | :: | request |
Broadcasts a datum to all processes.
MPI mapping mpi_bcast
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8) | :: | msg |
Datum to broadcast |
|||
integer | :: | source |
Processes which broadcasts |
|||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Broadcasts rank-1 data to all processes
Note
see mp_bcast_z1
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | CONTIGUOUS | :: | msg(:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(inout) | :: | request |
Broadcasts a datum to all processes.
MPI mapping mpi_bcast
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4) | :: | msg |
Datum to broadcast |
|||
integer | :: | source |
Processes which broadcasts |
|||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Broadcasts rank-1 data to all processes
Note
see mp_bcast_c1
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | CONTIGUOUS | :: | msg(:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(inout) | :: | request |
Sums a datum from all processes with result left on all processes.
MPI mapping mpi_allreduce
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(inout) | :: | msg |
Datum to sum (input) and result (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Element-wise sum of a rank-1 array on all processes.
Note
see mp_sum_i
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Vector to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of a rank-2 array on all processes.
Note
see mp_sum_i
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(inout), | CONTIGUOUS | :: | msg(:,:) |
Matrix to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of a rank-3 array on all processes.
Note
see mp_sum_i
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(inout), | CONTIGUOUS | :: | msg(:,:,:) |
Array to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of a rank-4 array on all processes.
Note
see mp_sum_i
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(inout), | CONTIGUOUS | :: | msg(:,:,:,:) |
Array to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Sums a datum from all processes with result left on all processes.
MPI mapping mpi_allreduce
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(inout) | :: | msg |
Datum to sum (input) and result (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Element-wise sum of a rank-1 array on all processes.
Note
see mp_sum_l
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Vector to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of a rank-2 array on all processes.
Note
see mp_sum_l
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(inout), | CONTIGUOUS | :: | msg(:,:) |
Matrix to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of a rank-3 array on all processes.
Note
see mp_sum_l
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(inout), | CONTIGUOUS | :: | msg(:,:,:) |
Array to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of a rank-4 array on all processes.
Note
see mp_sum_l
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(inout), | CONTIGUOUS | :: | msg(:,:,:,:) |
Array to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Sums a datum from all processes with result left on all processes.
MPI mapping mpi_allreduce
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(inout) | :: | msg |
Datum to sum (input) and result (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Element-wise sum of a rank-1 array on all processes.
Note
see mp_sum_r
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Vector to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of a rank-2 array on all processes.
Note
see mp_sum_r
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:,:) |
Matrix to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of a rank-3 array on all processes.
Note
see mp_sum_r
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:,:,:) |
Array to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of a rank-4 array on all processes.
Note
see mp_sum_r
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:,:,:,:) |
Array to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Sums a datum from all processes with result left on all processes.
MPI mapping mpi_allreduce
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(inout) | :: | msg |
Datum to sum (input) and result (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Element-wise sum of a rank-1 array on all processes.
Note
see mp_sum_d
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Vector to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of a rank-2 array on all processes.
Note
see mp_sum_d
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:,:) |
Matrix to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of a rank-3 array on all processes.
Note
see mp_sum_d
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:,:,:) |
Array to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of a rank-4 array on all processes.
Note
see mp_sum_d
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:,:,:,:) |
Array to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Sums a datum from all processes with result left on all processes.
MPI mapping mpi_allreduce
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(inout) | :: | msg |
Datum to sum (input) and result (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Element-wise sum of a rank-1 array on all processes.
Note
see mp_sum_c
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Vector to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of a rank-2 array on all processes.
Note
see mp_sum_c
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:,:) |
Matrix to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of a rank-3 array on all processes.
Note
see mp_sum_c
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:,:,:) |
Array to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of a rank-4 array on all processes.
Note
see mp_sum_c
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:,:,:,:) |
Array to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Sums a datum from all processes with result left on all processes.
MPI mapping mpi_allreduce
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(inout) | :: | msg |
Datum to sum (input) and result (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Element-wise sum of a rank-1 array on all processes.
Note
see mp_sum_z
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Vector to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of a rank-2 array on all processes.
Note
see mp_sum_z
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:,:) |
Matrix to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of a rank-3 array on all processes.
Note
see mp_sum_z
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:,:,:) |
Array to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of a rank-4 array on all processes.
Note
see mp_sum_z
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:,:,:,:) |
Array to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of data from all processes with result left only on one.
MPI mapping mpi_reduce
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Vector to sum (input) and (only on process root) result (output) |
|
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Element-wise sum of data from all processes with result left only on one.
Note
see mp_sum_root_iv
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(inout), | CONTIGUOUS | :: | msg(:,:) |
Matrix to sum (input) and (only on process root) result (output) |
|
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of data from all processes with result left only on one.
MPI mapping mpi_reduce
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Vector to sum (input) and (only on process root) result (output) |
|
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Element-wise sum of data from all processes with result left only on one.
Note
see mp_sum_root_lv
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(inout), | CONTIGUOUS | :: | msg(:,:) |
Matrix to sum (input) and (only on process root) result (output) |
|
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of data from all processes with result left only on one.
MPI mapping mpi_reduce
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Vector to sum (input) and (only on process root) result (output) |
|
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Element-wise sum of data from all processes with result left only on one.
Note
see mp_sum_root_rv
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:,:) |
Matrix to sum (input) and (only on process root) result (output) |
|
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of data from all processes with result left only on one.
MPI mapping mpi_reduce
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Vector to sum (input) and (only on process root) result (output) |
|
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Element-wise sum of data from all processes with result left only on one.
Note
see mp_sum_root_dv
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:,:) |
Matrix to sum (input) and (only on process root) result (output) |
|
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of data from all processes with result left only on one.
MPI mapping mpi_reduce
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Vector to sum (input) and (only on process root) result (output) |
|
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Element-wise sum of data from all processes with result left only on one.
Note
see mp_sum_root_cv
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:,:) |
Matrix to sum (input) and (only on process root) result (output) |
|
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of data from all processes with result left only on one.
MPI mapping mpi_reduce
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Vector to sum (input) and (only on process root) result (output) |
|
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Element-wise sum of data from all processes with result left only on one.
Note
see mp_sum_root_zv
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:,:) |
Matrix to sum (input) and (only on process root) result (output) |
|
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Logical OR reduction
MPI mapping mpi_allreduce
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
logical, | intent(inout) | :: | msg |
Datum to perform inclusive disjunction (input) and resultant inclusive disjunction (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Logical OR reduction
MPI mapping mpi_allreduce
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
logical, | intent(inout), | DIMENSION(:), CONTIGUOUS | :: | msg |
Datum to perform inclusive disjunction (input) and resultant inclusive disjunction (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Element-wise sum of a rank-1 array on all processes.
Note
see mp_sum_i
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Vector to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(inout) | :: | request |
Element-wise sum of a rank-1 array on all processes.
Note
see mp_sum_l
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Vector to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(inout) | :: | request |
Element-wise sum of a rank-1 array on all processes.
Note
see mp_sum_d
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Vector to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(inout) | :: | request |
Element-wise sum of a rank-1 array on all processes.
Note
see mp_sum_r
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Vector to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(inout) | :: | request |
Element-wise sum of a rank-1 array on all processes.
Note
see mp_sum_z
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Vector to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(inout) | :: | request |
Element-wise sum of a rank-1 array on all processes.
Note
see mp_sum_c
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Vector to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(inout) | :: | request |
Logical OR reduction
MPI mapping mpi_allreduce
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
logical, | intent(inout), | DIMENSION(:), CONTIGUOUS | :: | msg |
Datum to perform inclusive disjunction (input) and resultant inclusive disjunction (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Partial sum of data from all processes with result on each process.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msg(:,:) |
Matrix to sum (input) |
|
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | res(:,:) |
Matrix containing result (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Partial sum of data from all processes with result on each process.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msg(:,:) |
Matrix to sum (input) |
|
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | res(:,:) |
Matrix containing result (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Partial sum of data from all processes with result on each process.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msg(:,:) |
Matrix to sum (input) |
|
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | res(:,:) |
Matrix containing result (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Partial sum of data from all processes with result on each process.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msg(:,:) |
Matrix to sum (input) |
|
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | res(:,:) |
Matrix containing result (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Partial sum of data from all processes with result on each process.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msg(:,:) |
Matrix to sum (input) |
|
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | res(:,:) |
Matrix containing result (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Partial sum of data from all processes with result on each process.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msg(:,:) |
Matrix to sum (input) |
|
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | res(:,:) |
Matrix containing result (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Finds the maximum of a datum with the result left on all processes.
MPI mapping mpi_allreduce
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(inout) | :: | msg |
Find maximum among these data (input) and maximum (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Finds the element-wise maximum of a vector with the result left on all processes.
Note
see mp_max_i
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Find maximum among these data (input) and maximum (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Finds the maximum of a datum with the result left on all processes.
MPI mapping mpi_allreduce
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(inout) | :: | msg |
Find maximum among these data (input) and maximum (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Finds the element-wise maximum of a vector with the result left on all processes.
Note
see mp_max_l
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Find maximum among these data (input) and maximum (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Finds the maximum of a datum with the result left on all processes.
MPI mapping mpi_allreduce
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(inout) | :: | msg |
Find maximum among these data (input) and maximum (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Finds the element-wise maximum of a vector with the result left on all processes.
Note
see mp_max_d
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Find maximum among these data (input) and maximum (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Finds the maximum of a datum with the result left on all processes.
MPI mapping mpi_allreduce
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(inout) | :: | msg |
Find maximum among these data (input) and maximum (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Finds the element-wise maximum of a vector with the result left on all processes.
Note
see mp_max_r
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Find maximum among these data (input) and maximum (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Finds the maximum of a datum with the result left on all processes.
MPI mapping mpi_allreduce
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(inout) | :: | msg |
Find maximum among these data (input) and maximum (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Finds the element-wise maximum of a vector with the result left on all processes.
Note
see mp_max_z
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Find maximum among these data (input) and maximum (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Finds the maximum of a datum with the result left on all processes.
MPI mapping mpi_allreduce
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(inout) | :: | msg |
Find maximum among these data (input) and maximum (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Finds the element-wise maximum of a vector with the result left on all processes.
Note
see mp_max_c
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Find maximum among these data (input) and maximum (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Finds the minimum of a datum with the result left on all processes.
MPI mapping mpi_allreduce
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(inout) | :: | msg |
Find minimum among these data (input) and maximum (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Finds the element-wise minimum of vector with the result left on all processes.
MPI mapping mpi_allreduce
Note
see mp_min_i
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Find minimum among these data (input) and maximum (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Finds the minimum of a datum with the result left on all processes.
MPI mapping mpi_allreduce
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(inout) | :: | msg |
Find minimum among these data (input) and maximum (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Finds the element-wise minimum of vector with the result left on all processes.
MPI mapping mpi_allreduce
Note
see mp_min_l
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Find minimum among these data (input) and maximum (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Finds the minimum of a datum with the result left on all processes.
MPI mapping mpi_allreduce
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(inout) | :: | msg |
Find minimum among these data (input) and maximum (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Finds the element-wise minimum of vector with the result left on all processes.
MPI mapping mpi_allreduce
Note
see mp_min_d
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Find minimum among these data (input) and maximum (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Finds the minimum of a datum with the result left on all processes.
MPI mapping mpi_allreduce
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(inout) | :: | msg |
Find minimum among these data (input) and maximum (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Finds the element-wise minimum of vector with the result left on all processes.
MPI mapping mpi_allreduce
Note
see mp_min_r
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Find minimum among these data (input) and maximum (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Finds the minimum of a datum with the result left on all processes.
MPI mapping mpi_allreduce
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(inout) | :: | msg |
Find minimum among these data (input) and maximum (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Finds the element-wise minimum of vector with the result left on all processes.
MPI mapping mpi_allreduce
Note
see mp_min_z
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Find minimum among these data (input) and maximum (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Finds the minimum of a datum with the result left on all processes.
MPI mapping mpi_allreduce
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(inout) | :: | msg |
Find minimum among these data (input) and maximum (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Finds the element-wise minimum of vector with the result left on all processes.
MPI mapping mpi_allreduce
Note
see mp_min_c
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Find minimum among these data (input) and maximum (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Multiplies a set of numbers scattered across a number of processes, then replicates the result.
MPI mapping mpi_allreduce
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(inout) | :: | msg |
a number to multiply (input) and result (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
message passing environment identifier |
Multiplies a set of numbers scattered across a number of processes, then replicates the result.
MPI mapping mpi_allreduce
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(inout) | :: | msg |
a number to multiply (input) and result (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
message passing environment identifier |
Multiplies a set of numbers scattered across a number of processes, then replicates the result.
MPI mapping mpi_allreduce
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(inout) | :: | msg |
a number to multiply (input) and result (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
message passing environment identifier |
Multiplies a set of numbers scattered across a number of processes, then replicates the result.
MPI mapping mpi_allreduce
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(inout) | :: | msg |
a number to multiply (input) and result (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
message passing environment identifier |
Multiplies a set of numbers scattered across a number of processes, then replicates the result.
MPI mapping mpi_allreduce
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(inout) | :: | msg |
a number to multiply (input) and result (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
message passing environment identifier |
Multiplies a set of numbers scattered across a number of processes, then replicates the result.
MPI mapping mpi_allreduce
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(inout) | :: | msg |
a number to multiply (input) and result (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
message passing environment identifier |
Gathers a datum from all processes to one
MPI mapping mpi_gather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in) | :: | msg |
Datum to send to root |
||
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msg_gather(:) |
Received data (on root) |
|
integer, | intent(in) | :: | root |
Process which gathers the data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers data from all processes to one
Data length All data (msg) is equal-sized
MPI mapping mpi_gather
Note
see mp_gather_i
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msg(:,:) |
Datum to send to root |
|
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msg_gather(:,:) | ||
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers data from all processes to one
Data length All data (msg) is equal-sized
MPI mapping mpi_gather
Note
see mp_gather_i
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msg(:) |
Datum to send to root |
|
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msg_gather(:) | ||
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers a datum from all processes to one
MPI mapping mpi_gather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in) | :: | msg |
Datum to send to root |
||
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msg_gather(:) |
Received data (on root) |
|
integer, | intent(in) | :: | root |
Process which gathers the data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers data from all processes to one
Data length All data (msg) is equal-sized
MPI mapping mpi_gather
Note
see mp_gather_l
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msg(:,:) |
Datum to send to root |
|
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msg_gather(:,:) | ||
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers data from all processes to one
Data length All data (msg) is equal-sized
MPI mapping mpi_gather
Note
see mp_gather_l
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msg(:) |
Datum to send to root |
|
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msg_gather(:) | ||
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers a datum from all processes to one
MPI mapping mpi_gather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in) | :: | msg |
Datum to send to root |
||
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msg_gather(:) |
Received data (on root) |
|
integer, | intent(in) | :: | root |
Process which gathers the data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers data from all processes to one
Data length All data (msg) is equal-sized
MPI mapping mpi_gather
Note
see mp_gather_d
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msg(:,:) |
Datum to send to root |
|
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msg_gather(:,:) | ||
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers data from all processes to one
Data length All data (msg) is equal-sized
MPI mapping mpi_gather
Note
see mp_gather_d
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msg(:) |
Datum to send to root |
|
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msg_gather(:) | ||
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers a datum from all processes to one
MPI mapping mpi_gather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in) | :: | msg |
Datum to send to root |
||
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msg_gather(:) |
Received data (on root) |
|
integer, | intent(in) | :: | root |
Process which gathers the data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers data from all processes to one
Data length All data (msg) is equal-sized
MPI mapping mpi_gather
Note
see mp_gather_r
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msg(:,:) |
Datum to send to root |
|
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msg_gather(:,:) | ||
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers data from all processes to one
Data length All data (msg) is equal-sized
MPI mapping mpi_gather
Note
see mp_gather_r
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msg(:) |
Datum to send to root |
|
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msg_gather(:) | ||
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers a datum from all processes to one
MPI mapping mpi_gather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in) | :: | msg |
Datum to send to root |
||
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msg_gather(:) |
Received data (on root) |
|
integer, | intent(in) | :: | root |
Process which gathers the data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers data from all processes to one
Data length All data (msg) is equal-sized
MPI mapping mpi_gather
Note
see mp_gather_z
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msg(:,:) |
Datum to send to root |
|
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msg_gather(:,:) | ||
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers data from all processes to one
Data length All data (msg) is equal-sized
MPI mapping mpi_gather
Note
see mp_gather_z
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msg(:) |
Datum to send to root |
|
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msg_gather(:) | ||
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers a datum from all processes to one
MPI mapping mpi_gather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in) | :: | msg |
Datum to send to root |
||
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msg_gather(:) |
Received data (on root) |
|
integer, | intent(in) | :: | root |
Process which gathers the data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers data from all processes to one
Data length All data (msg) is equal-sized
MPI mapping mpi_gather
Note
see mp_gather_c
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msg(:,:) |
Datum to send to root |
|
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msg_gather(:,:) | ||
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers data from all processes to one
Data length All data (msg) is equal-sized
MPI mapping mpi_gather
Note
see mp_gather_c
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msg(:) |
Datum to send to root |
|
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msg_gather(:) | ||
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers data from all processes to one.
Data length Data can have different lengths
Offsets Offsets start at 0
MPI mapping mpi_gather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | DIMENSION(:), CONTIGUOUS | :: | sendbuf |
Data to send to root |
|
integer(kind=int_4), | intent(out), | DIMENSION(:), CONTIGUOUS | :: | recvbuf |
Received data (on root) |
|
integer, | intent(in), | DIMENSION(:), CONTIGUOUS | :: | recvcounts |
Sizes of data received from processes Offsets of data received from processes |
|
integer, | intent(in), | DIMENSION(:), CONTIGUOUS | :: | displs |
Sizes of data received from processes Offsets of data received from processes |
|
integer, | intent(in) | :: | root |
Process which gathers the data |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
Gathers data from all processes to one.
Data length Data can have different lengths
Offsets Offsets start at 0
MPI mapping mpi_gather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | DIMENSION(:), CONTIGUOUS | :: | sendbuf |
Data to send to root |
|
integer(kind=int_8), | intent(out), | DIMENSION(:), CONTIGUOUS | :: | recvbuf |
Received data (on root) |
|
integer, | intent(in), | DIMENSION(:), CONTIGUOUS | :: | recvcounts |
Sizes of data received from processes Offsets of data received from processes |
|
integer, | intent(in), | DIMENSION(:), CONTIGUOUS | :: | displs |
Sizes of data received from processes Offsets of data received from processes |
|
integer, | intent(in) | :: | root |
Process which gathers the data |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
Gathers data from all processes to one.
Data length Data can have different lengths
Offsets Offsets start at 0
MPI mapping mpi_gather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | DIMENSION(:), CONTIGUOUS | :: | sendbuf |
Data to send to root |
|
real(kind=real_8), | intent(out), | DIMENSION(:), CONTIGUOUS | :: | recvbuf |
Received data (on root) |
|
integer, | intent(in), | DIMENSION(:), CONTIGUOUS | :: | recvcounts |
Sizes of data received from processes Offsets of data received from processes |
|
integer, | intent(in), | DIMENSION(:), CONTIGUOUS | :: | displs |
Sizes of data received from processes Offsets of data received from processes |
|
integer, | intent(in) | :: | root |
Process which gathers the data |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
Gathers data from all processes to one.
Data length Data can have different lengths
Offsets Offsets start at 0
MPI mapping mpi_gather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | DIMENSION(:), CONTIGUOUS | :: | sendbuf |
Data to send to root |
|
real(kind=real_4), | intent(out), | DIMENSION(:), CONTIGUOUS | :: | recvbuf |
Received data (on root) |
|
integer, | intent(in), | DIMENSION(:), CONTIGUOUS | :: | recvcounts |
Sizes of data received from processes Offsets of data received from processes |
|
integer, | intent(in), | DIMENSION(:), CONTIGUOUS | :: | displs |
Sizes of data received from processes Offsets of data received from processes |
|
integer, | intent(in) | :: | root |
Process which gathers the data |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
Gathers data from all processes to one.
Data length Data can have different lengths
Offsets Offsets start at 0
MPI mapping mpi_gather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | DIMENSION(:), CONTIGUOUS | :: | sendbuf |
Data to send to root |
|
complex(kind=real_8), | intent(out), | DIMENSION(:), CONTIGUOUS | :: | recvbuf |
Received data (on root) |
|
integer, | intent(in), | DIMENSION(:), CONTIGUOUS | :: | recvcounts |
Sizes of data received from processes Offsets of data received from processes |
|
integer, | intent(in), | DIMENSION(:), CONTIGUOUS | :: | displs |
Sizes of data received from processes Offsets of data received from processes |
|
integer, | intent(in) | :: | root |
Process which gathers the data |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
Gathers data from all processes to one.
Data length Data can have different lengths
Offsets Offsets start at 0
MPI mapping mpi_gather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | DIMENSION(:), CONTIGUOUS | :: | sendbuf |
Data to send to root |
|
complex(kind=real_4), | intent(out), | DIMENSION(:), CONTIGUOUS | :: | recvbuf |
Received data (on root) |
|
integer, | intent(in), | DIMENSION(:), CONTIGUOUS | :: | recvcounts |
Sizes of data received from processes Offsets of data received from processes |
|
integer, | intent(in), | DIMENSION(:), CONTIGUOUS | :: | displs |
Sizes of data received from processes Offsets of data received from processes |
|
integer, | intent(in) | :: | root |
Process which gathers the data |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
Todo
move allgatherv to a separate declaration
Gathers a datum from all processes and all processes receive the same data
Data size All processes send equal-sized data
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in) | :: | msgout |
Datum to send |
||
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers a datum from all processes and all processes receive the same data
Data size All processes send equal-sized data
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in) | :: | msgout |
Datum to send |
||
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers vector data from all processes and all processes receive the same data
Data size All processes send equal-sized data
Ranks The last rank counts the processes
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers matrix data from all processes and all processes receive the same data
Note
see mp_allgather_i12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers rank-3 data from all processes and all processes receive the same data
Note
see mp_allgather_i12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msgout(:,:,:) |
Rank-3 data to send |
|
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers rank-2 data from all processes and all processes receive the same data
Note
see mp_allgather_i12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers a datum from all processes and all processes receive the same data
Data size All processes send equal-sized data
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in) | :: | msgout |
Datum to send |
||
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers a datum from all processes and all processes receive the same data
Data size All processes send equal-sized data
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in) | :: | msgout |
Datum to send |
||
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers vector data from all processes and all processes receive the same data
Data size All processes send equal-sized data
Ranks The last rank counts the processes
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers matrix data from all processes and all processes receive the same data
Note
see mp_allgather_l12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers rank-3 data from all processes and all processes receive the same data
Note
see mp_allgather_l12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msgout(:,:,:) |
Rank-3 data to send |
|
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers rank-2 data from all processes and all processes receive the same data
Note
see mp_allgather_l12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers a datum from all processes and all processes receive the same data
Data size All processes send equal-sized data
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in) | :: | msgout |
Datum to send |
||
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers a datum from all processes and all processes receive the same data
Data size All processes send equal-sized data
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in) | :: | msgout |
Datum to send |
||
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers vector data from all processes and all processes receive the same data
Data size All processes send equal-sized data
Ranks The last rank counts the processes
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers matrix data from all processes and all processes receive the same data
Note
see mp_allgather_r12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers rank-3 data from all processes and all processes receive the same data
Note
see mp_allgather_r12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:,:,:) |
Rank-3 data to send |
|
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers rank-2 data from all processes and all processes receive the same data
Note
see mp_allgather_r12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers a datum from all processes and all processes receive the same data
Data size All processes send equal-sized data
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in) | :: | msgout |
Datum to send |
||
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers a datum from all processes and all processes receive the same data
Data size All processes send equal-sized data
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in) | :: | msgout |
Datum to send |
||
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers vector data from all processes and all processes receive the same data
Data size All processes send equal-sized data
Ranks The last rank counts the processes
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers matrix data from all processes and all processes receive the same data
Note
see mp_allgather_d12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers rank-3 data from all processes and all processes receive the same data
Note
see mp_allgather_d12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:,:,:) |
Rank-3 data to send |
|
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers rank-2 data from all processes and all processes receive the same data
Note
see mp_allgather_d12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers a datum from all processes and all processes receive the same data
Data size All processes send equal-sized data
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in) | :: | msgout |
Datum to send |
||
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers a datum from all processes and all processes receive the same data
Data size All processes send equal-sized data
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in) | :: | msgout |
Datum to send |
||
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers vector data from all processes and all processes receive the same data
Data size All processes send equal-sized data
Ranks The last rank counts the processes
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers matrix data from all processes and all processes receive the same data
Note
see mp_allgather_c12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers rank-3 data from all processes and all processes receive the same data
Note
see mp_allgather_c12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:,:,:) |
Rank-3 data to send |
|
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers rank-2 data from all processes and all processes receive the same data
Note
see mp_allgather_c12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers a datum from all processes and all processes receive the same data
Data size All processes send equal-sized data
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in) | :: | msgout |
Datum to send |
||
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers a datum from all processes and all processes receive the same data
Data size All processes send equal-sized data
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in) | :: | msgout |
Datum to send |
||
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers vector data from all processes and all processes receive the same data
Data size All processes send equal-sized data
Ranks The last rank counts the processes
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers matrix data from all processes and all processes receive the same data
Note
see mp_allgather_z12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers rank-3 data from all processes and all processes receive the same data
Note
see mp_allgather_z12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:,:,:) |
Rank-3 data to send |
|
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers rank-2 data from all processes and all processes receive the same data
Note
see mp_allgather_z12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers vector data from all processes and all processes receive the same data
Data size Processes can send different-sized data
Ranks The last rank counts the processes
Offsets Offsets are from 0
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:) | ||
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Size of sent data for every process Offset of sent data for every process Message passing environment identifier |
Gathers vector data from all processes and all processes receive the same data
Data size Processes can send different-sized data
Ranks The last rank counts the processes
Offsets Offsets are from 0
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:) | ||
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Size of sent data for every process Offset of sent data for every process Message passing environment identifier |
Gathers vector data from all processes and all processes receive the same data
Data size Processes can send different-sized data
Ranks The last rank counts the processes
Offsets Offsets are from 0
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:) | ||
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Size of sent data for every process Offset of sent data for every process Message passing environment identifier |
Gathers vector data from all processes and all processes receive the same data
Data size Processes can send different-sized data
Ranks The last rank counts the processes
Offsets Offsets are from 0
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:) | ||
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Size of sent data for every process Offset of sent data for every process Message passing environment identifier |
Gathers vector data from all processes and all processes receive the same data
Data size Processes can send different-sized data
Ranks The last rank counts the processes
Offsets Offsets are from 0
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:) | ||
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Size of sent data for every process Offset of sent data for every process Message passing environment identifier |
Gathers vector data from all processes and all processes receive the same data
Data size Processes can send different-sized data
Ranks The last rank counts the processes
Offsets Offsets are from 0
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:) | ||
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Size of sent data for every process Offset of sent data for every process Message passing environment identifier |
Gathers a datum from all processes and all processes receive the same data
Data size All processes send equal-sized data
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in) | :: | msgout |
Datum to send |
||
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Gathers a datum from all processes and all processes receive the same data
Data size All processes send equal-sized data
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in) | :: | msgout |
Datum to send |
||
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Gathers a datum from all processes and all processes receive the same data
Data size All processes send equal-sized data
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in) | :: | msgout |
Datum to send |
||
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Gathers a datum from all processes and all processes receive the same data
Data size All processes send equal-sized data
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in) | :: | msgout |
Datum to send |
||
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Gathers a datum from all processes and all processes receive the same data
Data size All processes send equal-sized data
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in) | :: | msgout |
Datum to send |
||
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Gathers a datum from all processes and all processes receive the same data
Data size All processes send equal-sized data
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in) | :: | msgout |
Datum to send |
||
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Gathers rank-1 data from all processes and all processes receive the same data
Note
see mp_allgather_i11
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msgin(:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-1 data from all processes and all processes receive the same data
Note
see mp_allgather_l11
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msgin(:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-1 data from all processes and all processes receive the same data
Note
see mp_allgather_r11
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-1 data from all processes and all processes receive the same data
Note
see mp_allgather_d11
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-1 data from all processes and all processes receive the same data
Note
see mp_allgather_c11
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-1 data from all processes and all processes receive the same data
Note
see mp_allgather_z11
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-2 data from all processes and all processes receive the same data
Note
see mp_allgather_i12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-2 data to send |
|
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-2 data from all processes and all processes receive the same data
Note
see mp_allgather_l12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-2 data to send |
|
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-2 data from all processes and all processes receive the same data
Note
see mp_allgather_r12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-2 data to send |
|
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-2 data from all processes and all processes receive the same data
Note
see mp_allgather_d12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-2 data to send |
|
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-2 data from all processes and all processes receive the same data
Note
see mp_allgather_c12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-2 data to send |
|
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-2 data from all processes and all processes receive the same data
Note
see mp_allgather_z12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-2 data to send |
|
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-2 data from all processes and all processes receive the same data
Note
see mp_allgather_i12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-2 data from all processes and all processes receive the same data
Note
see mp_allgather_l12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-2 data from all processes and all processes receive the same data
Note
see mp_allgather_r12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-2 data from all processes and all processes receive the same data
Note
see mp_allgather_d12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-2 data from all processes and all processes receive the same data
Note
see mp_allgather_c12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-2 data from all processes and all processes receive the same data
Note
see mp_allgather_z12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-2 data from all processes and all processes receive the same data
Note
see mp_allgather_i12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-2 data from all processes and all processes receive the same data
Note
see mp_allgather_l12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-2 data from all processes and all processes receive the same data
Note
see mp_allgather_r12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-2 data from all processes and all processes receive the same data
Note
see mp_allgather_d12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-2 data from all processes and all processes receive the same data
Note
see mp_allgather_c12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-2 data from all processes and all processes receive the same data
Note
see mp_allgather_z12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-3 data from all processes and all processes receive the same data
Note
see mp_allgather_i12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msgout(:,:,:) |
Rank-3 data to send |
|
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-3 data from all processes and all processes receive the same data
Note
see mp_allgather_l12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msgout(:,:,:) |
Rank-3 data to send |
|
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-3 data from all processes and all processes receive the same data
Note
see mp_allgather_r12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:,:,:) |
Rank-3 data to send |
|
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-3 data from all processes and all processes receive the same data
Note
see mp_allgather_d12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:,:,:) |
Rank-3 data to send |
|
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-3 data from all processes and all processes receive the same data
Note
see mp_allgather_c12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:,:,:) |
Rank-3 data to send |
|
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-3 data from all processes and all processes receive the same data
Note
see mp_allgather_z12
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:,:,:) |
Rank-3 data to send |
|
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers vector data from all processes and all processes receive the same data
Data size Processes can send different-sized data
Ranks The last rank counts the processes
Offsets Offsets are from 0
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:) | ||
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Size of sent data for every process Offset of sent data for every process Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Gathers vector data from all processes and all processes receive the same data
Data size Processes can send different-sized data
Ranks The last rank counts the processes
Offsets Offsets are from 0
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:,:) | ||
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Size of sent data for every process Offset of sent data for every process Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Gathers vector data from all processes and all processes receive the same data
Data size Processes can send different-sized data
Ranks The last rank counts the processes
Offsets Offsets are from 0
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:) | ||
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Size of sent data for every process Offset of sent data for every process Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Gathers vector data from all processes and all processes receive the same data
Data size Processes can send different-sized data
Ranks The last rank counts the processes
Offsets Offsets are from 0
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:,:) | ||
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Size of sent data for every process Offset of sent data for every process Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Gathers vector data from all processes and all processes receive the same data
Data size Processes can send different-sized data
Ranks The last rank counts the processes
Offsets Offsets are from 0
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:) | ||
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Size of sent data for every process Offset of sent data for every process Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Gathers vector data from all processes and all processes receive the same data
Data size Processes can send different-sized data
Ranks The last rank counts the processes
Offsets Offsets are from 0
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:,:) | ||
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Size of sent data for every process Offset of sent data for every process Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Gathers vector data from all processes and all processes receive the same data
Data size Processes can send different-sized data
Ranks The last rank counts the processes
Offsets Offsets are from 0
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:) | ||
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Size of sent data for every process Offset of sent data for every process Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Gathers vector data from all processes and all processes receive the same data
Data size Processes can send different-sized data
Ranks The last rank counts the processes
Offsets Offsets are from 0
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:,:) | ||
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Size of sent data for every process Offset of sent data for every process Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Gathers vector data from all processes and all processes receive the same data
Data size Processes can send different-sized data
Ranks The last rank counts the processes
Offsets Offsets are from 0
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:) | ||
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Size of sent data for every process Offset of sent data for every process Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Gathers vector data from all processes and all processes receive the same data
Data size Processes can send different-sized data
Ranks The last rank counts the processes
Offsets Offsets are from 0
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:,:) | ||
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Size of sent data for every process Offset of sent data for every process Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Gathers vector data from all processes and all processes receive the same data
Data size Processes can send different-sized data
Ranks The last rank counts the processes
Offsets Offsets are from 0
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:) | ||
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Size of sent data for every process Offset of sent data for every process Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Gathers vector data from all processes and all processes receive the same data
Data size Processes can send different-sized data
Ranks The last rank counts the processes
Offsets Offsets are from 0
MPI mapping mpi_allgather
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:,:) | ||
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Size of sent data for every process Offset of sent data for every process Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Scatters data from one processes to all others
MPI mapping mpi_scatter
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msg_scatter(:) |
Data to scatter (for root process) |
|
integer(kind=int_4), | intent(inout) | :: | msg | |||
integer, | intent(in) | :: | root |
Process which scatters data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Scatters data from one processes to all others
MPI mapping mpi_scatter
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msg_scatter(:) |
Data to scatter (for root process) |
|
integer(kind=int_8), | intent(inout) | :: | msg | |||
integer, | intent(in) | :: | root |
Process which scatters data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Scatters data from one processes to all others
MPI mapping mpi_scatter
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msg_scatter(:) |
Data to scatter (for root process) |
|
real(kind=real_4), | intent(inout) | :: | msg | |||
integer, | intent(in) | :: | root |
Process which scatters data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Scatters data from one processes to all others
MPI mapping mpi_scatter
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msg_scatter(:) |
Data to scatter (for root process) |
|
real(kind=real_8), | intent(inout) | :: | msg | |||
integer, | intent(in) | :: | root |
Process which scatters data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Scatters data from one processes to all others
MPI mapping mpi_scatter
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msg_scatter(:) |
Data to scatter (for root process) |
|
complex(kind=real_4), | intent(inout) | :: | msg | |||
integer, | intent(in) | :: | root |
Process which scatters data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Scatters data from one processes to all others
MPI mapping mpi_scatter
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msg_scatter(:) |
Data to scatter (for root process) |
|
complex(kind=real_8), | intent(inout) | :: | msg | |||
integer, | intent(in) | :: | root |
Process which scatters data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Scatters data from one processes to all others
MPI mapping mpi_scatter
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msg_scatter(:,:) |
Data to scatter (for root process) |
|
integer(kind=int_4), | intent(inout), | CONTIGUOUS | :: | msg(:) | ||
integer, | intent(in) | :: | root |
Process which scatters data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Scatters data from one processes to all others
MPI mapping mpi_scatter
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msg_scatter(:,:) |
Data to scatter (for root process) |
|
integer(kind=int_8), | intent(inout), | CONTIGUOUS | :: | msg(:) | ||
integer, | intent(in) | :: | root |
Process which scatters data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Scatters data from one processes to all others
MPI mapping mpi_scatter
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msg_scatter(:,:) |
Data to scatter (for root process) |
|
real(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:) | ||
integer, | intent(in) | :: | root |
Process which scatters data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Scatters data from one processes to all others
MPI mapping mpi_scatter
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msg_scatter(:,:) |
Data to scatter (for root process) |
|
real(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:) | ||
integer, | intent(in) | :: | root |
Process which scatters data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Scatters data from one processes to all others
MPI mapping mpi_scatter
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msg_scatter(:,:) |
Data to scatter (for root process) |
|
complex(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:) | ||
integer, | intent(in) | :: | root |
Process which scatters data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Scatters data from one processes to all others
MPI mapping mpi_scatter
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msg_scatter(:,:) |
Data to scatter (for root process) |
|
complex(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:) | ||
integer, | intent(in) | :: | root |
Process which scatters data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Scatters data from one processes to all others
MPI mapping mpi_scatter
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msg_scatter(:) |
Data to scatter (for root process) |
|
integer, | intent(in), | CONTIGUOUS | :: | sendcounts(:) | ||
integer, | intent(in), | CONTIGUOUS | :: | displs(:) | ||
integer(kind=int_4), | intent(inout), | CONTIGUOUS | :: | msg(:) | ||
integer, | intent(in) | :: | recvcount |
Process which scatters data |
||
integer, | intent(in) | :: | root |
Process which scatters data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Scatters data from one processes to all others
MPI mapping mpi_scatter
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msg_scatter(:) |
Data to scatter (for root process) |
|
integer, | intent(in), | CONTIGUOUS | :: | sendcounts(:) | ||
integer, | intent(in), | CONTIGUOUS | :: | displs(:) | ||
integer(kind=int_8), | intent(inout), | CONTIGUOUS | :: | msg(:) | ||
integer, | intent(in) | :: | recvcount |
Process which scatters data |
||
integer, | intent(in) | :: | root |
Process which scatters data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Scatters data from one processes to all others
MPI mapping mpi_scatter
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msg_scatter(:) |
Data to scatter (for root process) |
|
integer, | intent(in), | CONTIGUOUS | :: | sendcounts(:) | ||
integer, | intent(in), | CONTIGUOUS | :: | displs(:) | ||
real(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:) | ||
integer, | intent(in) | :: | recvcount |
Process which scatters data |
||
integer, | intent(in) | :: | root |
Process which scatters data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Scatters data from one processes to all others
MPI mapping mpi_scatter
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msg_scatter(:) |
Data to scatter (for root process) |
|
integer, | intent(in), | CONTIGUOUS | :: | sendcounts(:) | ||
integer, | intent(in), | CONTIGUOUS | :: | displs(:) | ||
real(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:) | ||
integer, | intent(in) | :: | recvcount |
Process which scatters data |
||
integer, | intent(in) | :: | root |
Process which scatters data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Scatters data from one processes to all others
MPI mapping mpi_scatter
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msg_scatter(:) |
Data to scatter (for root process) |
|
integer, | intent(in), | CONTIGUOUS | :: | sendcounts(:) | ||
integer, | intent(in), | CONTIGUOUS | :: | displs(:) | ||
complex(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:) | ||
integer, | intent(in) | :: | recvcount |
Process which scatters data |
||
integer, | intent(in) | :: | root |
Process which scatters data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Scatters data from one processes to all others
MPI mapping mpi_scatter
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msg_scatter(:) |
Data to scatter (for root process) |
|
integer, | intent(in), | CONTIGUOUS | :: | sendcounts(:) | ||
integer, | intent(in), | CONTIGUOUS | :: | displs(:) | ||
complex(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:) | ||
integer, | intent(in) | :: | recvcount |
Process which scatters data |
||
integer, | intent(in) | :: | root |
Process which scatters data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
All-to-all data exchange, rank 1 arrays, equal sizes
Index meaning
The first two indices specify the data while the last index counts the processes
Sizes of ranks All processes have the same data size.
MPI mapping mpi_alltoall
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | sb(:) |
array with data to send |
|
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | rb(:) |
array into which data is received |
|
integer, | intent(in) | :: | count |
number of elements to send/receive (product of the extents of the first two dimensions) |
||
type(mp_comm_type), | intent(in) | :: | group |
Message passing environment identifier |
All-to-all data exchange, rank-2 arrays, equal sizes
Note
see mp_alltoall_i
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | sb(:,:) | ||
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | rb(:,:) | ||
integer, | intent(in) | :: | count | |||
type(mp_comm_type), | intent(in) | :: | group |
All-to-all data exchange, rank 4 data, equal sizes
Note
see mp_alltoall_i
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | DIMENSION(:, :, :, :), CONTIGUOUS | :: | sb | ||
integer(kind=int_4), | intent(out), | DIMENSION(:, :, :, :), CONTIGUOUS | :: | rb | ||
integer, | intent(in) | :: | count | |||
type(mp_comm_type), | intent(in) | :: | group |
All-to-all data exchange, rank-1 data of different sizes
MPI mapping mpi_alltoallv
Array sizes The scount, rcount, and the sdispl and rdispl arrays have a size equal to the number of processes.
Offsets Values in sdispl and rdispl start with 0.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | sb(:) |
Data to send |
|
integer, | intent(in), | CONTIGUOUS | :: | scount(:) |
Data counts for data sent to other processes Respective data offsets for data sent to process |
|
integer, | intent(in), | CONTIGUOUS | :: | sdispl(:) |
Data counts for data sent to other processes Respective data offsets for data sent to process |
|
integer(kind=int_4), | intent(inout), | CONTIGUOUS | :: | rb(:) |
Buffer into which to receive data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:) |
Data counts for data received from other processes Respective data offsets for data received from other processes |
|
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:) |
Data counts for data received from other processes Respective data offsets for data received from other processes |
|
type(mp_comm_type), | intent(in) | :: | group |
Message passing environment identifier |
All-to-all data exchange, rank 1 arrays, equal sizes
Index meaning
The first two indices specify the data while the last index counts the processes
Sizes of ranks All processes have the same data size.
MPI mapping mpi_alltoall
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | sb(:) |
array with data to send |
|
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | rb(:) |
array into which data is received |
|
integer, | intent(in) | :: | count |
number of elements to send/receive (product of the extents of the first two dimensions) |
||
type(mp_comm_type), | intent(in) | :: | group |
Message passing environment identifier |
All-to-all data exchange, rank-2 arrays, equal sizes
Note
see mp_alltoall_l
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | sb(:,:) | ||
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | rb(:,:) | ||
integer, | intent(in) | :: | count | |||
type(mp_comm_type), | intent(in) | :: | group |
All-to-all data exchange, rank 4 data, equal sizes
Note
see mp_alltoall_l
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | DIMENSION(:, :, :, :), CONTIGUOUS | :: | sb | ||
integer(kind=int_8), | intent(out), | DIMENSION(:, :, :, :), CONTIGUOUS | :: | rb | ||
integer, | intent(in) | :: | count | |||
type(mp_comm_type), | intent(in) | :: | group |
All-to-all data exchange, rank-1 data of different sizes
MPI mapping mpi_alltoallv
Array sizes The scount, rcount, and the sdispl and rdispl arrays have a size equal to the number of processes.
Offsets Values in sdispl and rdispl start with 0.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | sb(:) |
Data to send |
|
integer, | intent(in), | CONTIGUOUS | :: | scount(:) |
Data counts for data sent to other processes Respective data offsets for data sent to process |
|
integer, | intent(in), | CONTIGUOUS | :: | sdispl(:) |
Data counts for data sent to other processes Respective data offsets for data sent to process |
|
integer(kind=int_8), | intent(inout), | CONTIGUOUS | :: | rb(:) |
Buffer into which to receive data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:) |
Data counts for data received from other processes Respective data offsets for data received from other processes |
|
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:) |
Data counts for data received from other processes Respective data offsets for data received from other processes |
|
type(mp_comm_type), | intent(in) | :: | group |
Message passing environment identifier |
All-to-all data exchange, rank 1 arrays, equal sizes
Index meaning
The first two indices specify the data while the last index counts the processes
Sizes of ranks All processes have the same data size.
MPI mapping mpi_alltoall
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | sb(:) |
array with data to send |
|
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | rb(:) |
array into which data is received |
|
integer, | intent(in) | :: | count |
number of elements to send/receive (product of the extents of the first two dimensions) |
||
type(mp_comm_type), | intent(in) | :: | group |
Message passing environment identifier |
All-to-all data exchange, rank-2 arrays, equal sizes
Note
see mp_alltoall_d
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | sb(:,:) | ||
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | rb(:,:) | ||
integer, | intent(in) | :: | count | |||
type(mp_comm_type), | intent(in) | :: | group |
All-to-all data exchange, rank 4 data, equal sizes
Note
see mp_alltoall_d
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | DIMENSION(:, :, :, :), CONTIGUOUS | :: | sb | ||
real(kind=real_8), | intent(out), | DIMENSION(:, :, :, :), CONTIGUOUS | :: | rb | ||
integer, | intent(in) | :: | count | |||
type(mp_comm_type), | intent(in) | :: | group |
All-to-all data exchange, rank-1 data of different sizes
MPI mapping mpi_alltoallv
Array sizes The scount, rcount, and the sdispl and rdispl arrays have a size equal to the number of processes.
Offsets Values in sdispl and rdispl start with 0.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | sb(:) |
Data to send |
|
integer, | intent(in), | CONTIGUOUS | :: | scount(:) |
Data counts for data sent to other processes Respective data offsets for data sent to process |
|
integer, | intent(in), | CONTIGUOUS | :: | sdispl(:) |
Data counts for data sent to other processes Respective data offsets for data sent to process |
|
real(kind=real_8), | intent(inout), | CONTIGUOUS | :: | rb(:) |
Buffer into which to receive data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:) |
Data counts for data received from other processes Respective data offsets for data received from other processes |
|
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:) |
Data counts for data received from other processes Respective data offsets for data received from other processes |
|
type(mp_comm_type), | intent(in) | :: | group |
Message passing environment identifier |
All-to-all data exchange, rank 1 arrays, equal sizes
Index meaning
The first two indices specify the data while the last index counts the processes
Sizes of ranks All processes have the same data size.
MPI mapping mpi_alltoall
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | sb(:) |
array with data to send |
|
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | rb(:) |
array into which data is received |
|
integer, | intent(in) | :: | count |
number of elements to send/receive (product of the extents of the first two dimensions) |
||
type(mp_comm_type), | intent(in) | :: | group |
Message passing environment identifier |
All-to-all data exchange, rank-2 arrays, equal sizes
Note
see mp_alltoall_r
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | sb(:,:) | ||
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | rb(:,:) | ||
integer, | intent(in) | :: | count | |||
type(mp_comm_type), | intent(in) | :: | group |
All-to-all data exchange, rank 4 data, equal sizes
Note
see mp_alltoall_r
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | DIMENSION(:, :, :, :), CONTIGUOUS | :: | sb | ||
real(kind=real_4), | intent(out), | DIMENSION(:, :, :, :), CONTIGUOUS | :: | rb | ||
integer, | intent(in) | :: | count | |||
type(mp_comm_type), | intent(in) | :: | group |
All-to-all data exchange, rank-1 data of different sizes
MPI mapping mpi_alltoallv
Array sizes The scount, rcount, and the sdispl and rdispl arrays have a size equal to the number of processes.
Offsets Values in sdispl and rdispl start with 0.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | sb(:) |
Data to send |
|
integer, | intent(in), | CONTIGUOUS | :: | scount(:) |
Data counts for data sent to other processes Respective data offsets for data sent to process |
|
integer, | intent(in), | CONTIGUOUS | :: | sdispl(:) |
Data counts for data sent to other processes Respective data offsets for data sent to process |
|
real(kind=real_4), | intent(inout), | CONTIGUOUS | :: | rb(:) |
Buffer into which to receive data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:) |
Data counts for data received from other processes Respective data offsets for data received from other processes |
|
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:) |
Data counts for data received from other processes Respective data offsets for data received from other processes |
|
type(mp_comm_type), | intent(in) | :: | group |
Message passing environment identifier |
All-to-all data exchange, rank 1 arrays, equal sizes
Index meaning
The first two indices specify the data while the last index counts the processes
Sizes of ranks All processes have the same data size.
MPI mapping mpi_alltoall
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | sb(:) |
array with data to send |
|
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | rb(:) |
array into which data is received |
|
integer, | intent(in) | :: | count |
number of elements to send/receive (product of the extents of the first two dimensions) |
||
type(mp_comm_type), | intent(in) | :: | group |
Message passing environment identifier |
All-to-all data exchange, rank-2 arrays, equal sizes
Note
see mp_alltoall_z
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | sb(:,:) | ||
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | rb(:,:) | ||
integer, | intent(in) | :: | count | |||
type(mp_comm_type), | intent(in) | :: | group |
All-to-all data exchange, rank 4 data, equal sizes
Note
see mp_alltoall_z
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | DIMENSION(:, :, :, :), CONTIGUOUS | :: | sb | ||
complex(kind=real_8), | intent(out), | DIMENSION(:, :, :, :), CONTIGUOUS | :: | rb | ||
integer, | intent(in) | :: | count | |||
type(mp_comm_type), | intent(in) | :: | group |
All-to-all data exchange, rank-1 data of different sizes
MPI mapping mpi_alltoallv
Array sizes The scount, rcount, and the sdispl and rdispl arrays have a size equal to the number of processes.
Offsets Values in sdispl and rdispl start with 0.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | sb(:) |
Data to send |
|
integer, | intent(in), | CONTIGUOUS | :: | scount(:) |
Data counts for data sent to other processes Respective data offsets for data sent to process |
|
integer, | intent(in), | CONTIGUOUS | :: | sdispl(:) |
Data counts for data sent to other processes Respective data offsets for data sent to process |
|
complex(kind=real_8), | intent(inout), | CONTIGUOUS | :: | rb(:) |
Buffer into which to receive data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:) |
Data counts for data received from other processes Respective data offsets for data received from other processes |
|
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:) |
Data counts for data received from other processes Respective data offsets for data received from other processes |
|
type(mp_comm_type), | intent(in) | :: | group |
Message passing environment identifier |
All-to-all data exchange, rank 1 arrays, equal sizes
Index meaning
The first two indices specify the data while the last index counts the processes
Sizes of ranks All processes have the same data size.
MPI mapping mpi_alltoall
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | sb(:) |
array with data to send |
|
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | rb(:) |
array into which data is received |
|
integer, | intent(in) | :: | count |
number of elements to send/receive (product of the extents of the first two dimensions) |
||
type(mp_comm_type), | intent(in) | :: | group |
Message passing environment identifier |
All-to-all data exchange, rank-2 arrays, equal sizes
Note
see mp_alltoall_c
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | sb(:,:) | ||
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | rb(:,:) | ||
integer, | intent(in) | :: | count | |||
type(mp_comm_type), | intent(in) | :: | group |
All-to-all data exchange, rank 4 data, equal sizes
Note
see mp_alltoall_c
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | DIMENSION(:, :, :, :), CONTIGUOUS | :: | sb | ||
complex(kind=real_4), | intent(out), | DIMENSION(:, :, :, :), CONTIGUOUS | :: | rb | ||
integer, | intent(in) | :: | count | |||
type(mp_comm_type), | intent(in) | :: | group |
All-to-all data exchange, rank-1 data of different sizes
MPI mapping mpi_alltoallv
Array sizes The scount, rcount, and the sdispl and rdispl arrays have a size equal to the number of processes.
Offsets Values in sdispl and rdispl start with 0.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | sb(:) |
Data to send |
|
integer, | intent(in), | CONTIGUOUS | :: | scount(:) |
Data counts for data sent to other processes Respective data offsets for data sent to process |
|
integer, | intent(in), | CONTIGUOUS | :: | sdispl(:) |
Data counts for data sent to other processes Respective data offsets for data sent to process |
|
complex(kind=real_4), | intent(inout), | CONTIGUOUS | :: | rb(:) |
Buffer into which to receive data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:) |
Data counts for data received from other processes Respective data offsets for data received from other processes |
|
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:) |
Data counts for data received from other processes Respective data offsets for data received from other processes |
|
type(mp_comm_type), | intent(in) | :: | group |
Message passing environment identifier |
Send one datum to another process
MPI mapping mpi_send
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4) | :: | msg |
Scalar to send |
|||
integer | :: | dest |
Destination process Transfer identifier |
|||
integer | :: | tag |
Destination process Transfer identifier |
|||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Send rank-1 data to another process
Note
see mp_send_i
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | CONTIGUOUS | :: | msg(:) |
Rank-1 data to send |
||
integer | :: | dest | ||||
integer | :: | tag | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Send one datum to another process
MPI mapping mpi_send
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8) | :: | msg |
Scalar to send |
|||
integer | :: | dest |
Destination process Transfer identifier |
|||
integer | :: | tag |
Destination process Transfer identifier |
|||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Send rank-1 data to another process
Note
see mp_send_l
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | CONTIGUOUS | :: | msg(:) |
Rank-1 data to send |
||
integer | :: | dest | ||||
integer | :: | tag | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Send one datum to another process
MPI mapping mpi_send
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8) | :: | msg |
Scalar to send |
|||
integer | :: | dest |
Destination process Transfer identifier |
|||
integer | :: | tag |
Destination process Transfer identifier |
|||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Send rank-1 data to another process
Note
see mp_send_d
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | CONTIGUOUS | :: | msg(:) |
Rank-1 data to send |
||
integer | :: | dest | ||||
integer | :: | tag | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Send one datum to another process
MPI mapping mpi_send
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4) | :: | msg |
Scalar to send |
|||
integer | :: | dest |
Destination process Transfer identifier |
|||
integer | :: | tag |
Destination process Transfer identifier |
|||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Send rank-1 data to another process
Note
see mp_send_r
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | CONTIGUOUS | :: | msg(:) |
Rank-1 data to send |
||
integer | :: | dest | ||||
integer | :: | tag | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Send one datum to another process
MPI mapping mpi_send
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8) | :: | msg |
Scalar to send |
|||
integer | :: | dest |
Destination process Transfer identifier |
|||
integer | :: | tag |
Destination process Transfer identifier |
|||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Send rank-1 data to another process
Note
see mp_send_z
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | CONTIGUOUS | :: | msg(:) |
Rank-1 data to send |
||
integer | :: | dest | ||||
integer | :: | tag | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Send one datum to another process
MPI mapping mpi_send
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4) | :: | msg |
Scalar to send |
|||
integer | :: | dest |
Destination process Transfer identifier |
|||
integer | :: | tag |
Destination process Transfer identifier |
|||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Send rank-1 data to another process
Note
see mp_send_c
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | CONTIGUOUS | :: | msg(:) |
Rank-1 data to send |
||
integer | :: | dest | ||||
integer | :: | tag | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Receive one datum from another process
MPI mapping mpi_send
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(inout) | :: | msg |
Place received data into this variable |
||
integer, | intent(inout) | :: | source |
Process to receive from Transfer identifier |
||
integer, | intent(inout) | :: | tag |
Process to receive from Transfer identifier |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Receive rank-1 data from another process
Note
see mp_recv_i
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Place received data into this rank-1 array |
|
integer, | intent(inout) | :: | source | |||
integer, | intent(inout) | :: | tag | |||
type(mp_comm_type), | intent(in) | :: | gid |
Receive one datum from another process
MPI mapping mpi_send
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(inout) | :: | msg |
Place received data into this variable |
||
integer, | intent(inout) | :: | source |
Process to receive from Transfer identifier |
||
integer, | intent(inout) | :: | tag |
Process to receive from Transfer identifier |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Receive rank-1 data from another process
Note
see mp_recv_l
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Place received data into this rank-1 array |
|
integer, | intent(inout) | :: | source | |||
integer, | intent(inout) | :: | tag | |||
type(mp_comm_type), | intent(in) | :: | gid |
Receive one datum from another process
MPI mapping mpi_send
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(inout) | :: | msg |
Place received data into this variable |
||
integer, | intent(inout) | :: | source |
Process to receive from Transfer identifier |
||
integer, | intent(inout) | :: | tag |
Process to receive from Transfer identifier |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Receive rank-1 data from another process
Note
see mp_recv_d
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Place received data into this rank-1 array |
|
integer, | intent(inout) | :: | source | |||
integer, | intent(inout) | :: | tag | |||
type(mp_comm_type), | intent(in) | :: | gid |
Receive one datum from another process
MPI mapping mpi_send
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(inout) | :: | msg |
Place received data into this variable |
||
integer, | intent(inout) | :: | source |
Process to receive from Transfer identifier |
||
integer, | intent(inout) | :: | tag |
Process to receive from Transfer identifier |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Receive rank-1 data from another process
Note
see mp_recv_r
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Place received data into this rank-1 array |
|
integer, | intent(inout) | :: | source | |||
integer, | intent(inout) | :: | tag | |||
type(mp_comm_type), | intent(in) | :: | gid |
Receive one datum from another process
MPI mapping mpi_send
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(inout) | :: | msg |
Place received data into this variable |
||
integer, | intent(inout) | :: | source |
Process to receive from Transfer identifier |
||
integer, | intent(inout) | :: | tag |
Process to receive from Transfer identifier |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Receive rank-1 data from another process
Note
see mp_recv_z
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Place received data into this rank-1 array |
|
integer, | intent(inout) | :: | source | |||
integer, | intent(inout) | :: | tag | |||
type(mp_comm_type), | intent(in) | :: | gid |
Receive one datum from another process
MPI mapping mpi_send
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(inout) | :: | msg |
Place received data into this variable |
||
integer, | intent(inout) | :: | source |
Process to receive from Transfer identifier |
||
integer, | intent(inout) | :: | tag |
Process to receive from Transfer identifier |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Receive rank-1 data from another process
Note
see mp_recv_c
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Place received data into this rank-1 array |
|
integer, | intent(inout) | :: | source | |||
integer, | intent(inout) | :: | tag | |||
type(mp_comm_type), | intent(in) | :: | gid |
Sends and receives vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msgin(:) |
Data to send |
|
integer, | intent(in) | :: | dest |
Process to send data to |
||
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msgout(:) |
Received data |
|
integer, | intent(in) | :: | source |
Process from which to receive |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
Sends and receives vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msgin(:) |
Data to send |
|
integer, | intent(in) | :: | dest |
Process to send data to |
||
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msgout(:) |
Received data |
|
integer, | intent(in) | :: | source |
Process from which to receive |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
Sends and receives vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgin(:) |
Data to send |
|
integer, | intent(in) | :: | dest |
Process to send data to |
||
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgout(:) |
Received data |
|
integer, | intent(in) | :: | source |
Process from which to receive |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
Sends and receives vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgin(:) |
Data to send |
|
integer, | intent(in) | :: | dest |
Process to send data to |
||
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgout(:) |
Received data |
|
integer, | intent(in) | :: | source |
Process from which to receive |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
Sends and receives vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgin(:) |
Data to send |
|
integer, | intent(in) | :: | dest |
Process to send data to |
||
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgout(:) |
Received data |
|
integer, | intent(in) | :: | source |
Process from which to receive |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
Sends and receives vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgin(:) |
Data to send |
|
integer, | intent(in) | :: | dest |
Process to send data to |
||
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgout(:) |
Received data |
|
integer, | intent(in) | :: | source |
Process from which to receive |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
Non-blocking send and receive of a scalar
Implementation Calls mpi_isend and mpi_irecv.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4) | :: | msgin |
Scalar data to send |
|||
integer, | intent(in) | :: | dest |
Which process to send to |
||
integer(kind=int_4) | :: | msgout |
Receive data into this pointer |
|||
integer, | intent(in) | :: | source |
Process to receive from |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
||
type(mp_request_type), | intent(out) | :: | send_request |
Request handle for the send Request handle for the receive |
||
type(mp_request_type), | intent(out) | :: | recv_request |
Request handle for the send Request handle for the receive |
||
integer, | intent(in), | optional | :: | tag |
tag to differentiate requests |
Non-blocking send and receive of a vector
Implementation Calls mpi_isend and mpi_irecv.
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | CONTIGUOUS, DIMENSION(:) | :: | msgin |
Vector data to send |
||
integer, | intent(in) | :: | dest |
Which process to send to |
||
integer(kind=int_4), | CONTIGUOUS, DIMENSION(:) | :: | msgout |
Receive data into this pointer |
||
integer, | intent(in) | :: | source |
Process to receive from |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
||
type(mp_request_type), | intent(out) | :: | send_request |
Request handle for the send Request handle for the receive |
||
type(mp_request_type), | intent(out) | :: | recv_request |
Request handle for the send Request handle for the receive |
||
integer, | intent(in), | optional | :: | tag |
tag to differentiate requests |
Non-blocking send and receive of a scalar
Implementation Calls mpi_isend and mpi_irecv.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8) | :: | msgin |
Scalar data to send |
|||
integer, | intent(in) | :: | dest |
Which process to send to |
||
integer(kind=int_8) | :: | msgout |
Receive data into this pointer |
|||
integer, | intent(in) | :: | source |
Process to receive from |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
||
type(mp_request_type), | intent(out) | :: | send_request |
Request handle for the send Request handle for the receive |
||
type(mp_request_type), | intent(out) | :: | recv_request |
Request handle for the send Request handle for the receive |
||
integer, | intent(in), | optional | :: | tag |
tag to differentiate requests |
Non-blocking send and receive of a vector
Implementation Calls mpi_isend and mpi_irecv.
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | CONTIGUOUS, DIMENSION(:) | :: | msgin |
Vector data to send |
||
integer, | intent(in) | :: | dest |
Which process to send to |
||
integer(kind=int_8), | CONTIGUOUS, DIMENSION(:) | :: | msgout |
Receive data into this pointer |
||
integer, | intent(in) | :: | source |
Process to receive from |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
||
type(mp_request_type), | intent(out) | :: | send_request |
Request handle for the send Request handle for the receive |
||
type(mp_request_type), | intent(out) | :: | recv_request |
Request handle for the send Request handle for the receive |
||
integer, | intent(in), | optional | :: | tag |
tag to differentiate requests |
Non-blocking send and receive of a scalar
Implementation Calls mpi_isend and mpi_irecv.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8) | :: | msgin |
Scalar data to send |
|||
integer, | intent(in) | :: | dest |
Which process to send to |
||
real(kind=real_8) | :: | msgout |
Receive data into this pointer |
|||
integer, | intent(in) | :: | source |
Process to receive from |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
||
type(mp_request_type), | intent(out) | :: | send_request |
Request handle for the send Request handle for the receive |
||
type(mp_request_type), | intent(out) | :: | recv_request |
Request handle for the send Request handle for the receive |
||
integer, | intent(in), | optional | :: | tag |
tag to differentiate requests |
Non-blocking send and receive of a vector
Implementation Calls mpi_isend and mpi_irecv.
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | CONTIGUOUS, DIMENSION(:) | :: | msgin |
Vector data to send |
||
integer, | intent(in) | :: | dest |
Which process to send to |
||
real(kind=real_8), | CONTIGUOUS, DIMENSION(:) | :: | msgout |
Receive data into this pointer |
||
integer, | intent(in) | :: | source |
Process to receive from |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
||
type(mp_request_type), | intent(out) | :: | send_request |
Request handle for the send Request handle for the receive |
||
type(mp_request_type), | intent(out) | :: | recv_request |
Request handle for the send Request handle for the receive |
||
integer, | intent(in), | optional | :: | tag |
tag to differentiate requests |
Non-blocking send and receive of a scalar
Implementation Calls mpi_isend and mpi_irecv.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4) | :: | msgin |
Scalar data to send |
|||
integer, | intent(in) | :: | dest |
Which process to send to |
||
real(kind=real_4) | :: | msgout |
Receive data into this pointer |
|||
integer, | intent(in) | :: | source |
Process to receive from |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
||
type(mp_request_type), | intent(out) | :: | send_request |
Request handle for the send Request handle for the receive |
||
type(mp_request_type), | intent(out) | :: | recv_request |
Request handle for the send Request handle for the receive |
||
integer, | intent(in), | optional | :: | tag |
tag to differentiate requests |
Non-blocking send and receive of a vector
Implementation Calls mpi_isend and mpi_irecv.
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | CONTIGUOUS, DIMENSION(:) | :: | msgin |
Vector data to send |
||
integer, | intent(in) | :: | dest |
Which process to send to |
||
real(kind=real_4), | CONTIGUOUS, DIMENSION(:) | :: | msgout |
Receive data into this pointer |
||
integer, | intent(in) | :: | source |
Process to receive from |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
||
type(mp_request_type), | intent(out) | :: | send_request |
Request handle for the send Request handle for the receive |
||
type(mp_request_type), | intent(out) | :: | recv_request |
Request handle for the send Request handle for the receive |
||
integer, | intent(in), | optional | :: | tag |
tag to differentiate requests |
Non-blocking send and receive of a scalar
Implementation Calls mpi_isend and mpi_irecv.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8) | :: | msgin |
Scalar data to send |
|||
integer, | intent(in) | :: | dest |
Which process to send to |
||
complex(kind=real_8) | :: | msgout |
Receive data into this pointer |
|||
integer, | intent(in) | :: | source |
Process to receive from |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
||
type(mp_request_type), | intent(out) | :: | send_request |
Request handle for the send Request handle for the receive |
||
type(mp_request_type), | intent(out) | :: | recv_request |
Request handle for the send Request handle for the receive |
||
integer, | intent(in), | optional | :: | tag |
tag to differentiate requests |
Non-blocking send and receive of a vector
Implementation Calls mpi_isend and mpi_irecv.
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | CONTIGUOUS, DIMENSION(:) | :: | msgin |
Vector data to send |
||
integer, | intent(in) | :: | dest |
Which process to send to |
||
complex(kind=real_8), | CONTIGUOUS, DIMENSION(:) | :: | msgout |
Receive data into this pointer |
||
integer, | intent(in) | :: | source |
Process to receive from |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
||
type(mp_request_type), | intent(out) | :: | send_request |
Request handle for the send Request handle for the receive |
||
type(mp_request_type), | intent(out) | :: | recv_request |
Request handle for the send Request handle for the receive |
||
integer, | intent(in), | optional | :: | tag |
tag to differentiate requests |
Non-blocking send and receive of a scalar
Implementation Calls mpi_isend and mpi_irecv.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4) | :: | msgin |
Scalar data to send |
|||
integer, | intent(in) | :: | dest |
Which process to send to |
||
complex(kind=real_4) | :: | msgout |
Receive data into this pointer |
|||
integer, | intent(in) | :: | source |
Process to receive from |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
||
type(mp_request_type), | intent(out) | :: | send_request |
Request handle for the send Request handle for the receive |
||
type(mp_request_type), | intent(out) | :: | recv_request |
Request handle for the send Request handle for the receive |
||
integer, | intent(in), | optional | :: | tag |
tag to differentiate requests |
Non-blocking send and receive of a vector
Implementation Calls mpi_isend and mpi_irecv.
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | CONTIGUOUS, DIMENSION(:) | :: | msgin |
Vector data to send |
||
integer, | intent(in) | :: | dest |
Which process to send to |
||
complex(kind=real_4), | CONTIGUOUS, DIMENSION(:) | :: | msgout |
Receive data into this pointer |
||
integer, | intent(in) | :: | source |
Process to receive from |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
||
type(mp_request_type), | intent(out) | :: | send_request |
Request handle for the send Request handle for the receive |
||
type(mp_request_type), | intent(out) | :: | recv_request |
Request handle for the send Request handle for the receive |
||
integer, | intent(in), | optional | :: | tag |
tag to differentiate requests |
Non-blocking send of vector data
Note
see mp_isendrecv_iv
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | CONTIGUOUS, DIMENSION(:) | :: | msgin | |||
integer, | intent(in) | :: | dest | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking send of matrix data
Note
see mp_isendrecv_iv
Note
see mp_isend_iv
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | DIMENSION(:, :), CONTIGUOUS | :: | msgin | |||
integer, | intent(in) | :: | dest | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking send of vector data
Note
see mp_isendrecv_lv
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | CONTIGUOUS, DIMENSION(:) | :: | msgin | |||
integer, | intent(in) | :: | dest | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking send of matrix data
Note
see mp_isendrecv_lv
Note
see mp_isend_lv
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | DIMENSION(:, :), CONTIGUOUS | :: | msgin | |||
integer, | intent(in) | :: | dest | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking send of vector data
Note
see mp_isendrecv_dv
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | CONTIGUOUS, DIMENSION(:) | :: | msgin | |||
integer, | intent(in) | :: | dest | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking send of matrix data
Note
see mp_isendrecv_dv
Note
see mp_isend_dv
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | DIMENSION(:, :), CONTIGUOUS | :: | msgin | |||
integer, | intent(in) | :: | dest | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking send of vector data
Note
see mp_isendrecv_rv
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | CONTIGUOUS, DIMENSION(:) | :: | msgin | |||
integer, | intent(in) | :: | dest | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking send of matrix data
Note
see mp_isendrecv_rv
Note
see mp_isend_rv
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | DIMENSION(:, :), CONTIGUOUS | :: | msgin | |||
integer, | intent(in) | :: | dest | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking send of vector data
Note
see mp_isendrecv_zv
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | CONTIGUOUS, DIMENSION(:) | :: | msgin | |||
integer, | intent(in) | :: | dest | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking send of matrix data
Note
see mp_isendrecv_zv
Note
see mp_isend_zv
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | DIMENSION(:, :), CONTIGUOUS | :: | msgin | |||
integer, | intent(in) | :: | dest | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking send of vector data
Note
see mp_isendrecv_cv
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | CONTIGUOUS, DIMENSION(:) | :: | msgin | |||
integer, | intent(in) | :: | dest | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking send of matrix data
Note
see mp_isendrecv_cv
Note
see mp_isend_cv
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | DIMENSION(:, :), CONTIGUOUS | :: | msgin | |||
integer, | intent(in) | :: | dest | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking send of logical vector data
Note
see mp_irecv_iv
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
logical, | DIMENSION(:), CONTIGUOUS | :: | msgin |
the input message |
||
integer, | intent(in) | :: | dest |
the destination processor |
||
type(mp_comm_type), | intent(in) | :: | comm |
the communicator object |
||
type(mp_request_type), | intent(out) | :: | request |
communication request index |
||
integer, | intent(in), | optional | :: | tag |
message tag |
Non-blocking send of custom type
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_type_descriptor_type), | intent(in) | :: | msgin | |||
integer, | intent(in) | :: | dest | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking receive of vector data
Note
see mp_isendrecv_iv
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | CONTIGUOUS, DIMENSION(:) | :: | msgout | |||
integer, | intent(in) | :: | source | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking receive of matrix data
Note
see mp_isendrecv_iv
Note
see mp_irecv_iv
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | DIMENSION(:, :), CONTIGUOUS | :: | msgout | |||
integer, | intent(in) | :: | source | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking receive of vector data
Note
see mp_isendrecv_lv
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | CONTIGUOUS, DIMENSION(:) | :: | msgout | |||
integer, | intent(in) | :: | source | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking receive of matrix data
Note
see mp_isendrecv_lv
Note
see mp_irecv_lv
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | DIMENSION(:, :), CONTIGUOUS | :: | msgout | |||
integer, | intent(in) | :: | source | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking receive of vector data
Note
see mp_isendrecv_dv
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | CONTIGUOUS, DIMENSION(:) | :: | msgout | |||
integer, | intent(in) | :: | source | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking receive of matrix data
Note
see mp_isendrecv_dv
Note
see mp_irecv_dv
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | DIMENSION(:, :), CONTIGUOUS | :: | msgout | |||
integer, | intent(in) | :: | source | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking receive of vector data
Note
see mp_isendrecv_rv
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | CONTIGUOUS, DIMENSION(:) | :: | msgout | |||
integer, | intent(in) | :: | source | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking receive of matrix data
Note
see mp_isendrecv_rv
Note
see mp_irecv_rv
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | DIMENSION(:, :), CONTIGUOUS | :: | msgout | |||
integer, | intent(in) | :: | source | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking receive of vector data
Note
see mp_isendrecv_zv
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | CONTIGUOUS, DIMENSION(:) | :: | msgout | |||
integer, | intent(in) | :: | source | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking receive of matrix data
Note
see mp_isendrecv_zv
Note
see mp_irecv_zv
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | DIMENSION(:, :), CONTIGUOUS | :: | msgout | |||
integer, | intent(in) | :: | source | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking receive of vector data
Note
see mp_isendrecv_cv
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | CONTIGUOUS, DIMENSION(:) | :: | msgout | |||
integer, | intent(in) | :: | source | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking receive of matrix data
Note
see mp_isendrecv_cv
Note
see mp_irecv_cv
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | DIMENSION(:, :), CONTIGUOUS | :: | msgout | |||
integer, | intent(in) | :: | source | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking receive of logical vector data
Note
see mp_irecv_iv
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
logical, | DIMENSION(:), CONTIGUOUS | :: | msgout |
the received message |
||
integer, | intent(in) | :: | source |
the source processor |
||
type(mp_comm_type), | intent(in) | :: | comm |
the communicator object |
||
type(mp_request_type), | intent(out) | :: | request |
communication request index |
||
integer, | intent(in), | optional | :: | tag |
message tag |
Non-blocking receive of vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_type_descriptor_type), | intent(inout) | :: | msgout | |||
integer, | intent(in) | :: | source | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Window initialization function for vector data
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | CONTIGUOUS, DIMENSION(:) | :: | base | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_win_type), | intent(out) | :: | win |
Window initialization function for vector data
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | CONTIGUOUS, DIMENSION(:) | :: | base | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_win_type), | intent(out) | :: | win |
Window initialization function for vector data
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | CONTIGUOUS, DIMENSION(:) | :: | base | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_win_type), | intent(out) | :: | win |
Window initialization function for vector data
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | CONTIGUOUS, DIMENSION(:) | :: | base | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_win_type), | intent(out) | :: | win |
Window initialization function for vector data
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | CONTIGUOUS, DIMENSION(:) | :: | base | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_win_type), | intent(out) | :: | win |
Window initialization function for vector data
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | CONTIGUOUS, DIMENSION(:) | :: | base | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_win_type), | intent(out) | :: | win |
Single-sided get function for vector data
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | CONTIGUOUS, DIMENSION(:) | :: | base | |||
integer, | intent(in) | :: | source | |||
type(mp_win_type), | intent(in) | :: | win | |||
integer(kind=int_4), | CONTIGUOUS, DIMENSION(:) | :: | win_data | |||
integer, | intent(in), | optional | :: | myproc | ||
integer, | intent(in), | optional | :: | disp | ||
type(mp_request_type), | intent(out) | :: | request | |||
type(mp_type_descriptor_type), | intent(in), | optional | :: | origin_datatype | ||
type(mp_type_descriptor_type), | intent(in), | optional | :: | target_datatype |
Single-sided get function for vector data
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | CONTIGUOUS, DIMENSION(:) | :: | base | |||
integer, | intent(in) | :: | source | |||
type(mp_win_type), | intent(in) | :: | win | |||
integer(kind=int_8), | CONTIGUOUS, DIMENSION(:) | :: | win_data | |||
integer, | intent(in), | optional | :: | myproc | ||
integer, | intent(in), | optional | :: | disp | ||
type(mp_request_type), | intent(out) | :: | request | |||
type(mp_type_descriptor_type), | intent(in), | optional | :: | origin_datatype | ||
type(mp_type_descriptor_type), | intent(in), | optional | :: | target_datatype |
Single-sided get function for vector data
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | CONTIGUOUS, DIMENSION(:) | :: | base | |||
integer, | intent(in) | :: | source | |||
type(mp_win_type), | intent(in) | :: | win | |||
real(kind=real_8), | CONTIGUOUS, DIMENSION(:) | :: | win_data | |||
integer, | intent(in), | optional | :: | myproc | ||
integer, | intent(in), | optional | :: | disp | ||
type(mp_request_type), | intent(out) | :: | request | |||
type(mp_type_descriptor_type), | intent(in), | optional | :: | origin_datatype | ||
type(mp_type_descriptor_type), | intent(in), | optional | :: | target_datatype |
Single-sided get function for vector data
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | CONTIGUOUS, DIMENSION(:) | :: | base | |||
integer, | intent(in) | :: | source | |||
type(mp_win_type), | intent(in) | :: | win | |||
real(kind=real_4), | CONTIGUOUS, DIMENSION(:) | :: | win_data | |||
integer, | intent(in), | optional | :: | myproc | ||
integer, | intent(in), | optional | :: | disp | ||
type(mp_request_type), | intent(out) | :: | request | |||
type(mp_type_descriptor_type), | intent(in), | optional | :: | origin_datatype | ||
type(mp_type_descriptor_type), | intent(in), | optional | :: | target_datatype |
Single-sided get function for vector data
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | CONTIGUOUS, DIMENSION(:) | :: | base | |||
integer, | intent(in) | :: | source | |||
type(mp_win_type), | intent(in) | :: | win | |||
complex(kind=real_8), | CONTIGUOUS, DIMENSION(:) | :: | win_data | |||
integer, | intent(in), | optional | :: | myproc | ||
integer, | intent(in), | optional | :: | disp | ||
type(mp_request_type), | intent(out) | :: | request | |||
type(mp_type_descriptor_type), | intent(in), | optional | :: | origin_datatype | ||
type(mp_type_descriptor_type), | intent(in), | optional | :: | target_datatype |
Single-sided get function for vector data
Note
arrays can be pointers or assumed shape, but they must be contiguous!
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | CONTIGUOUS, DIMENSION(:) | :: | base | |||
integer, | intent(in) | :: | source | |||
type(mp_win_type), | intent(in) | :: | win | |||
complex(kind=real_4), | CONTIGUOUS, DIMENSION(:) | :: | win_data | |||
integer, | intent(in), | optional | :: | myproc | ||
integer, | intent(in), | optional | :: | disp | ||
type(mp_request_type), | intent(out) | :: | request | |||
type(mp_type_descriptor_type), | intent(in), | optional | :: | origin_datatype | ||
type(mp_type_descriptor_type), | intent(in), | optional | :: | target_datatype |
Allocates special parallel memory
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | DIMENSION(:), POINTER, CONTIGUOUS | :: | DATA |
pointer to integer array to allocate |
||
integer, | intent(in) | :: | len |
number of integers to allocate |
||
integer, | intent(out), | optional | :: | stat |
allocation status result |
Allocates special parallel memory
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | DIMENSION(:), POINTER, CONTIGUOUS | :: | DATA |
pointer to integer array to allocate |
||
integer, | intent(in) | :: | len |
number of integers to allocate |
||
integer, | intent(out), | optional | :: | stat |
allocation status result |
Allocates special parallel memory
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | DIMENSION(:), POINTER, CONTIGUOUS | :: | DATA |
pointer to integer array to allocate |
||
integer, | intent(in) | :: | len |
number of integers to allocate |
||
integer, | intent(out), | optional | :: | stat |
allocation status result |
Allocates special parallel memory
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | DIMENSION(:), POINTER, CONTIGUOUS | :: | DATA |
pointer to integer array to allocate |
||
integer, | intent(in) | :: | len |
number of integers to allocate |
||
integer, | intent(out), | optional | :: | stat |
allocation status result |
Allocates special parallel memory
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | DIMENSION(:), POINTER, CONTIGUOUS | :: | DATA |
pointer to integer array to allocate |
||
integer, | intent(in) | :: | len |
number of integers to allocate |
||
integer, | intent(out), | optional | :: | stat |
allocation status result |
Allocates special parallel memory
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | DIMENSION(:), POINTER, CONTIGUOUS | :: | DATA |
pointer to integer array to allocate |
||
integer, | intent(in) | :: | len |
number of integers to allocate |
||
integer, | intent(out), | optional | :: | stat |
allocation status result |
Deallocates special parallel memory
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | DIMENSION(:), POINTER, CONTIGUOUS | :: | DATA |
pointer to special memory to deallocate |
||
integer, | intent(out), | optional | :: | stat |
Deallocates special parallel memory
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | DIMENSION(:), POINTER, CONTIGUOUS | :: | DATA |
pointer to special memory to deallocate |
||
integer, | intent(out), | optional | :: | stat |
Deallocates special parallel memory
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | DIMENSION(:), POINTER, CONTIGUOUS | :: | DATA |
pointer to special memory to deallocate |
||
integer, | intent(out), | optional | :: | stat |
Deallocates special parallel memory
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | DIMENSION(:), POINTER, CONTIGUOUS | :: | DATA |
pointer to special memory to deallocate |
||
integer, | intent(out), | optional | :: | stat |
Deallocates special parallel memory
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | DIMENSION(:), POINTER, CONTIGUOUS | :: | DATA |
pointer to special memory to deallocate |
||
integer, | intent(out), | optional | :: | stat |
Deallocates special parallel memory
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | DIMENSION(:), POINTER, CONTIGUOUS | :: | DATA |
pointer to special memory to deallocate |
||
integer, | intent(out), | optional | :: | stat |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | DIMENSION(:), POINTER | :: | ptr | |||
integer, | intent(in), | optional, | DIMENSION(2) | :: | vector_descriptor | |
type(mp_indexing_meta_type), | intent(in), | optional | :: | index_descriptor |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | DIMENSION(:), POINTER | :: | ptr | |||
integer, | intent(in), | optional, | DIMENSION(2) | :: | vector_descriptor | |
type(mp_indexing_meta_type), | intent(in), | optional | :: | index_descriptor |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | DIMENSION(:), POINTER | :: | ptr | |||
integer, | intent(in), | optional, | DIMENSION(2) | :: | vector_descriptor | |
type(mp_indexing_meta_type), | intent(in), | optional | :: | index_descriptor |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | DIMENSION(:), POINTER | :: | ptr | |||
integer, | intent(in), | optional, | DIMENSION(2) | :: | vector_descriptor | |
type(mp_indexing_meta_type), | intent(in), | optional | :: | index_descriptor |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | DIMENSION(:), POINTER | :: | ptr | |||
integer, | intent(in), | optional, | DIMENSION(2) | :: | vector_descriptor | |
type(mp_indexing_meta_type), | intent(in), | optional | :: | index_descriptor |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | DIMENSION(:), POINTER | :: | ptr | |||
integer, | intent(in), | optional, | DIMENSION(2) | :: | vector_descriptor | |
type(mp_indexing_meta_type), | intent(in), | optional | :: | index_descriptor |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_type_descriptor_type), | intent(in), | DIMENSION(:) | :: | subtypes | ||
integer, | intent(in), | optional, | DIMENSION(2) | :: | vector_descriptor | |
type(mp_indexing_meta_type), | intent(in), | optional | :: | index_descriptor |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
integer(kind=int_4), | intent(in) | :: | msg |
(parallel) Blocking individual file write using explicit offsets (serial) Unformatted stream write
MPI-I/O mapping mpi_file_write_at
STREAM-I/O mapping WRITE
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh |
file handle (file storage unit) |
||
integer(kind=file_offset), | intent(in) | :: | offset |
file offset (position) |
||
integer(kind=int_4), | intent(in) | :: | msg(:) |
data to be written to the file |
||
integer, | intent(in), | optional | :: | msglen |
number of the elements of data |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
integer(kind=int_8), | intent(in) | :: | msg |
(parallel) Blocking individual file write using explicit offsets (serial) Unformatted stream write
MPI-I/O mapping mpi_file_write_at
STREAM-I/O mapping WRITE
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh |
file handle (file storage unit) |
||
integer(kind=file_offset), | intent(in) | :: | offset |
file offset (position) |
||
integer(kind=int_8), | intent(in) | :: | msg(:) |
data to be written to the file |
||
integer, | intent(in), | optional | :: | msglen |
number of the elements of data |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
real(kind=real_8), | intent(in) | :: | msg |
(parallel) Blocking individual file write using explicit offsets (serial) Unformatted stream write
MPI-I/O mapping mpi_file_write_at
STREAM-I/O mapping WRITE
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh |
file handle (file storage unit) |
||
integer(kind=file_offset), | intent(in) | :: | offset |
file offset (position) |
||
real(kind=real_8), | intent(in) | :: | msg(:) |
data to be written to the file |
||
integer, | intent(in), | optional | :: | msglen |
number of the elements of data |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
real(kind=real_4), | intent(in) | :: | msg |
(parallel) Blocking individual file write using explicit offsets (serial) Unformatted stream write
MPI-I/O mapping mpi_file_write_at
STREAM-I/O mapping WRITE
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh |
file handle (file storage unit) |
||
integer(kind=file_offset), | intent(in) | :: | offset |
file offset (position) |
||
real(kind=real_4), | intent(in) | :: | msg(:) |
data to be written to the file |
||
integer, | intent(in), | optional | :: | msglen |
number of the elements of data |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
complex(kind=real_8), | intent(in) | :: | msg |
(parallel) Blocking individual file write using explicit offsets (serial) Unformatted stream write
MPI-I/O mapping mpi_file_write_at
STREAM-I/O mapping WRITE
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh |
file handle (file storage unit) |
||
integer(kind=file_offset), | intent(in) | :: | offset |
file offset (position) |
||
complex(kind=real_8), | intent(in) | :: | msg(:) |
data to be written to the file |
||
integer, | intent(in), | optional | :: | msglen |
number of the elements of data |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
complex(kind=real_4), | intent(in) | :: | msg |
(parallel) Blocking individual file write using explicit offsets (serial) Unformatted stream write
MPI-I/O mapping mpi_file_write_at
STREAM-I/O mapping WRITE
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh |
file handle (file storage unit) |
||
integer(kind=file_offset), | intent(in) | :: | offset |
file offset (position) |
||
complex(kind=real_4), | intent(in) | :: | msg(:) |
data to be written to the file |
||
integer, | intent(in), | optional | :: | msglen |
number of the elements of data |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
character(len=*), | intent(in) | :: | msg |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
integer(kind=int_4), | intent(in) | :: | msg |
(parallel) Blocking collective file write using explicit offsets (serial) Unformatted stream write
MPI-I/O mapping mpi_file_write_at_all
STREAM-I/O mapping WRITE
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
integer(kind=int_4), | intent(in) | :: | msg(:) | |||
integer, | intent(in), | optional | :: | msglen |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
integer(kind=int_8), | intent(in) | :: | msg |
(parallel) Blocking collective file write using explicit offsets (serial) Unformatted stream write
MPI-I/O mapping mpi_file_write_at_all
STREAM-I/O mapping WRITE
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
integer(kind=int_8), | intent(in) | :: | msg(:) | |||
integer, | intent(in), | optional | :: | msglen |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
real(kind=real_8), | intent(in) | :: | msg |
(parallel) Blocking collective file write using explicit offsets (serial) Unformatted stream write
MPI-I/O mapping mpi_file_write_at_all
STREAM-I/O mapping WRITE
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
real(kind=real_8), | intent(in) | :: | msg(:) | |||
integer, | intent(in), | optional | :: | msglen |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
real(kind=real_4), | intent(in) | :: | msg |
(parallel) Blocking collective file write using explicit offsets (serial) Unformatted stream write
MPI-I/O mapping mpi_file_write_at_all
STREAM-I/O mapping WRITE
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
real(kind=real_4), | intent(in) | :: | msg(:) | |||
integer, | intent(in), | optional | :: | msglen |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
complex(kind=real_8), | intent(in) | :: | msg |
(parallel) Blocking collective file write using explicit offsets (serial) Unformatted stream write
MPI-I/O mapping mpi_file_write_at_all
STREAM-I/O mapping WRITE
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
complex(kind=real_8), | intent(in) | :: | msg(:) | |||
integer, | intent(in), | optional | :: | msglen |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
complex(kind=real_4), | intent(in) | :: | msg |
(parallel) Blocking collective file write using explicit offsets (serial) Unformatted stream write
MPI-I/O mapping mpi_file_write_at_all
STREAM-I/O mapping WRITE
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
complex(kind=real_4), | intent(in) | :: | msg(:) | |||
integer, | intent(in), | optional | :: | msglen |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
character(len=*), | intent(in) | :: | msg |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
integer(kind=int_4), | intent(out) | :: | msg |
(parallel) Blocking collective file read using explicit offsets (serial) Unformatted stream read
MPI-I/O mapping mpi_file_read_at_all
STREAM-I/O mapping READ
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
integer(kind=int_4), | intent(out) | :: | msg(:) | |||
integer, | intent(in), | optional | :: | msglen |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
integer(kind=int_8), | intent(out) | :: | msg |
(parallel) Blocking collective file read using explicit offsets (serial) Unformatted stream read
MPI-I/O mapping mpi_file_read_at_all
STREAM-I/O mapping READ
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
integer(kind=int_8), | intent(out) | :: | msg(:) | |||
integer, | intent(in), | optional | :: | msglen |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
real(kind=real_8), | intent(out) | :: | msg |
(parallel) Blocking collective file read using explicit offsets (serial) Unformatted stream read
MPI-I/O mapping mpi_file_read_at_all
STREAM-I/O mapping READ
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
real(kind=real_8), | intent(out) | :: | msg(:) | |||
integer, | intent(in), | optional | :: | msglen |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
real(kind=real_4), | intent(out) | :: | msg |
(parallel) Blocking collective file read using explicit offsets (serial) Unformatted stream read
MPI-I/O mapping mpi_file_read_at_all
STREAM-I/O mapping READ
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
real(kind=real_4), | intent(out) | :: | msg(:) | |||
integer, | intent(in), | optional | :: | msglen |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
complex(kind=real_8), | intent(out) | :: | msg |
(parallel) Blocking collective file read using explicit offsets (serial) Unformatted stream read
MPI-I/O mapping mpi_file_read_at_all
STREAM-I/O mapping READ
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
complex(kind=real_8), | intent(out) | :: | msg(:) | |||
integer, | intent(in), | optional | :: | msglen |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
complex(kind=real_4), | intent(out) | :: | msg |
(parallel) Blocking collective file read using explicit offsets (serial) Unformatted stream read
MPI-I/O mapping mpi_file_read_at_all
STREAM-I/O mapping READ
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
complex(kind=real_4), | intent(out) | :: | msg(:) | |||
integer, | intent(in), | optional | :: | msglen |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
character(len=*), | intent(out) | :: | msg |
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
integer, | private | :: | handle | = | mp_comm_null_handle |
procedure, public, pass(comm), non_overridable :: get_handle => mp_get_comm_handle | |
procedure, public, pass(comm), non_overridable :: set_handle => mp_set_comm_handle | |
procedure, private, pass(comm1), non_overridable :: mp_comm_op_eq | |
generic, public :: OPERATOR(.EQ.) => mp_comm_op_eq | |
procedure, private, pass(comm1), non_overridable :: mp_comm_op_ne | |
generic, public :: OPERATOR(.NE.) => mp_comm_op_ne |
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
integer, | private | :: | handle | = | mp_request_null_handle |
procedure, public, pass(request), non_overridable :: get_handle => mp_get_request_handle | |
procedure, public, pass(request), non_overridable :: set_handle => mp_set_request_handle | |
procedure, private, pass(request1), non_overridable :: mp_request_op_eq | |
generic, public :: OPERATOR(.EQ.) => mp_request_op_eq | |
procedure, private, pass(request1), non_overridable :: mp_request_op_ne | |
generic, public :: OPERATOR(.NE.) => mp_request_op_ne |
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
integer, | private | :: | handle | = | mp_win_null_handle |
procedure, public, pass(win), non_overridable :: get_handle => mp_get_win_handle | |
procedure, public, pass(win), non_overridable :: set_handle => mp_set_win_handle | |
procedure, private, pass(win1), non_overridable :: mp_win_op_eq | |
generic, public :: OPERATOR(.EQ.) => mp_win_op_eq | |
procedure, private, pass(win1), non_overridable :: mp_win_op_ne | |
generic, public :: OPERATOR(.NE.) => mp_win_op_ne |
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
integer, | private | :: | handle | = | mp_file_null_handle |
procedure, public, pass(file), non_overridable :: get_handle => mp_get_file_handle | |
procedure, public, pass(file), non_overridable :: set_handle => mp_set_file_handle | |
procedure, private, pass(file1), non_overridable :: mp_file_op_eq | |
generic, public :: OPERATOR(.EQ.) => mp_file_op_eq | |
procedure, private, pass(file1), non_overridable :: mp_file_op_ne | |
generic, public :: OPERATOR(.NE.) => mp_file_op_ne |
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
integer, | private | :: | handle | = | mp_info_null_handle |
procedure, public, pass(info), non_overridable :: get_handle => mp_get_info_handle | |
procedure, public, pass(info), non_overridable :: set_handle => mp_set_info_handle | |
procedure, private, pass(info1), non_overridable :: mp_info_op_eq | |
generic, public :: OPERATOR(.EQ.) => mp_info_op_eq | |
procedure, private, pass(info1), non_overridable :: mp_info_op_ne | |
generic, public :: OPERATOR(.NE.) => mp_info_op_ne |
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
integer, | public, | DIMENSION(:), POINTER | :: | index | => | NULL() | |
integer, | public, | DIMENSION(:), POINTER | :: | chunks | => | NULL() |
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
integer, | public | :: | type_handle | = | mp_datatype_null_handle | ||
integer, | public | :: | length | = | -1 | ||
integer(kind=int_4), | public, | DIMENSION(:), POINTER | :: | data_i | => | NULL() | |
integer(kind=int_8), | public, | DIMENSION(:), POINTER | :: | data_l | => | NULL() | |
real(kind=real_4), | public, | DIMENSION(:), POINTER | :: | data_r | => | NULL() | |
real(kind=real_8), | public, | DIMENSION(:), POINTER | :: | data_d | => | NULL() | |
complex(kind=real_4), | public, | DIMENSION(:), POINTER | :: | data_c | => | NULL() | |
complex(kind=real_8), | public, | DIMENSION(:), POINTER | :: | data_z | => | NULL() | |
type(mp_type_descriptor_type), | public, | DIMENSION(:), POINTER | :: | subtype | => | NULL() | |
integer, | public | :: | vector_descriptor(2) | = | -1 | ||
logical, | public | :: | has_indexing | = | .FALSE. | ||
type(mp_indexing_meta_type), | public | :: | index_descriptor | = | mp_indexing_meta_type() |
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
integer, | public, | DIMENSION(:), POINTER | :: | index | => | NULL() | |
integer(kind=address_kind), | public, | DIMENSION(:), POINTER | :: | chunks | => | NULL() |
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
character(len=20), | public | :: | name | = | "" | ||
integer, | public | :: | count | = | -1 | ||
real(kind=dp), | public | :: | msg_size | = | -1.0_dp |
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
integer, | public | :: | ref_count | = | -1 | ||
integer, | public | :: | id_nr | = | -1 | ||
type(mp_perf_type), | public, | DIMENSION(MAX_PERF) | :: | mp_perfs | = | mp_perf_type() |
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
type(mp_perf_env_type), | public, | POINTER | :: | mp_perf_env | => | Null() |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(mp_comm_type), | intent(in) | :: | comm |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(mp_comm_type), | intent(in) | :: | comm1 | |||
class(mp_comm_type), | intent(in) | :: | comm2 |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(mp_comm_type), | intent(in) | :: | comm1 | |||
class(mp_comm_type), | intent(in) | :: | comm2 |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(mp_request_type), | intent(in) | :: | request |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(mp_request_type), | intent(in) | :: | request1 | |||
class(mp_request_type), | intent(in) | :: | request2 |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(mp_request_type), | intent(in) | :: | request1 | |||
class(mp_request_type), | intent(in) | :: | request2 |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(mp_win_type), | intent(in) | :: | win |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(mp_win_type), | intent(in) | :: | win1 | |||
class(mp_win_type), | intent(in) | :: | win2 |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(mp_win_type), | intent(in) | :: | win1 | |||
class(mp_win_type), | intent(in) | :: | win2 |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(mp_file_type), | intent(in) | :: | file |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(mp_file_type), | intent(in) | :: | file1 | |||
class(mp_file_type), | intent(in) | :: | file2 |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(mp_file_type), | intent(in) | :: | file1 | |||
class(mp_file_type), | intent(in) | :: | file2 |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(mp_info_type), | intent(in) | :: | info |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(mp_info_type), | intent(in) | :: | info1 | |||
class(mp_info_type), | intent(in) | :: | info2 |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(mp_info_type), | intent(in) | :: | info1 | |||
class(mp_info_type), | intent(in) | :: | info2 |
Return the current number of communicators
Tests for completion of the given requests. We use mpi_test so that we can use a single status.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_request_type), | DIMENSION(:) | :: | requests |
the list of requests to test |
logical which determines if requests are complete
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_type_descriptor_type), | intent(in), | DIMENSION(:) | :: | subtypes | ||
integer, | intent(in), | optional, | DIMENSION(2) | :: | vector_descriptor | |
type(mp_indexing_meta_type), | intent(in), | optional | :: | index_descriptor |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | count | |||
integer, | intent(in), | DIMENSION(1:count), TARGET | :: | lengths | ||
integer, | intent(in), | DIMENSION(1:count), TARGET | :: | displs |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | DIMENSION(:), POINTER | :: | ptr | |||
integer, | intent(in), | optional, | DIMENSION(2) | :: | vector_descriptor | |
type(mp_indexing_meta_type), | intent(in), | optional | :: | index_descriptor |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | count | |||
integer, | intent(in), | DIMENSION(1:count), TARGET | :: | lengths | ||
integer, | intent(in), | DIMENSION(1:count), TARGET | :: | displs |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | DIMENSION(:), POINTER | :: | ptr | |||
integer, | intent(in), | optional, | DIMENSION(2) | :: | vector_descriptor | |
type(mp_indexing_meta_type), | intent(in), | optional | :: | index_descriptor |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | count | |||
integer, | intent(in), | DIMENSION(1:count), TARGET | :: | lengths | ||
integer, | intent(in), | DIMENSION(1:count), TARGET | :: | displs |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | DIMENSION(:), POINTER | :: | ptr | |||
integer, | intent(in), | optional, | DIMENSION(2) | :: | vector_descriptor | |
type(mp_indexing_meta_type), | intent(in), | optional | :: | index_descriptor |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | count | |||
integer, | intent(in), | DIMENSION(1:count), TARGET | :: | lengths | ||
integer, | intent(in), | DIMENSION(1:count), TARGET | :: | displs |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | DIMENSION(:), POINTER | :: | ptr | |||
integer, | intent(in), | optional, | DIMENSION(2) | :: | vector_descriptor | |
type(mp_indexing_meta_type), | intent(in), | optional | :: | index_descriptor |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | count | |||
integer, | intent(in), | DIMENSION(1:count), TARGET | :: | lengths | ||
integer, | intent(in), | DIMENSION(1:count), TARGET | :: | displs |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | DIMENSION(:), POINTER | :: | ptr | |||
integer, | intent(in), | optional, | DIMENSION(2) | :: | vector_descriptor | |
type(mp_indexing_meta_type), | intent(in), | optional | :: | index_descriptor |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | count | |||
integer, | intent(in), | DIMENSION(1:count), TARGET | :: | lengths | ||
integer, | intent(in), | DIMENSION(1:count), TARGET | :: | displs |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | DIMENSION(:), POINTER | :: | ptr | |||
integer, | intent(in), | optional, | DIMENSION(2) | :: | vector_descriptor | |
type(mp_indexing_meta_type), | intent(in), | optional | :: | index_descriptor |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(mp_comm_type), | intent(inout) | :: | comm | |||
integer, | intent(in) | :: | handle |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(mp_request_type), | intent(inout) | :: | request | |||
integer, | intent(in) | :: | handle |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(mp_win_type), | intent(inout) | :: | win | |||
integer, | intent(in) | :: | handle |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(mp_file_type), | intent(inout) | :: | file | |||
integer, | intent(in) | :: | handle |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(mp_info_type), | intent(inout) | :: | info | |||
integer, | intent(in) | :: | handle |
initializes the system default communicator
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_comm_type), | intent(out) | :: | mp_comm |
[output] : handle of the default communicator |
re-create the system default communicator with a different MPI rank order
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_comm_type), | intent(in) | :: | mp_comm |
[output] : handle of the default communicator |
||
type(mp_comm_type), | intent(out) | :: | mp_new_comm | |||
integer, | DIMENSION(:), CONTIGUOUS | :: | ranks_order |
finalizes the system default communicator
start and stop the performance indicators for every call to start there has to be (exactly) one call to stop
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_perf_env_type), | optional, | POINTER | :: | perf_env |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_perf_env_type), | optional, | POINTER | :: | perf_env |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_perf_env_type), | POINTER | :: | perf_env |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_perf_env_type), | POINTER | :: | perf_env |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_perf_env_type), | POINTER | :: | perf_env | |||
integer, | intent(in) | :: | iw |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | scr |
globally stops all tasks this is intended to be low level, most of CP2K should call dbcsr_abort()
stops after an mpi error translating the error code
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | ierr |
an error code * returned by an mpi call * |
||
character(len=*) | :: | prg_code |
synchronizes with a barrier a given group of mpi tasks
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_comm_type), | intent(in) | :: | group |
mpi communicator |
synchronizes with a barrier a given group of mpi tasks
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_comm_type), | intent(in) | :: | group |
mpi communicator |
||
type(mp_request_type), | intent(out) | :: | request |
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.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(out), | optional | :: | numtask | ||
integer, | intent(out), | optional | :: | taskid | ||
type(mp_comm_type), | intent(in) | :: | groupid |
mpi communicator |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(out) | :: | numtask | |||
integer, | intent(out) | :: | dims(2) | |||
integer, | intent(out) | :: | task_coor(2) | |||
type(mp_comm_type), | intent(in) | :: | groupid |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_comm_type), | intent(in) | :: | comm | |||
integer, | intent(in) | :: | ndims | |||
integer, | intent(out) | :: | dims(ndims) | |||
integer, | intent(out) | :: | task_coor(ndims) | |||
logical, | intent(out) | :: | periods(ndims) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_comm_type), | intent(in) | :: | comm_old | |||
integer, | intent(in) | :: | ndims | |||
integer, | intent(inout), | CONTIGUOUS | :: | dims(:) | ||
integer, | intent(out), | CONTIGUOUS | :: | pos(:) | ||
type(mp_comm_type), | intent(out) | :: | comm_cart |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_comm_type), | intent(in) | :: | comm | |||
integer, | intent(in) | :: | rank | |||
integer, | intent(out), | DIMENSION(:), CONTIGUOUS | :: | coords |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_comm_type), | intent(in) | :: | comm1 | |||
type(mp_comm_type), | intent(in) | :: | comm2 | |||
integer, | intent(out) | :: | res |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_comm_type), | intent(in) | :: | comm | |||
logical, | intent(in), | DIMENSION(:), CONTIGUOUS | :: | rdim | ||
type(mp_comm_type), | intent(out) | :: | sub_comm |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_comm_type), | intent(inout) | :: | comm |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_comm_type), | intent(in) | :: | comm1 | |||
type(mp_comm_type), | intent(out) | :: | comm2 |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_comm_type), | intent(in) | :: | comm1 | |||
type(mp_comm_type), | intent(in) | :: | comm2 | |||
integer, | intent(out), | DIMENSION(:), CONTIGUOUS | :: | rank |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | nodes | |||
integer, | intent(inout), | DIMENSION(:), CONTIGUOUS | :: | dims |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_comm_type), | intent(in) | :: | group | |||
integer, | intent(in), | DIMENSION(:), CONTIGUOUS | :: | pos | ||
integer, | intent(out) | :: | rank |
waits for completion of the given request
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_request_type), | intent(inout) | :: | request |
waits for completion of the given requests
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_request_type), | intent(inout), | DIMENSION(:) | :: | requests |
waits for completion of the given requests
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_request_type), | intent(inout), | DIMENSION(:, :) | :: | requests |
waits for completion of any of the given requests
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_request_type), | intent(inout), | DIMENSION(:) | :: | requests | ||
integer, | intent(out) | :: | completed |
Tests for completion of the given request.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_request_type), | intent(inout) | :: | request |
the request |
||
logical, | intent(out) | :: | flag |
logical which determines if the request is completed |
tests for completion of the given requests
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_request_type), | intent(inout), | DIMENSION(:) | :: | requests | ||
integer, | intent(out), | optional | :: | completed | ||
logical, | intent(out), | optional | :: | flag |
tests for completion of the given requests
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_request_type), | intent(inout), | DIMENSION(:, :) | :: | requests | ||
integer, | intent(out), | optional | :: | completed | ||
logical, | intent(out), | optional | :: | flag |
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
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_comm_type), | intent(out) | :: | sub_comm | |||
integer, | intent(in) | :: | color | |||
integer, | intent(in), | optional | :: | key |
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)
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_comm_type), | intent(in) | :: | comm |
the mpi communicator that you want to split |
||
type(mp_comm_type), | intent(out) | :: | sub_comm |
the communicator for the subgroup (created, needs to be freed later) |
||
integer, | intent(out) | :: | ngroups |
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. |
probes for an incoming message with any tag
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
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 |
|||
type(mp_comm_type), | intent(in) | :: | comm |
the communicator |
||
integer, | intent(out) | :: | tag |
the tag of the incoming message |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
logical | :: | msg | ||||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
logical, | CONTIGUOUS | :: | msg(:) | |||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Non-blocking send of logical vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
logical, | DIMENSION(:), CONTIGUOUS | :: | msgin |
the input message |
||
integer, | intent(in) | :: | dest |
the destination processor |
||
type(mp_comm_type), | intent(in) | :: | comm |
the communicator object |
||
type(mp_request_type), | intent(out) | :: | request |
communication request index |
||
integer, | intent(in), | optional | :: | tag |
message tag |
Non-blocking receive of logical vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
logical, | DIMENSION(:), CONTIGUOUS | :: | msgout |
the received message |
||
integer, | intent(in) | :: | source |
the source processor |
||
type(mp_comm_type), | intent(in) | :: | comm |
the communicator object |
||
type(mp_request_type), | intent(out) | :: | request |
communication request index |
||
integer, | intent(in), | optional | :: | tag |
message tag |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=*) | :: | msg | ||||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=*) | :: | msg(:) | ||||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Finds the location of the minimal element in a vector.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Find location of maximum element among these data (input). |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Finds the location of the maximal element in a vector.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Find location of maximum element among these data (input). |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Logical OR reduction
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
logical, | intent(inout) | :: | msg |
Datum to perform inclusive disjunction (input) and resultant inclusive disjunction (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Logical OR reduction
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
logical, | intent(inout), | DIMENSION(:), CONTIGUOUS | :: | msg |
Datum to perform inclusive disjunction (input) and resultant inclusive disjunction (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Logical OR reduction
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
logical, | intent(inout), | DIMENSION(:), CONTIGUOUS | :: | msg |
Datum to perform inclusive disjunction (input) and resultant inclusive disjunction (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Get Version of the MPI Library (MPI 3)
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
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) |
Get a unique specifier for the actual (as opposed to virtual) node (MPI 2.1)
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=*), | intent(out) | :: | procname |
Name of processor |
||
integer, | intent(out), | optional | :: | resultlen |
Length (in characters) of procname (INTEGER) |
Opens a file
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_comm_type), | intent(in) | :: | groupid |
message passing environment identifier |
||
type(mp_file_type), | intent(out) | :: | fh |
file handle (file storage unit) |
||
character(len=*), | intent(in) | :: | filepath |
path to the file |
||
integer, | intent(in) | :: | amode_status |
access mode |
||
type(mp_info_type), | intent(in), | optional | :: | info |
info object |
Deletes a file. Auxiliary routine to emulate 'replace' action for mp_file_open. Only the master processor should call this routine.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=*), | intent(in) | :: | filepath |
path to the file |
||
type(mp_info_type), | intent(in), | optional | :: | info |
info object |
Closes a file
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(inout) | :: | fh |
file handle (file storage unit) |
Returns the file size
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh |
file handle (file storage unit) |
||
integer(kind=file_offset), | intent(out) | :: | file_size |
the file size |
Returns the file position
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh |
file handle (file storage unit) |
||
integer(kind=file_offset), | intent(out) | :: | pos |
the file position |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
character(len=*), | intent(in) | :: | msg |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
character(len=*), | intent(in) | :: | msg |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
character(len=*), | intent(out) | :: | msg |
Returns the size of a data type in bytes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_type_descriptor_type), | intent(in) | :: | type_descriptor |
data type |
||
integer, | intent(out) | :: | type_size |
size of the data type |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_type_descriptor_type), | intent(inout) | :: | type_descriptor |
Non-blocking send of custom type
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_type_descriptor_type), | intent(in) | :: | msgin | |||
integer, | intent(in) | :: | dest | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking receive of vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_type_descriptor_type), | intent(inout) | :: | msgout | |||
integer, | intent(in) | :: | source | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
All-to-all data exchange, rank-1 data of different sizes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | sb(:) |
Data to send |
|
integer, | intent(in), | CONTIGUOUS | :: | scount(:) |
Data counts for data sent to other processes Respective data offsets for data sent to process |
|
integer, | intent(in), | CONTIGUOUS | :: | sdispl(:) |
Data counts for data sent to other processes Respective data offsets for data sent to process |
|
integer(kind=int_4), | intent(inout), | CONTIGUOUS | :: | rb(:) |
Buffer into which to receive data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:) |
Data counts for data received from other processes Respective data offsets for data received from other processes |
|
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:) |
Data counts for data received from other processes Respective data offsets for data received from other processes |
|
type(mp_comm_type), | intent(in) | :: | group |
Message passing environment identifier |
All-to-all data exchange, rank 1 arrays, equal sizes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | sb(:) |
array with data to send |
|
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | rb(:) |
array into which data is received |
|
integer, | intent(in) | :: | count |
number of elements to send/receive (product of the extents of the first two dimensions) |
||
type(mp_comm_type), | intent(in) | :: | group |
Message passing environment identifier |
All-to-all data exchange, rank-2 arrays, equal sizes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | sb(:,:) | ||
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | rb(:,:) | ||
integer, | intent(in) | :: | count | |||
type(mp_comm_type), | intent(in) | :: | group |
All-to-all data exchange, rank 4 data, equal sizes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | DIMENSION(:, :, :, :), CONTIGUOUS | :: | sb | ||
integer(kind=int_4), | intent(out), | DIMENSION(:, :, :, :), CONTIGUOUS | :: | rb | ||
integer, | intent(in) | :: | count | |||
type(mp_comm_type), | intent(in) | :: | group |
Send one datum to another process
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4) | :: | msg |
Scalar to send |
|||
integer | :: | dest |
Destination process Transfer identifier |
|||
integer | :: | tag |
Destination process Transfer identifier |
|||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Send rank-1 data to another process
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | CONTIGUOUS | :: | msg(:) |
Rank-1 data to send |
||
integer | :: | dest | ||||
integer | :: | tag | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Receive one datum from another process
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(inout) | :: | msg |
Place received data into this variable |
||
integer, | intent(inout) | :: | source |
Process to receive from Transfer identifier |
||
integer, | intent(inout) | :: | tag |
Process to receive from Transfer identifier |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Receive rank-1 data from another process
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Place received data into this rank-1 array |
|
integer, | intent(inout) | :: | source | |||
integer, | intent(inout) | :: | tag | |||
type(mp_comm_type), | intent(in) | :: | gid |
Broadcasts a datum to all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4) | :: | msg |
Datum to broadcast |
|||
integer | :: | source |
Processes which broadcasts |
|||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Broadcasts a datum to all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4) | :: | msg |
Datum to broadcast |
|||
integer | :: | source |
Processes which broadcasts |
|||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Broadcasts rank-1 data to all processes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | CONTIGUOUS | :: | msg(:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Broadcasts rank-1 data to all processes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | CONTIGUOUS | :: | msg(:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(inout) | :: | request |
Broadcasts rank-2 data to all processes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | CONTIGUOUS | :: | msg(:,:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Broadcasts rank-3 data to all processes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | CONTIGUOUS | :: | msg(:,:,:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Sums a datum from all processes with result left on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(inout) | :: | msg |
Datum to sum (input) and result (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Element-wise sum of a rank-1 array on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Vector to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of a rank-1 array on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Vector to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(inout) | :: | request |
Element-wise sum of a rank-2 array on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(inout), | CONTIGUOUS | :: | msg(:,:) |
Matrix to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of a rank-3 array on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(inout), | CONTIGUOUS | :: | msg(:,:,:) |
Array to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of a rank-4 array on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(inout), | CONTIGUOUS | :: | msg(:,:,:,:) |
Array to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of data from all processes with result left only on one.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Vector to sum (input) and (only on process root) result (output) |
|
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Element-wise sum of data from all processes with result left only on one.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(inout), | CONTIGUOUS | :: | msg(:,:) |
Matrix to sum (input) and (only on process root) result (output) |
|
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Partial sum of data from all processes with result on each process.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msg(:,:) |
Matrix to sum (input) |
|
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | res(:,:) |
Matrix containing result (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Finds the maximum of a datum with the result left on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(inout) | :: | msg |
Find maximum among these data (input) and maximum (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Finds the element-wise maximum of a vector with the result left on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Find maximum among these data (input) and maximum (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Finds the minimum of a datum with the result left on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(inout) | :: | msg |
Find minimum among these data (input) and maximum (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Finds the element-wise minimum of vector with the result left on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Find minimum among these data (input) and maximum (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Multiplies a set of numbers scattered across a number of processes, then replicates the result.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(inout) | :: | msg |
a number to multiply (input) and result (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
message passing environment identifier |
Scatters data from one processes to all others
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msg_scatter(:) |
Data to scatter (for root process) |
|
integer(kind=int_4), | intent(inout) | :: | msg | |||
integer, | intent(in) | :: | root |
Process which scatters data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Scatters data from one processes to all others
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msg_scatter(:,:) |
Data to scatter (for root process) |
|
integer(kind=int_4), | intent(inout), | CONTIGUOUS | :: | msg(:) | ||
integer, | intent(in) | :: | root |
Process which scatters data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Scatters data from one processes to all others
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msg_scatter(:) |
Data to scatter (for root process) |
|
integer, | intent(in), | CONTIGUOUS | :: | sendcounts(:) | ||
integer, | intent(in), | CONTIGUOUS | :: | displs(:) | ||
integer(kind=int_4), | intent(inout), | CONTIGUOUS | :: | msg(:) | ||
integer, | intent(in) | :: | recvcount |
Process which scatters data |
||
integer, | intent(in) | :: | root |
Process which scatters data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Gathers a datum from all processes to one
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in) | :: | msg |
Datum to send to root |
||
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msg_gather(:) |
Received data (on root) |
|
integer, | intent(in) | :: | root |
Process which gathers the data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers data from all processes to one
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msg(:) |
Datum to send to root |
|
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msg_gather(:) | ||
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers data from all processes to one
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msg(:,:) |
Datum to send to root |
|
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msg_gather(:,:) | ||
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers data from all processes to one.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | DIMENSION(:), CONTIGUOUS | :: | sendbuf |
Data to send to root |
|
integer(kind=int_4), | intent(out), | DIMENSION(:), CONTIGUOUS | :: | recvbuf |
Received data (on root) |
|
integer, | intent(in), | DIMENSION(:), CONTIGUOUS | :: | recvcounts |
Sizes of data received from processes Offsets of data received from processes |
|
integer, | intent(in), | DIMENSION(:), CONTIGUOUS | :: | displs |
Sizes of data received from processes Offsets of data received from processes |
|
integer, | intent(in) | :: | root |
Process which gathers the data |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
Gathers a datum from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in) | :: | msgout |
Datum to send |
||
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers a datum from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in) | :: | msgout |
Datum to send |
||
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers a datum from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in) | :: | msgout |
Datum to send |
||
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Gathers vector data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers matrix data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers rank-3 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msgout(:,:,:) |
Rank-3 data to send |
|
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers rank-2 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers rank-1 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msgin(:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-2 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-2 data to send |
|
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-2 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-2 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-3 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msgout(:,:,:) |
Rank-3 data to send |
|
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers vector data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:) | ||
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Size of sent data for every process Offset of sent data for every process Message passing environment identifier |
Gathers vector data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:) | ||
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Size of sent data for every process Offset of sent data for every process Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Gathers vector data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:,:) | ||
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Size of sent data for every process Offset of sent data for every process Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Sends and receives vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | intent(in), | CONTIGUOUS | :: | msgin(:) |
Data to send |
|
integer, | intent(in) | :: | dest |
Process to send data to |
||
integer(kind=int_4), | intent(out), | CONTIGUOUS | :: | msgout(:) |
Received data |
|
integer, | intent(in) | :: | source |
Process from which to receive |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
Non-blocking send and receive of a scalar
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4) | :: | msgin |
Scalar data to send |
|||
integer, | intent(in) | :: | dest |
Which process to send to |
||
integer(kind=int_4) | :: | msgout |
Receive data into this pointer |
|||
integer, | intent(in) | :: | source |
Process to receive from |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
||
type(mp_request_type), | intent(out) | :: | send_request |
Request handle for the send Request handle for the receive |
||
type(mp_request_type), | intent(out) | :: | recv_request |
Request handle for the send Request handle for the receive |
||
integer, | intent(in), | optional | :: | tag |
tag to differentiate requests |
Non-blocking send and receive of a vector
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | CONTIGUOUS, DIMENSION(:) | :: | msgin |
Vector data to send |
||
integer, | intent(in) | :: | dest |
Which process to send to |
||
integer(kind=int_4), | CONTIGUOUS, DIMENSION(:) | :: | msgout |
Receive data into this pointer |
||
integer, | intent(in) | :: | source |
Process to receive from |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
||
type(mp_request_type), | intent(out) | :: | send_request |
Request handle for the send Request handle for the receive |
||
type(mp_request_type), | intent(out) | :: | recv_request |
Request handle for the send Request handle for the receive |
||
integer, | intent(in), | optional | :: | tag |
tag to differentiate requests |
Non-blocking send of vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | CONTIGUOUS, DIMENSION(:) | :: | msgin | |||
integer, | intent(in) | :: | dest | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking send of matrix data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | DIMENSION(:, :), CONTIGUOUS | :: | msgin | |||
integer, | intent(in) | :: | dest | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking receive of vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | CONTIGUOUS, DIMENSION(:) | :: | msgout | |||
integer, | intent(in) | :: | source | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking receive of matrix data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | DIMENSION(:, :), CONTIGUOUS | :: | msgout | |||
integer, | intent(in) | :: | source | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Window initialization function for vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | CONTIGUOUS, DIMENSION(:) | :: | base | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_win_type), | intent(out) | :: | win |
Single-sided get function for vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | CONTIGUOUS, DIMENSION(:) | :: | base | |||
integer, | intent(in) | :: | source | |||
type(mp_win_type), | intent(in) | :: | win | |||
integer(kind=int_4), | CONTIGUOUS, DIMENSION(:) | :: | win_data | |||
integer, | intent(in), | optional | :: | myproc | ||
integer, | intent(in), | optional | :: | disp | ||
type(mp_request_type), | intent(out) | :: | request | |||
type(mp_type_descriptor_type), | intent(in), | optional | :: | origin_datatype | ||
type(mp_type_descriptor_type), | intent(in), | optional | :: | target_datatype |
Allocates special parallel memory
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | DIMENSION(:), POINTER, CONTIGUOUS | :: | DATA |
pointer to integer array to allocate |
||
integer, | intent(in) | :: | len |
number of integers to allocate |
||
integer, | intent(out), | optional | :: | stat |
allocation status result |
Deallocates special parallel memory
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_4), | DIMENSION(:), POINTER, CONTIGUOUS | :: | DATA |
pointer to special memory to deallocate |
||
integer, | intent(out), | optional | :: | stat |
(parallel) Blocking individual file write using explicit offsets (serial) Unformatted stream write
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh |
file handle (file storage unit) |
||
integer(kind=file_offset), | intent(in) | :: | offset |
file offset (position) |
||
integer(kind=int_4), | intent(in) | :: | msg(:) |
data to be written to the file |
||
integer, | intent(in), | optional | :: | msglen |
number of the elements of data |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
integer(kind=int_4), | intent(in) | :: | msg |
(parallel) Blocking collective file write using explicit offsets (serial) Unformatted stream write
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
integer(kind=int_4), | intent(in) | :: | msg(:) | |||
integer, | intent(in), | optional | :: | msglen |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
integer(kind=int_4), | intent(in) | :: | msg |
(parallel) Blocking collective file read using explicit offsets (serial) Unformatted stream read
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
integer(kind=int_4), | intent(out) | :: | msg(:) | |||
integer, | intent(in), | optional | :: | msglen |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
integer(kind=int_4), | intent(out) | :: | msg |
All-to-all data exchange, rank-1 data of different sizes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | sb(:) |
Data to send |
|
integer, | intent(in), | CONTIGUOUS | :: | scount(:) |
Data counts for data sent to other processes Respective data offsets for data sent to process |
|
integer, | intent(in), | CONTIGUOUS | :: | sdispl(:) |
Data counts for data sent to other processes Respective data offsets for data sent to process |
|
integer(kind=int_8), | intent(inout), | CONTIGUOUS | :: | rb(:) |
Buffer into which to receive data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:) |
Data counts for data received from other processes Respective data offsets for data received from other processes |
|
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:) |
Data counts for data received from other processes Respective data offsets for data received from other processes |
|
type(mp_comm_type), | intent(in) | :: | group |
Message passing environment identifier |
All-to-all data exchange, rank 1 arrays, equal sizes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | sb(:) |
array with data to send |
|
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | rb(:) |
array into which data is received |
|
integer, | intent(in) | :: | count |
number of elements to send/receive (product of the extents of the first two dimensions) |
||
type(mp_comm_type), | intent(in) | :: | group |
Message passing environment identifier |
All-to-all data exchange, rank-2 arrays, equal sizes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | sb(:,:) | ||
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | rb(:,:) | ||
integer, | intent(in) | :: | count | |||
type(mp_comm_type), | intent(in) | :: | group |
All-to-all data exchange, rank 4 data, equal sizes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | DIMENSION(:, :, :, :), CONTIGUOUS | :: | sb | ||
integer(kind=int_8), | intent(out), | DIMENSION(:, :, :, :), CONTIGUOUS | :: | rb | ||
integer, | intent(in) | :: | count | |||
type(mp_comm_type), | intent(in) | :: | group |
Send one datum to another process
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8) | :: | msg |
Scalar to send |
|||
integer | :: | dest |
Destination process Transfer identifier |
|||
integer | :: | tag |
Destination process Transfer identifier |
|||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Send rank-1 data to another process
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | CONTIGUOUS | :: | msg(:) |
Rank-1 data to send |
||
integer | :: | dest | ||||
integer | :: | tag | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Receive one datum from another process
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(inout) | :: | msg |
Place received data into this variable |
||
integer, | intent(inout) | :: | source |
Process to receive from Transfer identifier |
||
integer, | intent(inout) | :: | tag |
Process to receive from Transfer identifier |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Receive rank-1 data from another process
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Place received data into this rank-1 array |
|
integer, | intent(inout) | :: | source | |||
integer, | intent(inout) | :: | tag | |||
type(mp_comm_type), | intent(in) | :: | gid |
Broadcasts a datum to all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8) | :: | msg |
Datum to broadcast |
|||
integer | :: | source |
Processes which broadcasts |
|||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Broadcasts a datum to all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8) | :: | msg |
Datum to broadcast |
|||
integer | :: | source |
Processes which broadcasts |
|||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Broadcasts rank-1 data to all processes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | CONTIGUOUS | :: | msg(:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Broadcasts rank-1 data to all processes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | CONTIGUOUS | :: | msg(:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(inout) | :: | request |
Broadcasts rank-2 data to all processes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | CONTIGUOUS | :: | msg(:,:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Broadcasts rank-3 data to all processes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | CONTIGUOUS | :: | msg(:,:,:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Sums a datum from all processes with result left on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(inout) | :: | msg |
Datum to sum (input) and result (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Element-wise sum of a rank-1 array on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Vector to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of a rank-1 array on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Vector to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(inout) | :: | request |
Element-wise sum of a rank-2 array on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(inout), | CONTIGUOUS | :: | msg(:,:) |
Matrix to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of a rank-3 array on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(inout), | CONTIGUOUS | :: | msg(:,:,:) |
Array to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of a rank-4 array on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(inout), | CONTIGUOUS | :: | msg(:,:,:,:) |
Array to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of data from all processes with result left only on one.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Vector to sum (input) and (only on process root) result (output) |
|
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Element-wise sum of data from all processes with result left only on one.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(inout), | CONTIGUOUS | :: | msg(:,:) |
Matrix to sum (input) and (only on process root) result (output) |
|
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Partial sum of data from all processes with result on each process.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msg(:,:) |
Matrix to sum (input) |
|
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | res(:,:) |
Matrix containing result (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Finds the maximum of a datum with the result left on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(inout) | :: | msg |
Find maximum among these data (input) and maximum (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Finds the element-wise maximum of a vector with the result left on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Find maximum among these data (input) and maximum (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Finds the minimum of a datum with the result left on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(inout) | :: | msg |
Find minimum among these data (input) and maximum (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Finds the element-wise minimum of vector with the result left on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Find minimum among these data (input) and maximum (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Multiplies a set of numbers scattered across a number of processes, then replicates the result.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(inout) | :: | msg |
a number to multiply (input) and result (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
message passing environment identifier |
Scatters data from one processes to all others
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msg_scatter(:) |
Data to scatter (for root process) |
|
integer(kind=int_8), | intent(inout) | :: | msg | |||
integer, | intent(in) | :: | root |
Process which scatters data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Scatters data from one processes to all others
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msg_scatter(:,:) |
Data to scatter (for root process) |
|
integer(kind=int_8), | intent(inout), | CONTIGUOUS | :: | msg(:) | ||
integer, | intent(in) | :: | root |
Process which scatters data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Scatters data from one processes to all others
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msg_scatter(:) |
Data to scatter (for root process) |
|
integer, | intent(in), | CONTIGUOUS | :: | sendcounts(:) | ||
integer, | intent(in), | CONTIGUOUS | :: | displs(:) | ||
integer(kind=int_8), | intent(inout), | CONTIGUOUS | :: | msg(:) | ||
integer, | intent(in) | :: | recvcount |
Process which scatters data |
||
integer, | intent(in) | :: | root |
Process which scatters data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Gathers a datum from all processes to one
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in) | :: | msg |
Datum to send to root |
||
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msg_gather(:) |
Received data (on root) |
|
integer, | intent(in) | :: | root |
Process which gathers the data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers data from all processes to one
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msg(:) |
Datum to send to root |
|
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msg_gather(:) | ||
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers data from all processes to one
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msg(:,:) |
Datum to send to root |
|
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msg_gather(:,:) | ||
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers data from all processes to one.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | DIMENSION(:), CONTIGUOUS | :: | sendbuf |
Data to send to root |
|
integer(kind=int_8), | intent(out), | DIMENSION(:), CONTIGUOUS | :: | recvbuf |
Received data (on root) |
|
integer, | intent(in), | DIMENSION(:), CONTIGUOUS | :: | recvcounts |
Sizes of data received from processes Offsets of data received from processes |
|
integer, | intent(in), | DIMENSION(:), CONTIGUOUS | :: | displs |
Sizes of data received from processes Offsets of data received from processes |
|
integer, | intent(in) | :: | root |
Process which gathers the data |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
Gathers a datum from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in) | :: | msgout |
Datum to send |
||
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers a datum from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in) | :: | msgout |
Datum to send |
||
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers a datum from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in) | :: | msgout |
Datum to send |
||
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Gathers vector data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers matrix data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers rank-3 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msgout(:,:,:) |
Rank-3 data to send |
|
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers rank-2 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers rank-1 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msgin(:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-2 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-2 data to send |
|
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-2 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-2 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-3 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msgout(:,:,:) |
Rank-3 data to send |
|
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers vector data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:) | ||
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Size of sent data for every process Offset of sent data for every process Message passing environment identifier |
Gathers vector data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:) | ||
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Size of sent data for every process Offset of sent data for every process Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Gathers vector data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:,:) | ||
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Size of sent data for every process Offset of sent data for every process Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Sends and receives vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | intent(in), | CONTIGUOUS | :: | msgin(:) |
Data to send |
|
integer, | intent(in) | :: | dest |
Process to send data to |
||
integer(kind=int_8), | intent(out), | CONTIGUOUS | :: | msgout(:) |
Received data |
|
integer, | intent(in) | :: | source |
Process from which to receive |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
Non-blocking send and receive of a scalar
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8) | :: | msgin |
Scalar data to send |
|||
integer, | intent(in) | :: | dest |
Which process to send to |
||
integer(kind=int_8) | :: | msgout |
Receive data into this pointer |
|||
integer, | intent(in) | :: | source |
Process to receive from |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
||
type(mp_request_type), | intent(out) | :: | send_request |
Request handle for the send Request handle for the receive |
||
type(mp_request_type), | intent(out) | :: | recv_request |
Request handle for the send Request handle for the receive |
||
integer, | intent(in), | optional | :: | tag |
tag to differentiate requests |
Non-blocking send and receive of a vector
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | CONTIGUOUS, DIMENSION(:) | :: | msgin |
Vector data to send |
||
integer, | intent(in) | :: | dest |
Which process to send to |
||
integer(kind=int_8), | CONTIGUOUS, DIMENSION(:) | :: | msgout |
Receive data into this pointer |
||
integer, | intent(in) | :: | source |
Process to receive from |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
||
type(mp_request_type), | intent(out) | :: | send_request |
Request handle for the send Request handle for the receive |
||
type(mp_request_type), | intent(out) | :: | recv_request |
Request handle for the send Request handle for the receive |
||
integer, | intent(in), | optional | :: | tag |
tag to differentiate requests |
Non-blocking send of vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | CONTIGUOUS, DIMENSION(:) | :: | msgin | |||
integer, | intent(in) | :: | dest | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking send of matrix data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | DIMENSION(:, :), CONTIGUOUS | :: | msgin | |||
integer, | intent(in) | :: | dest | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking receive of vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | CONTIGUOUS, DIMENSION(:) | :: | msgout | |||
integer, | intent(in) | :: | source | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking receive of matrix data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | DIMENSION(:, :), CONTIGUOUS | :: | msgout | |||
integer, | intent(in) | :: | source | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Window initialization function for vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | CONTIGUOUS, DIMENSION(:) | :: | base | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_win_type), | intent(out) | :: | win |
Single-sided get function for vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | CONTIGUOUS, DIMENSION(:) | :: | base | |||
integer, | intent(in) | :: | source | |||
type(mp_win_type), | intent(in) | :: | win | |||
integer(kind=int_8), | CONTIGUOUS, DIMENSION(:) | :: | win_data | |||
integer, | intent(in), | optional | :: | myproc | ||
integer, | intent(in), | optional | :: | disp | ||
type(mp_request_type), | intent(out) | :: | request | |||
type(mp_type_descriptor_type), | intent(in), | optional | :: | origin_datatype | ||
type(mp_type_descriptor_type), | intent(in), | optional | :: | target_datatype |
Allocates special parallel memory
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | DIMENSION(:), POINTER, CONTIGUOUS | :: | DATA |
pointer to integer array to allocate |
||
integer, | intent(in) | :: | len |
number of integers to allocate |
||
integer, | intent(out), | optional | :: | stat |
allocation status result |
Deallocates special parallel memory
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_8), | DIMENSION(:), POINTER, CONTIGUOUS | :: | DATA |
pointer to special memory to deallocate |
||
integer, | intent(out), | optional | :: | stat |
(parallel) Blocking individual file write using explicit offsets (serial) Unformatted stream write
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh |
file handle (file storage unit) |
||
integer(kind=file_offset), | intent(in) | :: | offset |
file offset (position) |
||
integer(kind=int_8), | intent(in) | :: | msg(:) |
data to be written to the file |
||
integer, | intent(in), | optional | :: | msglen |
number of the elements of data |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
integer(kind=int_8), | intent(in) | :: | msg |
(parallel) Blocking collective file write using explicit offsets (serial) Unformatted stream write
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
integer(kind=int_8), | intent(in) | :: | msg(:) | |||
integer, | intent(in), | optional | :: | msglen |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
integer(kind=int_8), | intent(in) | :: | msg |
(parallel) Blocking collective file read using explicit offsets (serial) Unformatted stream read
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
integer(kind=int_8), | intent(out) | :: | msg(:) | |||
integer, | intent(in), | optional | :: | msglen |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
integer(kind=int_8), | intent(out) | :: | msg |
All-to-all data exchange, rank-1 data of different sizes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | sb(:) |
Data to send |
|
integer, | intent(in), | CONTIGUOUS | :: | scount(:) |
Data counts for data sent to other processes Respective data offsets for data sent to process |
|
integer, | intent(in), | CONTIGUOUS | :: | sdispl(:) |
Data counts for data sent to other processes Respective data offsets for data sent to process |
|
real(kind=real_8), | intent(inout), | CONTIGUOUS | :: | rb(:) |
Buffer into which to receive data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:) |
Data counts for data received from other processes Respective data offsets for data received from other processes |
|
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:) |
Data counts for data received from other processes Respective data offsets for data received from other processes |
|
type(mp_comm_type), | intent(in) | :: | group |
Message passing environment identifier |
All-to-all data exchange, rank 1 arrays, equal sizes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | sb(:) |
array with data to send |
|
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | rb(:) |
array into which data is received |
|
integer, | intent(in) | :: | count |
number of elements to send/receive (product of the extents of the first two dimensions) |
||
type(mp_comm_type), | intent(in) | :: | group |
Message passing environment identifier |
All-to-all data exchange, rank-2 arrays, equal sizes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | sb(:,:) | ||
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | rb(:,:) | ||
integer, | intent(in) | :: | count | |||
type(mp_comm_type), | intent(in) | :: | group |
All-to-all data exchange, rank 4 data, equal sizes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | DIMENSION(:, :, :, :), CONTIGUOUS | :: | sb | ||
real(kind=real_8), | intent(out), | DIMENSION(:, :, :, :), CONTIGUOUS | :: | rb | ||
integer, | intent(in) | :: | count | |||
type(mp_comm_type), | intent(in) | :: | group |
Send one datum to another process
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8) | :: | msg |
Scalar to send |
|||
integer | :: | dest |
Destination process Transfer identifier |
|||
integer | :: | tag |
Destination process Transfer identifier |
|||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Send rank-1 data to another process
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | CONTIGUOUS | :: | msg(:) |
Rank-1 data to send |
||
integer | :: | dest | ||||
integer | :: | tag | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Receive one datum from another process
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(inout) | :: | msg |
Place received data into this variable |
||
integer, | intent(inout) | :: | source |
Process to receive from Transfer identifier |
||
integer, | intent(inout) | :: | tag |
Process to receive from Transfer identifier |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Receive rank-1 data from another process
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Place received data into this rank-1 array |
|
integer, | intent(inout) | :: | source | |||
integer, | intent(inout) | :: | tag | |||
type(mp_comm_type), | intent(in) | :: | gid |
Broadcasts a datum to all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8) | :: | msg |
Datum to broadcast |
|||
integer | :: | source |
Processes which broadcasts |
|||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Broadcasts a datum to all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8) | :: | msg |
Datum to broadcast |
|||
integer | :: | source |
Processes which broadcasts |
|||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Broadcasts rank-1 data to all processes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | CONTIGUOUS | :: | msg(:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Broadcasts rank-1 data to all processes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | CONTIGUOUS | :: | msg(:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(inout) | :: | request |
Broadcasts rank-2 data to all processes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | CONTIGUOUS | :: | msg(:,:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Broadcasts rank-3 data to all processes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | CONTIGUOUS | :: | msg(:,:,:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Sums a datum from all processes with result left on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(inout) | :: | msg |
Datum to sum (input) and result (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Element-wise sum of a rank-1 array on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Vector to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of a rank-1 array on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Vector to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(inout) | :: | request |
Element-wise sum of a rank-2 array on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:,:) |
Matrix to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of a rank-3 array on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:,:,:) |
Array to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of a rank-4 array on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:,:,:,:) |
Array to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of data from all processes with result left only on one.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Vector to sum (input) and (only on process root) result (output) |
|
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Element-wise sum of data from all processes with result left only on one.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:,:) |
Matrix to sum (input) and (only on process root) result (output) |
|
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Partial sum of data from all processes with result on each process.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msg(:,:) |
Matrix to sum (input) |
|
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | res(:,:) |
Matrix containing result (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Finds the maximum of a datum with the result left on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(inout) | :: | msg |
Find maximum among these data (input) and maximum (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Finds the element-wise maximum of a vector with the result left on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Find maximum among these data (input) and maximum (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Finds the minimum of a datum with the result left on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(inout) | :: | msg |
Find minimum among these data (input) and maximum (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Finds the element-wise minimum of vector with the result left on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Find minimum among these data (input) and maximum (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Multiplies a set of numbers scattered across a number of processes, then replicates the result.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(inout) | :: | msg |
a number to multiply (input) and result (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
message passing environment identifier |
Scatters data from one processes to all others
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msg_scatter(:) |
Data to scatter (for root process) |
|
real(kind=real_8), | intent(inout) | :: | msg | |||
integer, | intent(in) | :: | root |
Process which scatters data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Scatters data from one processes to all others
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msg_scatter(:,:) |
Data to scatter (for root process) |
|
real(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:) | ||
integer, | intent(in) | :: | root |
Process which scatters data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Scatters data from one processes to all others
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msg_scatter(:) |
Data to scatter (for root process) |
|
integer, | intent(in), | CONTIGUOUS | :: | sendcounts(:) | ||
integer, | intent(in), | CONTIGUOUS | :: | displs(:) | ||
real(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:) | ||
integer, | intent(in) | :: | recvcount |
Process which scatters data |
||
integer, | intent(in) | :: | root |
Process which scatters data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Gathers a datum from all processes to one
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in) | :: | msg |
Datum to send to root |
||
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msg_gather(:) |
Received data (on root) |
|
integer, | intent(in) | :: | root |
Process which gathers the data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers data from all processes to one
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msg(:) |
Datum to send to root |
|
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msg_gather(:) | ||
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers data from all processes to one
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msg(:,:) |
Datum to send to root |
|
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msg_gather(:,:) | ||
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers data from all processes to one.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | DIMENSION(:), CONTIGUOUS | :: | sendbuf |
Data to send to root |
|
real(kind=real_8), | intent(out), | DIMENSION(:), CONTIGUOUS | :: | recvbuf |
Received data (on root) |
|
integer, | intent(in), | DIMENSION(:), CONTIGUOUS | :: | recvcounts |
Sizes of data received from processes Offsets of data received from processes |
|
integer, | intent(in), | DIMENSION(:), CONTIGUOUS | :: | displs |
Sizes of data received from processes Offsets of data received from processes |
|
integer, | intent(in) | :: | root |
Process which gathers the data |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
Gathers a datum from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in) | :: | msgout |
Datum to send |
||
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers a datum from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in) | :: | msgout |
Datum to send |
||
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers a datum from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in) | :: | msgout |
Datum to send |
||
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Gathers vector data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers matrix data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers rank-3 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:,:,:) |
Rank-3 data to send |
|
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers rank-2 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers rank-1 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-2 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-2 data to send |
|
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-2 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-2 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-3 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:,:,:) |
Rank-3 data to send |
|
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers vector data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:) | ||
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Size of sent data for every process Offset of sent data for every process Message passing environment identifier |
Gathers vector data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:) | ||
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Size of sent data for every process Offset of sent data for every process Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Gathers vector data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:,:) | ||
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Size of sent data for every process Offset of sent data for every process Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Sends and receives vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgin(:) |
Data to send |
|
integer, | intent(in) | :: | dest |
Process to send data to |
||
real(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgout(:) |
Received data |
|
integer, | intent(in) | :: | source |
Process from which to receive |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
Non-blocking send and receive of a scalar
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8) | :: | msgin |
Scalar data to send |
|||
integer, | intent(in) | :: | dest |
Which process to send to |
||
real(kind=real_8) | :: | msgout |
Receive data into this pointer |
|||
integer, | intent(in) | :: | source |
Process to receive from |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
||
type(mp_request_type), | intent(out) | :: | send_request |
Request handle for the send Request handle for the receive |
||
type(mp_request_type), | intent(out) | :: | recv_request |
Request handle for the send Request handle for the receive |
||
integer, | intent(in), | optional | :: | tag |
tag to differentiate requests |
Non-blocking send and receive of a vector
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | CONTIGUOUS, DIMENSION(:) | :: | msgin |
Vector data to send |
||
integer, | intent(in) | :: | dest |
Which process to send to |
||
real(kind=real_8), | CONTIGUOUS, DIMENSION(:) | :: | msgout |
Receive data into this pointer |
||
integer, | intent(in) | :: | source |
Process to receive from |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
||
type(mp_request_type), | intent(out) | :: | send_request |
Request handle for the send Request handle for the receive |
||
type(mp_request_type), | intent(out) | :: | recv_request |
Request handle for the send Request handle for the receive |
||
integer, | intent(in), | optional | :: | tag |
tag to differentiate requests |
Non-blocking send of vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | CONTIGUOUS, DIMENSION(:) | :: | msgin | |||
integer, | intent(in) | :: | dest | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking send of matrix data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | DIMENSION(:, :), CONTIGUOUS | :: | msgin | |||
integer, | intent(in) | :: | dest | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking receive of vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | CONTIGUOUS, DIMENSION(:) | :: | msgout | |||
integer, | intent(in) | :: | source | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking receive of matrix data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | DIMENSION(:, :), CONTIGUOUS | :: | msgout | |||
integer, | intent(in) | :: | source | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Window initialization function for vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | CONTIGUOUS, DIMENSION(:) | :: | base | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_win_type), | intent(out) | :: | win |
Single-sided get function for vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | CONTIGUOUS, DIMENSION(:) | :: | base | |||
integer, | intent(in) | :: | source | |||
type(mp_win_type), | intent(in) | :: | win | |||
real(kind=real_8), | CONTIGUOUS, DIMENSION(:) | :: | win_data | |||
integer, | intent(in), | optional | :: | myproc | ||
integer, | intent(in), | optional | :: | disp | ||
type(mp_request_type), | intent(out) | :: | request | |||
type(mp_type_descriptor_type), | intent(in), | optional | :: | origin_datatype | ||
type(mp_type_descriptor_type), | intent(in), | optional | :: | target_datatype |
Allocates special parallel memory
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | DIMENSION(:), POINTER, CONTIGUOUS | :: | DATA |
pointer to integer array to allocate |
||
integer, | intent(in) | :: | len |
number of integers to allocate |
||
integer, | intent(out), | optional | :: | stat |
allocation status result |
Deallocates special parallel memory
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_8), | DIMENSION(:), POINTER, CONTIGUOUS | :: | DATA |
pointer to special memory to deallocate |
||
integer, | intent(out), | optional | :: | stat |
(parallel) Blocking individual file write using explicit offsets (serial) Unformatted stream write
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh |
file handle (file storage unit) |
||
integer(kind=file_offset), | intent(in) | :: | offset |
file offset (position) |
||
real(kind=real_8), | intent(in) | :: | msg(:) |
data to be written to the file |
||
integer, | intent(in), | optional | :: | msglen |
number of the elements of data |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
real(kind=real_8), | intent(in) | :: | msg |
(parallel) Blocking collective file write using explicit offsets (serial) Unformatted stream write
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
real(kind=real_8), | intent(in) | :: | msg(:) | |||
integer, | intent(in), | optional | :: | msglen |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
real(kind=real_8), | intent(in) | :: | msg |
(parallel) Blocking collective file read using explicit offsets (serial) Unformatted stream read
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
real(kind=real_8), | intent(out) | :: | msg(:) | |||
integer, | intent(in), | optional | :: | msglen |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
real(kind=real_8), | intent(out) | :: | msg |
All-to-all data exchange, rank-1 data of different sizes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | sb(:) |
Data to send |
|
integer, | intent(in), | CONTIGUOUS | :: | scount(:) |
Data counts for data sent to other processes Respective data offsets for data sent to process |
|
integer, | intent(in), | CONTIGUOUS | :: | sdispl(:) |
Data counts for data sent to other processes Respective data offsets for data sent to process |
|
real(kind=real_4), | intent(inout), | CONTIGUOUS | :: | rb(:) |
Buffer into which to receive data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:) |
Data counts for data received from other processes Respective data offsets for data received from other processes |
|
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:) |
Data counts for data received from other processes Respective data offsets for data received from other processes |
|
type(mp_comm_type), | intent(in) | :: | group |
Message passing environment identifier |
All-to-all data exchange, rank 1 arrays, equal sizes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | sb(:) |
array with data to send |
|
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | rb(:) |
array into which data is received |
|
integer, | intent(in) | :: | count |
number of elements to send/receive (product of the extents of the first two dimensions) |
||
type(mp_comm_type), | intent(in) | :: | group |
Message passing environment identifier |
All-to-all data exchange, rank-2 arrays, equal sizes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | sb(:,:) | ||
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | rb(:,:) | ||
integer, | intent(in) | :: | count | |||
type(mp_comm_type), | intent(in) | :: | group |
All-to-all data exchange, rank 4 data, equal sizes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | DIMENSION(:, :, :, :), CONTIGUOUS | :: | sb | ||
real(kind=real_4), | intent(out), | DIMENSION(:, :, :, :), CONTIGUOUS | :: | rb | ||
integer, | intent(in) | :: | count | |||
type(mp_comm_type), | intent(in) | :: | group |
Send one datum to another process
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4) | :: | msg |
Scalar to send |
|||
integer | :: | dest |
Destination process Transfer identifier |
|||
integer | :: | tag |
Destination process Transfer identifier |
|||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Send rank-1 data to another process
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | CONTIGUOUS | :: | msg(:) |
Rank-1 data to send |
||
integer | :: | dest | ||||
integer | :: | tag | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Receive one datum from another process
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(inout) | :: | msg |
Place received data into this variable |
||
integer, | intent(inout) | :: | source |
Process to receive from Transfer identifier |
||
integer, | intent(inout) | :: | tag |
Process to receive from Transfer identifier |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Receive rank-1 data from another process
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Place received data into this rank-1 array |
|
integer, | intent(inout) | :: | source | |||
integer, | intent(inout) | :: | tag | |||
type(mp_comm_type), | intent(in) | :: | gid |
Broadcasts a datum to all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4) | :: | msg |
Datum to broadcast |
|||
integer | :: | source |
Processes which broadcasts |
|||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Broadcasts a datum to all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4) | :: | msg |
Datum to broadcast |
|||
integer | :: | source |
Processes which broadcasts |
|||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Broadcasts rank-1 data to all processes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | CONTIGUOUS | :: | msg(:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Broadcasts rank-1 data to all processes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | CONTIGUOUS | :: | msg(:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(inout) | :: | request |
Broadcasts rank-2 data to all processes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | CONTIGUOUS | :: | msg(:,:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Broadcasts rank-3 data to all processes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | CONTIGUOUS | :: | msg(:,:,:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Sums a datum from all processes with result left on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(inout) | :: | msg |
Datum to sum (input) and result (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Element-wise sum of a rank-1 array on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Vector to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of a rank-1 array on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Vector to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(inout) | :: | request |
Element-wise sum of a rank-2 array on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:,:) |
Matrix to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of a rank-3 array on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:,:,:) |
Array to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of a rank-4 array on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:,:,:,:) |
Array to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of data from all processes with result left only on one.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Vector to sum (input) and (only on process root) result (output) |
|
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Element-wise sum of data from all processes with result left only on one.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:,:) |
Matrix to sum (input) and (only on process root) result (output) |
|
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Partial sum of data from all processes with result on each process.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msg(:,:) |
Matrix to sum (input) |
|
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | res(:,:) |
Matrix containing result (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Finds the maximum of a datum with the result left on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(inout) | :: | msg |
Find maximum among these data (input) and maximum (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Finds the element-wise maximum of a vector with the result left on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Find maximum among these data (input) and maximum (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Finds the minimum of a datum with the result left on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(inout) | :: | msg |
Find minimum among these data (input) and maximum (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Finds the element-wise minimum of vector with the result left on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Find minimum among these data (input) and maximum (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Multiplies a set of numbers scattered across a number of processes, then replicates the result.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(inout) | :: | msg |
a number to multiply (input) and result (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
message passing environment identifier |
Scatters data from one processes to all others
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msg_scatter(:) |
Data to scatter (for root process) |
|
real(kind=real_4), | intent(inout) | :: | msg | |||
integer, | intent(in) | :: | root |
Process which scatters data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Scatters data from one processes to all others
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msg_scatter(:,:) |
Data to scatter (for root process) |
|
real(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:) | ||
integer, | intent(in) | :: | root |
Process which scatters data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Scatters data from one processes to all others
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msg_scatter(:) |
Data to scatter (for root process) |
|
integer, | intent(in), | CONTIGUOUS | :: | sendcounts(:) | ||
integer, | intent(in), | CONTIGUOUS | :: | displs(:) | ||
real(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:) | ||
integer, | intent(in) | :: | recvcount |
Process which scatters data |
||
integer, | intent(in) | :: | root |
Process which scatters data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Gathers a datum from all processes to one
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in) | :: | msg |
Datum to send to root |
||
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msg_gather(:) |
Received data (on root) |
|
integer, | intent(in) | :: | root |
Process which gathers the data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers data from all processes to one
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msg(:) |
Datum to send to root |
|
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msg_gather(:) | ||
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers data from all processes to one
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msg(:,:) |
Datum to send to root |
|
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msg_gather(:,:) | ||
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers data from all processes to one.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | DIMENSION(:), CONTIGUOUS | :: | sendbuf |
Data to send to root |
|
real(kind=real_4), | intent(out), | DIMENSION(:), CONTIGUOUS | :: | recvbuf |
Received data (on root) |
|
integer, | intent(in), | DIMENSION(:), CONTIGUOUS | :: | recvcounts |
Sizes of data received from processes Offsets of data received from processes |
|
integer, | intent(in), | DIMENSION(:), CONTIGUOUS | :: | displs |
Sizes of data received from processes Offsets of data received from processes |
|
integer, | intent(in) | :: | root |
Process which gathers the data |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
Gathers a datum from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in) | :: | msgout |
Datum to send |
||
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers a datum from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in) | :: | msgout |
Datum to send |
||
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers a datum from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in) | :: | msgout |
Datum to send |
||
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Gathers vector data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers matrix data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers rank-3 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:,:,:) |
Rank-3 data to send |
|
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers rank-2 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers rank-1 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-2 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-2 data to send |
|
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-2 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-2 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-3 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:,:,:) |
Rank-3 data to send |
|
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers vector data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:) | ||
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Size of sent data for every process Offset of sent data for every process Message passing environment identifier |
Gathers vector data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:) | ||
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Size of sent data for every process Offset of sent data for every process Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Gathers vector data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:,:) | ||
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Size of sent data for every process Offset of sent data for every process Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Sends and receives vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgin(:) |
Data to send |
|
integer, | intent(in) | :: | dest |
Process to send data to |
||
real(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgout(:) |
Received data |
|
integer, | intent(in) | :: | source |
Process from which to receive |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
Non-blocking send and receive of a scalar
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4) | :: | msgin |
Scalar data to send |
|||
integer, | intent(in) | :: | dest |
Which process to send to |
||
real(kind=real_4) | :: | msgout |
Receive data into this pointer |
|||
integer, | intent(in) | :: | source |
Process to receive from |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
||
type(mp_request_type), | intent(out) | :: | send_request |
Request handle for the send Request handle for the receive |
||
type(mp_request_type), | intent(out) | :: | recv_request |
Request handle for the send Request handle for the receive |
||
integer, | intent(in), | optional | :: | tag |
tag to differentiate requests |
Non-blocking send and receive of a vector
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | CONTIGUOUS, DIMENSION(:) | :: | msgin |
Vector data to send |
||
integer, | intent(in) | :: | dest |
Which process to send to |
||
real(kind=real_4), | CONTIGUOUS, DIMENSION(:) | :: | msgout |
Receive data into this pointer |
||
integer, | intent(in) | :: | source |
Process to receive from |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
||
type(mp_request_type), | intent(out) | :: | send_request |
Request handle for the send Request handle for the receive |
||
type(mp_request_type), | intent(out) | :: | recv_request |
Request handle for the send Request handle for the receive |
||
integer, | intent(in), | optional | :: | tag |
tag to differentiate requests |
Non-blocking send of vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | CONTIGUOUS, DIMENSION(:) | :: | msgin | |||
integer, | intent(in) | :: | dest | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking send of matrix data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | DIMENSION(:, :), CONTIGUOUS | :: | msgin | |||
integer, | intent(in) | :: | dest | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking receive of vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | CONTIGUOUS, DIMENSION(:) | :: | msgout | |||
integer, | intent(in) | :: | source | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking receive of matrix data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | DIMENSION(:, :), CONTIGUOUS | :: | msgout | |||
integer, | intent(in) | :: | source | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Window initialization function for vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | CONTIGUOUS, DIMENSION(:) | :: | base | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_win_type), | intent(out) | :: | win |
Single-sided get function for vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | CONTIGUOUS, DIMENSION(:) | :: | base | |||
integer, | intent(in) | :: | source | |||
type(mp_win_type), | intent(in) | :: | win | |||
real(kind=real_4), | CONTIGUOUS, DIMENSION(:) | :: | win_data | |||
integer, | intent(in), | optional | :: | myproc | ||
integer, | intent(in), | optional | :: | disp | ||
type(mp_request_type), | intent(out) | :: | request | |||
type(mp_type_descriptor_type), | intent(in), | optional | :: | origin_datatype | ||
type(mp_type_descriptor_type), | intent(in), | optional | :: | target_datatype |
Allocates special parallel memory
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | DIMENSION(:), POINTER, CONTIGUOUS | :: | DATA |
pointer to integer array to allocate |
||
integer, | intent(in) | :: | len |
number of integers to allocate |
||
integer, | intent(out), | optional | :: | stat |
allocation status result |
Deallocates special parallel memory
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real_4), | DIMENSION(:), POINTER, CONTIGUOUS | :: | DATA |
pointer to special memory to deallocate |
||
integer, | intent(out), | optional | :: | stat |
(parallel) Blocking individual file write using explicit offsets (serial) Unformatted stream write
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh |
file handle (file storage unit) |
||
integer(kind=file_offset), | intent(in) | :: | offset |
file offset (position) |
||
real(kind=real_4), | intent(in) | :: | msg(:) |
data to be written to the file |
||
integer, | intent(in), | optional | :: | msglen |
number of the elements of data |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
real(kind=real_4), | intent(in) | :: | msg |
(parallel) Blocking collective file write using explicit offsets (serial) Unformatted stream write
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
real(kind=real_4), | intent(in) | :: | msg(:) | |||
integer, | intent(in), | optional | :: | msglen |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
real(kind=real_4), | intent(in) | :: | msg |
(parallel) Blocking collective file read using explicit offsets (serial) Unformatted stream read
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
real(kind=real_4), | intent(out) | :: | msg(:) | |||
integer, | intent(in), | optional | :: | msglen |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
real(kind=real_4), | intent(out) | :: | msg |
All-to-all data exchange, rank-1 data of different sizes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | sb(:) |
Data to send |
|
integer, | intent(in), | CONTIGUOUS | :: | scount(:) |
Data counts for data sent to other processes Respective data offsets for data sent to process |
|
integer, | intent(in), | CONTIGUOUS | :: | sdispl(:) |
Data counts for data sent to other processes Respective data offsets for data sent to process |
|
complex(kind=real_8), | intent(inout), | CONTIGUOUS | :: | rb(:) |
Buffer into which to receive data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:) |
Data counts for data received from other processes Respective data offsets for data received from other processes |
|
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:) |
Data counts for data received from other processes Respective data offsets for data received from other processes |
|
type(mp_comm_type), | intent(in) | :: | group |
Message passing environment identifier |
All-to-all data exchange, rank 1 arrays, equal sizes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | sb(:) |
array with data to send |
|
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | rb(:) |
array into which data is received |
|
integer, | intent(in) | :: | count |
number of elements to send/receive (product of the extents of the first two dimensions) |
||
type(mp_comm_type), | intent(in) | :: | group |
Message passing environment identifier |
All-to-all data exchange, rank-2 arrays, equal sizes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | sb(:,:) | ||
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | rb(:,:) | ||
integer, | intent(in) | :: | count | |||
type(mp_comm_type), | intent(in) | :: | group |
All-to-all data exchange, rank 4 data, equal sizes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | DIMENSION(:, :, :, :), CONTIGUOUS | :: | sb | ||
complex(kind=real_8), | intent(out), | DIMENSION(:, :, :, :), CONTIGUOUS | :: | rb | ||
integer, | intent(in) | :: | count | |||
type(mp_comm_type), | intent(in) | :: | group |
Send one datum to another process
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8) | :: | msg |
Scalar to send |
|||
integer | :: | dest |
Destination process Transfer identifier |
|||
integer | :: | tag |
Destination process Transfer identifier |
|||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Send rank-1 data to another process
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | CONTIGUOUS | :: | msg(:) |
Rank-1 data to send |
||
integer | :: | dest | ||||
integer | :: | tag | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Receive one datum from another process
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(inout) | :: | msg |
Place received data into this variable |
||
integer, | intent(inout) | :: | source |
Process to receive from Transfer identifier |
||
integer, | intent(inout) | :: | tag |
Process to receive from Transfer identifier |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Receive rank-1 data from another process
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Place received data into this rank-1 array |
|
integer, | intent(inout) | :: | source | |||
integer, | intent(inout) | :: | tag | |||
type(mp_comm_type), | intent(in) | :: | gid |
Broadcasts a datum to all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8) | :: | msg |
Datum to broadcast |
|||
integer | :: | source |
Processes which broadcasts |
|||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Broadcasts a datum to all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8) | :: | msg |
Datum to broadcast |
|||
integer | :: | source |
Processes which broadcasts |
|||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Broadcasts rank-1 data to all processes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | CONTIGUOUS | :: | msg(:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Broadcasts rank-1 data to all processes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | CONTIGUOUS | :: | msg(:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(inout) | :: | request |
Broadcasts rank-2 data to all processes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | CONTIGUOUS | :: | msg(:,:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Broadcasts rank-3 data to all processes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | CONTIGUOUS | :: | msg(:,:,:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Sums a datum from all processes with result left on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(inout) | :: | msg |
Datum to sum (input) and result (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Element-wise sum of a rank-1 array on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Vector to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of a rank-1 array on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Vector to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(inout) | :: | request |
Element-wise sum of a rank-2 array on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:,:) |
Matrix to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of a rank-3 array on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:,:,:) |
Array to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of a rank-4 array on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:,:,:,:) |
Array to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of data from all processes with result left only on one.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Vector to sum (input) and (only on process root) result (output) |
|
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Element-wise sum of data from all processes with result left only on one.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:,:) |
Matrix to sum (input) and (only on process root) result (output) |
|
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Partial sum of data from all processes with result on each process.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msg(:,:) |
Matrix to sum (input) |
|
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | res(:,:) |
Matrix containing result (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Finds the maximum of a datum with the result left on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(inout) | :: | msg |
Find maximum among these data (input) and maximum (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Finds the element-wise maximum of a vector with the result left on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Find maximum among these data (input) and maximum (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Finds the minimum of a datum with the result left on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(inout) | :: | msg |
Find minimum among these data (input) and maximum (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Finds the element-wise minimum of vector with the result left on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Find minimum among these data (input) and maximum (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Multiplies a set of numbers scattered across a number of processes, then replicates the result.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(inout) | :: | msg |
a number to multiply (input) and result (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
message passing environment identifier |
Scatters data from one processes to all others
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msg_scatter(:) |
Data to scatter (for root process) |
|
complex(kind=real_8), | intent(inout) | :: | msg | |||
integer, | intent(in) | :: | root |
Process which scatters data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Scatters data from one processes to all others
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msg_scatter(:,:) |
Data to scatter (for root process) |
|
complex(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:) | ||
integer, | intent(in) | :: | root |
Process which scatters data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Scatters data from one processes to all others
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msg_scatter(:) |
Data to scatter (for root process) |
|
integer, | intent(in), | CONTIGUOUS | :: | sendcounts(:) | ||
integer, | intent(in), | CONTIGUOUS | :: | displs(:) | ||
complex(kind=real_8), | intent(inout), | CONTIGUOUS | :: | msg(:) | ||
integer, | intent(in) | :: | recvcount |
Process which scatters data |
||
integer, | intent(in) | :: | root |
Process which scatters data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Gathers a datum from all processes to one
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in) | :: | msg |
Datum to send to root |
||
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msg_gather(:) |
Received data (on root) |
|
integer, | intent(in) | :: | root |
Process which gathers the data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers data from all processes to one
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msg(:) |
Datum to send to root |
|
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msg_gather(:) | ||
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers data from all processes to one
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msg(:,:) |
Datum to send to root |
|
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msg_gather(:,:) | ||
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers data from all processes to one.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | DIMENSION(:), CONTIGUOUS | :: | sendbuf |
Data to send to root |
|
complex(kind=real_8), | intent(out), | DIMENSION(:), CONTIGUOUS | :: | recvbuf |
Received data (on root) |
|
integer, | intent(in), | DIMENSION(:), CONTIGUOUS | :: | recvcounts |
Sizes of data received from processes Offsets of data received from processes |
|
integer, | intent(in), | DIMENSION(:), CONTIGUOUS | :: | displs |
Sizes of data received from processes Offsets of data received from processes |
|
integer, | intent(in) | :: | root |
Process which gathers the data |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
Gathers a datum from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in) | :: | msgout |
Datum to send |
||
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers a datum from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in) | :: | msgout |
Datum to send |
||
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers a datum from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in) | :: | msgout |
Datum to send |
||
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Gathers vector data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers matrix data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers rank-3 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:,:,:) |
Rank-3 data to send |
|
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers rank-2 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers rank-1 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-2 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-2 data to send |
|
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-2 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-2 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-3 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:,:,:) |
Rank-3 data to send |
|
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers vector data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:) | ||
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Size of sent data for every process Offset of sent data for every process Message passing environment identifier |
Gathers vector data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:) | ||
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Size of sent data for every process Offset of sent data for every process Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Gathers vector data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:,:) | ||
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Size of sent data for every process Offset of sent data for every process Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Sends and receives vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | intent(in), | CONTIGUOUS | :: | msgin(:) |
Data to send |
|
integer, | intent(in) | :: | dest |
Process to send data to |
||
complex(kind=real_8), | intent(out), | CONTIGUOUS | :: | msgout(:) |
Received data |
|
integer, | intent(in) | :: | source |
Process from which to receive |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
Non-blocking send and receive of a scalar
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8) | :: | msgin |
Scalar data to send |
|||
integer, | intent(in) | :: | dest |
Which process to send to |
||
complex(kind=real_8) | :: | msgout |
Receive data into this pointer |
|||
integer, | intent(in) | :: | source |
Process to receive from |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
||
type(mp_request_type), | intent(out) | :: | send_request |
Request handle for the send Request handle for the receive |
||
type(mp_request_type), | intent(out) | :: | recv_request |
Request handle for the send Request handle for the receive |
||
integer, | intent(in), | optional | :: | tag |
tag to differentiate requests |
Non-blocking send and receive of a vector
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | CONTIGUOUS, DIMENSION(:) | :: | msgin |
Vector data to send |
||
integer, | intent(in) | :: | dest |
Which process to send to |
||
complex(kind=real_8), | CONTIGUOUS, DIMENSION(:) | :: | msgout |
Receive data into this pointer |
||
integer, | intent(in) | :: | source |
Process to receive from |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
||
type(mp_request_type), | intent(out) | :: | send_request |
Request handle for the send Request handle for the receive |
||
type(mp_request_type), | intent(out) | :: | recv_request |
Request handle for the send Request handle for the receive |
||
integer, | intent(in), | optional | :: | tag |
tag to differentiate requests |
Non-blocking send of vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | CONTIGUOUS, DIMENSION(:) | :: | msgin | |||
integer, | intent(in) | :: | dest | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking send of matrix data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | DIMENSION(:, :), CONTIGUOUS | :: | msgin | |||
integer, | intent(in) | :: | dest | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking receive of vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | CONTIGUOUS, DIMENSION(:) | :: | msgout | |||
integer, | intent(in) | :: | source | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking receive of matrix data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | DIMENSION(:, :), CONTIGUOUS | :: | msgout | |||
integer, | intent(in) | :: | source | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Window initialization function for vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | CONTIGUOUS, DIMENSION(:) | :: | base | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_win_type), | intent(out) | :: | win |
Single-sided get function for vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | CONTIGUOUS, DIMENSION(:) | :: | base | |||
integer, | intent(in) | :: | source | |||
type(mp_win_type), | intent(in) | :: | win | |||
complex(kind=real_8), | CONTIGUOUS, DIMENSION(:) | :: | win_data | |||
integer, | intent(in), | optional | :: | myproc | ||
integer, | intent(in), | optional | :: | disp | ||
type(mp_request_type), | intent(out) | :: | request | |||
type(mp_type_descriptor_type), | intent(in), | optional | :: | origin_datatype | ||
type(mp_type_descriptor_type), | intent(in), | optional | :: | target_datatype |
Allocates special parallel memory
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | DIMENSION(:), POINTER, CONTIGUOUS | :: | DATA |
pointer to integer array to allocate |
||
integer, | intent(in) | :: | len |
number of integers to allocate |
||
integer, | intent(out), | optional | :: | stat |
allocation status result |
Deallocates special parallel memory
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_8), | DIMENSION(:), POINTER, CONTIGUOUS | :: | DATA |
pointer to special memory to deallocate |
||
integer, | intent(out), | optional | :: | stat |
(parallel) Blocking individual file write using explicit offsets (serial) Unformatted stream write
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh |
file handle (file storage unit) |
||
integer(kind=file_offset), | intent(in) | :: | offset |
file offset (position) |
||
complex(kind=real_8), | intent(in) | :: | msg(:) |
data to be written to the file |
||
integer, | intent(in), | optional | :: | msglen |
number of the elements of data |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
complex(kind=real_8), | intent(in) | :: | msg |
(parallel) Blocking collective file write using explicit offsets (serial) Unformatted stream write
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
complex(kind=real_8), | intent(in) | :: | msg(:) | |||
integer, | intent(in), | optional | :: | msglen |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
complex(kind=real_8), | intent(in) | :: | msg |
(parallel) Blocking collective file read using explicit offsets (serial) Unformatted stream read
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
complex(kind=real_8), | intent(out) | :: | msg(:) | |||
integer, | intent(in), | optional | :: | msglen |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
complex(kind=real_8), | intent(out) | :: | msg |
All-to-all data exchange, rank-1 data of different sizes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | sb(:) |
Data to send |
|
integer, | intent(in), | CONTIGUOUS | :: | scount(:) |
Data counts for data sent to other processes Respective data offsets for data sent to process |
|
integer, | intent(in), | CONTIGUOUS | :: | sdispl(:) |
Data counts for data sent to other processes Respective data offsets for data sent to process |
|
complex(kind=real_4), | intent(inout), | CONTIGUOUS | :: | rb(:) |
Buffer into which to receive data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:) |
Data counts for data received from other processes Respective data offsets for data received from other processes |
|
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:) |
Data counts for data received from other processes Respective data offsets for data received from other processes |
|
type(mp_comm_type), | intent(in) | :: | group |
Message passing environment identifier |
All-to-all data exchange, rank 1 arrays, equal sizes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | sb(:) |
array with data to send |
|
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | rb(:) |
array into which data is received |
|
integer, | intent(in) | :: | count |
number of elements to send/receive (product of the extents of the first two dimensions) |
||
type(mp_comm_type), | intent(in) | :: | group |
Message passing environment identifier |
All-to-all data exchange, rank-2 arrays, equal sizes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | sb(:,:) | ||
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | rb(:,:) | ||
integer, | intent(in) | :: | count | |||
type(mp_comm_type), | intent(in) | :: | group |
All-to-all data exchange, rank 4 data, equal sizes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | DIMENSION(:, :, :, :), CONTIGUOUS | :: | sb | ||
complex(kind=real_4), | intent(out), | DIMENSION(:, :, :, :), CONTIGUOUS | :: | rb | ||
integer, | intent(in) | :: | count | |||
type(mp_comm_type), | intent(in) | :: | group |
Send one datum to another process
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4) | :: | msg |
Scalar to send |
|||
integer | :: | dest |
Destination process Transfer identifier |
|||
integer | :: | tag |
Destination process Transfer identifier |
|||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Send rank-1 data to another process
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | CONTIGUOUS | :: | msg(:) |
Rank-1 data to send |
||
integer | :: | dest | ||||
integer | :: | tag | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Receive one datum from another process
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(inout) | :: | msg |
Place received data into this variable |
||
integer, | intent(inout) | :: | source |
Process to receive from Transfer identifier |
||
integer, | intent(inout) | :: | tag |
Process to receive from Transfer identifier |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Receive rank-1 data from another process
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Place received data into this rank-1 array |
|
integer, | intent(inout) | :: | source | |||
integer, | intent(inout) | :: | tag | |||
type(mp_comm_type), | intent(in) | :: | gid |
Broadcasts a datum to all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4) | :: | msg |
Datum to broadcast |
|||
integer | :: | source |
Processes which broadcasts |
|||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Broadcasts a datum to all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4) | :: | msg |
Datum to broadcast |
|||
integer | :: | source |
Processes which broadcasts |
|||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Broadcasts rank-1 data to all processes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | CONTIGUOUS | :: | msg(:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Broadcasts rank-1 data to all processes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | CONTIGUOUS | :: | msg(:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(inout) | :: | request |
Broadcasts rank-2 data to all processes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | CONTIGUOUS | :: | msg(:,:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Broadcasts rank-3 data to all processes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | CONTIGUOUS | :: | msg(:,:,:) |
Data to broadcast |
||
integer | :: | source | ||||
type(mp_comm_type), | intent(in) | :: | gid |
Sums a datum from all processes with result left on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(inout) | :: | msg |
Datum to sum (input) and result (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Element-wise sum of a rank-1 array on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Vector to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of a rank-1 array on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Vector to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(inout) | :: | request |
Element-wise sum of a rank-2 array on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:,:) |
Matrix to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of a rank-3 array on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:,:,:) |
Array to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of a rank-4 array on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:,:,:,:) |
Array to sum and result |
|
type(mp_comm_type), | intent(in) | :: | gid |
Element-wise sum of data from all processes with result left only on one.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Vector to sum (input) and (only on process root) result (output) |
|
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Element-wise sum of data from all processes with result left only on one.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:,:) |
Matrix to sum (input) and (only on process root) result (output) |
|
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Partial sum of data from all processes with result on each process.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msg(:,:) |
Matrix to sum (input) |
|
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | res(:,:) |
Matrix containing result (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Finds the maximum of a datum with the result left on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(inout) | :: | msg |
Find maximum among these data (input) and maximum (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Finds the element-wise maximum of a vector with the result left on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Find maximum among these data (input) and maximum (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Finds the minimum of a datum with the result left on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(inout) | :: | msg |
Find minimum among these data (input) and maximum (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Finds the element-wise minimum of vector with the result left on all processes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:) |
Find minimum among these data (input) and maximum (output) |
|
type(mp_comm_type), | intent(in) | :: | gid |
Multiplies a set of numbers scattered across a number of processes, then replicates the result.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(inout) | :: | msg |
a number to multiply (input) and result (output) |
||
type(mp_comm_type), | intent(in) | :: | gid |
message passing environment identifier |
Scatters data from one processes to all others
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msg_scatter(:) |
Data to scatter (for root process) |
|
complex(kind=real_4), | intent(inout) | :: | msg | |||
integer, | intent(in) | :: | root |
Process which scatters data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Scatters data from one processes to all others
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msg_scatter(:,:) |
Data to scatter (for root process) |
|
complex(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:) | ||
integer, | intent(in) | :: | root |
Process which scatters data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Scatters data from one processes to all others
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msg_scatter(:) |
Data to scatter (for root process) |
|
integer, | intent(in), | CONTIGUOUS | :: | sendcounts(:) | ||
integer, | intent(in), | CONTIGUOUS | :: | displs(:) | ||
complex(kind=real_4), | intent(inout), | CONTIGUOUS | :: | msg(:) | ||
integer, | intent(in) | :: | recvcount |
Process which scatters data |
||
integer, | intent(in) | :: | root |
Process which scatters data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Gathers a datum from all processes to one
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in) | :: | msg |
Datum to send to root |
||
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msg_gather(:) |
Received data (on root) |
|
integer, | intent(in) | :: | root |
Process which gathers the data |
||
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers data from all processes to one
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msg(:) |
Datum to send to root |
|
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msg_gather(:) | ||
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers data from all processes to one
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msg(:,:) |
Datum to send to root |
|
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msg_gather(:,:) | ||
integer, | intent(in) | :: | root | |||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers data from all processes to one.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | DIMENSION(:), CONTIGUOUS | :: | sendbuf |
Data to send to root |
|
complex(kind=real_4), | intent(out), | DIMENSION(:), CONTIGUOUS | :: | recvbuf |
Received data (on root) |
|
integer, | intent(in), | DIMENSION(:), CONTIGUOUS | :: | recvcounts |
Sizes of data received from processes Offsets of data received from processes |
|
integer, | intent(in), | DIMENSION(:), CONTIGUOUS | :: | displs |
Sizes of data received from processes Offsets of data received from processes |
|
integer, | intent(in) | :: | root |
Process which gathers the data |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
Gathers a datum from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in) | :: | msgout |
Datum to send |
||
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers a datum from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in) | :: | msgout |
Datum to send |
||
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers a datum from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in) | :: | msgout |
Datum to send |
||
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Gathers vector data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:) |
Received data |
|
type(mp_comm_type), | intent(in) | :: | gid |
Message passing environment identifier |
Gathers matrix data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers rank-3 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:,:,:) |
Rank-3 data to send |
|
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers rank-2 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Gathers rank-1 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-2 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-2 data to send |
|
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-2 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-2 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:,:) |
Rank-2 data to send |
|
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers rank-3 data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:,:,:) |
Rank-3 data to send |
|
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:,:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid | |||
type(mp_request_type), | intent(out) | :: | request |
Gathers vector data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:) | ||
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Size of sent data for every process Offset of sent data for every process Message passing environment identifier |
Gathers vector data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:) | ||
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Size of sent data for every process Offset of sent data for every process Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Gathers vector data from all processes and all processes receive the same data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgout(:) |
Rank-1 data to send |
|
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgin(:) |
Received data |
|
integer, | intent(in), | CONTIGUOUS | :: | rcount(:,:) | ||
integer, | intent(in), | CONTIGUOUS | :: | rdispl(:,:) | ||
type(mp_comm_type), | intent(in) | :: | gid |
Size of sent data for every process Offset of sent data for every process Message passing environment identifier |
||
type(mp_request_type), | intent(inout) | :: | request |
Sends and receives vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | intent(in), | CONTIGUOUS | :: | msgin(:) |
Data to send |
|
integer, | intent(in) | :: | dest |
Process to send data to |
||
complex(kind=real_4), | intent(out), | CONTIGUOUS | :: | msgout(:) |
Received data |
|
integer, | intent(in) | :: | source |
Process from which to receive |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
Non-blocking send and receive of a scalar
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4) | :: | msgin |
Scalar data to send |
|||
integer, | intent(in) | :: | dest |
Which process to send to |
||
complex(kind=real_4) | :: | msgout |
Receive data into this pointer |
|||
integer, | intent(in) | :: | source |
Process to receive from |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
||
type(mp_request_type), | intent(out) | :: | send_request |
Request handle for the send Request handle for the receive |
||
type(mp_request_type), | intent(out) | :: | recv_request |
Request handle for the send Request handle for the receive |
||
integer, | intent(in), | optional | :: | tag |
tag to differentiate requests |
Non-blocking send and receive of a vector
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | CONTIGUOUS, DIMENSION(:) | :: | msgin |
Vector data to send |
||
integer, | intent(in) | :: | dest |
Which process to send to |
||
complex(kind=real_4), | CONTIGUOUS, DIMENSION(:) | :: | msgout |
Receive data into this pointer |
||
integer, | intent(in) | :: | source |
Process to receive from |
||
type(mp_comm_type), | intent(in) | :: | comm |
Message passing environment identifier |
||
type(mp_request_type), | intent(out) | :: | send_request |
Request handle for the send Request handle for the receive |
||
type(mp_request_type), | intent(out) | :: | recv_request |
Request handle for the send Request handle for the receive |
||
integer, | intent(in), | optional | :: | tag |
tag to differentiate requests |
Non-blocking send of vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | CONTIGUOUS, DIMENSION(:) | :: | msgin | |||
integer, | intent(in) | :: | dest | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking send of matrix data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | DIMENSION(:, :), CONTIGUOUS | :: | msgin | |||
integer, | intent(in) | :: | dest | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking receive of vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | CONTIGUOUS, DIMENSION(:) | :: | msgout | |||
integer, | intent(in) | :: | source | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Non-blocking receive of matrix data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | DIMENSION(:, :), CONTIGUOUS | :: | msgout | |||
integer, | intent(in) | :: | source | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_request_type), | intent(out) | :: | request | |||
integer, | intent(in), | optional | :: | tag |
Window initialization function for vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | CONTIGUOUS, DIMENSION(:) | :: | base | |||
type(mp_comm_type), | intent(in) | :: | comm | |||
type(mp_win_type), | intent(out) | :: | win |
Single-sided get function for vector data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | CONTIGUOUS, DIMENSION(:) | :: | base | |||
integer, | intent(in) | :: | source | |||
type(mp_win_type), | intent(in) | :: | win | |||
complex(kind=real_4), | CONTIGUOUS, DIMENSION(:) | :: | win_data | |||
integer, | intent(in), | optional | :: | myproc | ||
integer, | intent(in), | optional | :: | disp | ||
type(mp_request_type), | intent(out) | :: | request | |||
type(mp_type_descriptor_type), | intent(in), | optional | :: | origin_datatype | ||
type(mp_type_descriptor_type), | intent(in), | optional | :: | target_datatype |
Allocates special parallel memory
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | DIMENSION(:), POINTER, CONTIGUOUS | :: | DATA |
pointer to integer array to allocate |
||
integer, | intent(in) | :: | len |
number of integers to allocate |
||
integer, | intent(out), | optional | :: | stat |
allocation status result |
Deallocates special parallel memory
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real_4), | DIMENSION(:), POINTER, CONTIGUOUS | :: | DATA |
pointer to special memory to deallocate |
||
integer, | intent(out), | optional | :: | stat |
(parallel) Blocking individual file write using explicit offsets (serial) Unformatted stream write
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh |
file handle (file storage unit) |
||
integer(kind=file_offset), | intent(in) | :: | offset |
file offset (position) |
||
complex(kind=real_4), | intent(in) | :: | msg(:) |
data to be written to the file |
||
integer, | intent(in), | optional | :: | msglen |
number of the elements of data |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
complex(kind=real_4), | intent(in) | :: | msg |
(parallel) Blocking collective file write using explicit offsets (serial) Unformatted stream write
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
complex(kind=real_4), | intent(in) | :: | msg(:) | |||
integer, | intent(in), | optional | :: | msglen |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
complex(kind=real_4), | intent(in) | :: | msg |
(parallel) Blocking collective file read using explicit offsets (serial) Unformatted stream read
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
complex(kind=real_4), | intent(out) | :: | msg(:) | |||
integer, | intent(in), | optional | :: | msglen |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(mp_file_type), | intent(in) | :: | fh | |||
integer(kind=file_offset), | intent(in) | :: | offset | |||
complex(kind=real_4), | intent(out) | :: | msg |