MPI related stuff, including communication
Find MAX/MIN/SUM scalar value across MPI ranks and bradcast result back to all MPI ranks.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(inout) | :: | scalar | |||
| character(len=3), | intent(in) | :: | parOP |
Find MAX/MIN/SUM scalar value across MPI ranks and bradcast result back to all MPI ranks.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer, | intent(inout) | :: | scalar_int | |||
| character(len=3), | intent(in) | :: | parOP |
Find MAX/MIN/SUM of 1D array (assumed-shape) across all MPI ranks and bradcast result back to all MPI ranks.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(inout) | :: | arr(:) | |||
| character(len=3), | intent(in) | :: | parOP |
Find MAX/MIN/SUM of 2D array (assumed-shape) across all MPI ranks and bradcast result back to all MPI ranks.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(inout) | :: | arr(:,:) | |||
| character(len=3), | intent(in) | :: | parOP |
Find on MPI rank 'toRank' MAX/MIN/SUM scalar value across MPI ranks.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(inout) | :: | scalar | |||
| character(len=3), | intent(in) | :: | parOP | |||
| integer, | intent(in) | :: | toRank |
Find on MPI rank 'toRank' MAX/MIN/SUM scalar value across MPI ranks.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer, | intent(inout) | :: | scalar_int | |||
| character(len=3), | intent(in) | :: | parOP | |||
| integer, | intent(in) | :: | toRank |
Find on MPI rank 'toRank' MAX/MIN/SUM of 1D array (assumed-shape) across all MPI ranks.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(inout) | :: | arr(:) | |||
| character(len=3), | intent(in) | :: | parOP | |||
| integer, | intent(in) | :: | toRank |
Find on MPI rank 'toRank' MAX/MIN/SUM of 2D array (assumed-shape) across all MPI ranks.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(inout) | :: | arr(:,:) | |||
| character(len=3), | intent(in) | :: | parOP | |||
| integer, | intent(in) | :: | toRank |
Find on MPI rank 'toRank' MAX/MIN/SUM of 1D array (assumed-shape) across all MPI ranks (nonblocking).
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(inout) | :: | arr(:) | |||
| character(len=3), | intent(in) | :: | parOP | |||
| integer, | intent(in) | :: | toRank | |||
| real | :: | req_out |
Find on MPI rank 'toRank' MAX/MIN/SUM of 2D array (assumed-shape) across all MPI ranks.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(inout) | :: | arr(:,:) | |||
| character(len=3), | intent(in) | :: | parOP | |||
| integer, | intent(in) | :: | toRank | |||
| real | :: | req_out |
Broadcast a scalar from MPI rank 'fromRank' to all MPI ranks.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(inout) | :: | scalar | |||
| integer | :: | fromRank |
Broadcast a scalar from MPI rank 'fromRank' to all MPI ranks.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer, | intent(inout) | :: | scalar_int | |||
| integer | :: | fromRank |
Broadcast a scalar from MPI rank 'fromRank' to all MPI ranks.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| character(len=*), | intent(inout) | :: | scalar_str | |||
| integer | :: | fromRank |
Broadcast a 1D array (assumed-shape) from MPI rank 'fromRank' to all MPI ranks.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(inout) | :: | arr(:) | |||
| integer | :: | fromRank |
Broadcast a 1D array (assumed-shape) from MPI rank 'fromRank' to all MPI ranks.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer, | intent(inout) | :: | arr_int(:) | |||
| integer | :: | fromRank |
Broadcast a 1D array (assumed-shape) from MPI rank 'fromRank' to all MPI ranks.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| character(len=*), | intent(inout) | :: | arr_str(:) | |||
| integer | :: | fromRank |
Broadcast a 2D array (assumed-shape) from MPI rank 'fromRank' to all MPI ranks.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(inout) | :: | arr(:,:) | |||
| integer | :: | fromRank |
Broadcast a 1D array (assumed-shape) from MPI rank 'fromRank' to all MPI ranks (nonblocking)
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(inout) | :: | arr(:) | |||
| integer | :: | fromRank | ||||
| real | :: | req_out |
Broadcast a 2D array (assumed-shape) from MPI rank 'fromRank' to all MPI ranks (nonblocking)
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(inout) | :: | arr(:,:) | |||
| integer | :: | fromRank | ||||
| real | :: | req_out |
Wait for completion of all nonblocking communications for req(:)
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real | :: | req_in |
Initialisation of MPI.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer, | intent(in), | optional | :: | comm_in |
Deinitialisation of MPI.
Barrier for specified communicator, or world-communicator otherwise.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real | :: | Comm | ||||
| character(len=*), | intent(in), | optional | :: | beforeScreenOut | ||
| character(len=*), | intent(in), | optional | :: | afterScreenOut |
Find MAX/MIN/SUM scalar value across MPI ranks and bradcast result back to all MPI ranks.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(inout) | :: | scalar | |||
| character(len=3), | intent(in) | :: | parOP |
Find MAX/MIN/SUM scalar value across MPI ranks and bradcast result back to all MPI ranks.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer, | intent(inout) | :: | scalar_int | |||
| character(len=3), | intent(in) | :: | parOP |
Find MAX/MIN/SUM of 1D array (assumed-shape) across all MPI ranks and bradcast result back to all MPI ranks.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(inout) | :: | arr(:) | |||
| character(len=3), | intent(in) | :: | parOP |
Find MAX/MIN/SUM of 2D array (assumed-shape) across all MPI ranks and bradcast result back to all MPI ranks.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(inout) | :: | arr(:,:) | |||
| character(len=3), | intent(in) | :: | parOP |
Find on MPI rank 'toRank' MAX/MIN/SUM scalar value across MPI ranks.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer, | intent(inout) | :: | scalar_int | |||
| character(len=3), | intent(in) | :: | parOP | |||
| integer, | intent(in) | :: | toRank |
Find on MPI rank 'toRank' MAX/MIN/SUM scalar value across MPI ranks.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(inout) | :: | scalar | |||
| character(len=3), | intent(in) | :: | parOP | |||
| integer, | intent(in) | :: | toRank |
Find on MPI rank 'toRank' MAX/MIN/SUM of 1D array (assumed-shape) across all MPI ranks.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(inout) | :: | arr(:) | |||
| character(len=3), | intent(in) | :: | parOP | |||
| integer, | intent(in) | :: | toRank |
Find on MPI rank 'toRank' MAX/MIN/SUM of 2D array (assumed-shape) across all MPI ranks.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(inout) | :: | arr(:,:) | |||
| character(len=3), | intent(in) | :: | parOP | |||
| integer, | intent(in) | :: | toRank |
Find on MPI rank 'toRank' MAX/MIN/SUM of 1D array (assumed-shape) across all MPI ranks (nonblocking).
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(inout) | :: | arr(:) | |||
| character(len=3), | intent(in) | :: | parOP | |||
| integer, | intent(in) | :: | toRank | |||
| real | :: | req_out |
Find on MPI rank 'toRank' MAX/MIN/SUM of 2D array (assumed-shape) across all MPI ranks.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(inout) | :: | arr(:,:) | |||
| character(len=3), | intent(in) | :: | parOP | |||
| integer, | intent(in) | :: | toRank | |||
| real | :: | req_out |
Broadcast a scalar from MPI rank 'fromRank' to all MPI ranks.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer, | intent(inout) | :: | scalar_int | |||
| integer | :: | fromRank |
Broadcast a scalar from MPI rank 'fromRank' to all MPI ranks.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| character(len=*), | intent(inout) | :: | scalar_str | |||
| integer | :: | fromRank |
Broadcast a scalar from MPI rank 'fromRank' to all MPI ranks.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(inout) | :: | scalar | |||
| integer | :: | fromRank |
Broadcast a 1D array (assumed-shape) from MPI rank 'fromRank' to all MPI ranks.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(inout) | :: | arr(:) | |||
| integer | :: | fromRank |
Broadcast a 1D array (assumed-shape) from MPI rank 'fromRank' to all MPI ranks.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer, | intent(inout) | :: | arr_int(:) | |||
| integer | :: | fromRank |
Broadcast a 1D array (assumed-shape) from MPI rank 'fromRank' to all MPI ranks.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| character(len=*), | intent(inout) | :: | arr_str(:) | |||
| integer | :: | fromRank |
Broadcast a 2D array (assumed-shape) from MPI rank 'fromRank' to all MPI ranks.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(inout) | :: | arr(:,:) | |||
| integer | :: | fromRank |
Broadcast a 1D array (assumed-shape) from MPI rank 'fromRank' to all MPI ranks (nonblocking)
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(inout) | :: | arr(:) | |||
| integer | :: | fromRank | ||||
| real | :: | req_out |
Broadcast a 2D array (assumed-shape) from MPI rank 'fromRank' to all MPI ranks (nonblocking)
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(inout) | :: | arr(:,:) | |||
| integer | :: | fromRank | ||||
| real | :: | req_out |
Wait for completion of a single nonblocking communication
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real | :: | req_in |
Wait for completion of all nonblocking communications for req(:)
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real | :: | req_in |
Sum an array across MPI ranks: explicit-shape with implicit reshaping Multi-D->1D.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(inout), | DIMENSION(sz) | :: | arr | ||
| integer, | intent(in) | :: | sz |