allgatherv Interface

public interface allgatherv

Contents


Module Procedures

private subroutine allgatherv_complex_array_1to1(arr, count, out, recvcnts, displs)

A subroutine to do a allgatherv operation, sending recvcnts(iproc) data from the iproc'th processor to all others starting at arr(start).

Arguments

Type IntentOptional Attributes Name
complex, intent(in), dimension(:) :: arr

The data to gather

integer, intent(in) :: count

How much data to gather, <=SIZE(arr)

complex, intent(out), dimension(:) :: out

The gathered data

integer, intent(in), dimension(:) :: recvcnts

Array detailing how much data to expect from each proc

integer, intent(in), dimension(:) :: displs

Array detailing offset in array where gathered data is to be stored

private subroutine allgatherv_complex_array_1to3(arr, count, out, recvcnts, displs)

A subroutine to do a allgatherv operation, sending recvcnts(iproc) data from the iproc'th processor to all others starting at arr(start).

Arguments

Type IntentOptional Attributes Name
complex, intent(in), dimension(:) :: arr

The data to gather

integer, intent(in) :: count

How much data to gather, <=SIZE(arr)

complex, intent(out), dimension(:,:,:) :: out

The gathered data

integer, intent(in), dimension(:) :: recvcnts

Array detailing how much data to expect from each proc

integer, intent(in), dimension(:) :: displs

Array detailing offset in array where gathered data is to be stored

private subroutine allgatherv_complex_array_1to1_sub(arr, count, out, recvcnts, displs, sub_comm)

A subroutine to do a allgatherv operation, sending recvcnts(iproc) data from the iproc'th processor to all others starting at arr(start).

Arguments

Type IntentOptional Attributes Name
complex, intent(in), dimension(:) :: arr

The data to gather

integer, intent(in) :: count

How much data to gather, <=SIZE(arr)

complex, intent(out), dimension(:) :: out

The gathered data

integer, intent(in), dimension(:) :: recvcnts

Array detailing how much data to expect from each proc

integer, intent(in), dimension(:) :: displs

Array detailing offset in array where gathered data is to be stored

integer, intent(in) :: sub_comm

Sub-communicator handle

private subroutine allgatherv_complex_array_1to3_sub(arr, count, out, recvcnts, displs, sub_comm)

A subroutine to do a allgatherv operation, sending recvcnts(iproc) data from the iproc'th processor to all others starting at arr(start).

Arguments

Type IntentOptional Attributes Name
complex, intent(in), dimension(:) :: arr

The data to gather

integer, intent(in) :: count

How much data to gather, <=SIZE(arr)

complex, intent(out), dimension(:,:,:) :: out

The gathered data

integer, intent(in), dimension(:) :: recvcnts

Array detailing how much data to expect from each proc

integer, intent(in), dimension(:) :: displs

Array detailing offset in array where gathered data is to be stored

integer, intent(in) :: sub_comm

Sub-communicator handle