[This is preliminary documentation and is subject to change.]
A collective operation that first performs a reduction on the given values (see Reduce<(Of <(T>)>)(array<T>(), ReductionOperation<(Of <(T>)>), Int32, array<T>()%) and then scatters the results by sending some elements to each process. The reduction will be performed on the entire array of values (like the array form of Reduce<(Of <(T>)>)(array<T>(), ReductionOperation<(Of <(T>)>), Int32, array<T>()%)). Then, the array will be scattered, with process i receiving counts[i] elements. The process with rank 0 will receive the first counts elements, the process with rank 1 will receive the next counts elements, and so on.Namespace: MPI
Assembly: MPI (in MPI.dll)
Version: 0.8.0.0 (0.8.0.0)
public void ReduceScatter<T>( T inValues, ReductionOperation<T> op, int counts, ref T outValues )
|Visual Basic (Declaration)|
Public Sub ReduceScatter(Of T) ( _ inValues As T(), _ op As ReductionOperation(Of T), _ counts As Integer(), _ ByRef outValues As T() _ )
public: generic<typename T> void ReduceScatter( array<T>^ inValues, ReductionOperation<T>^ op, array<int>^ counts, array<T>^% outValues )
- Type: array<
An array of values that will be reduced. The length of this array must equal to sum of the counts in counts.
- Type: MPI..::.ReductionOperation<(Of <(>)>)
The operation used to combine the elements in inValues. This operation must be associative.
- Type: array<
An array whose ith element states the number of elements from the reduced result that will be returned to the process with rank i. The
An array of length counts[Rank] containing the reduced results destined for the calling process.
- Any serializable type.