The Operation class provides reduction operations for use with the reduction collectives.

Namespace:  MPI
Assembly:  MPI (in MPI.dll)
Version: (


public class Operation<T> : IDisposable
Visual Basic (Declaration)
Public Class Operation(Of T) _
	Implements IDisposable
Visual C++
generic<typename T>
public ref class Operation : IDisposable

Type Parameters

The type of data used in these operations.


The Operation class is used with the reduction collective communication operations, such as Allreduce<(Of <(T>)>)(T, ReductionOperation<(Of <(T>)>)). For example, the Add property is a delegate that adds two values of type T, while Min returns the minimum of the two values. The reduction operations provided by this class should be preferred to hand-written reduction operations (particularly for built-in types) because it enables additional optimizations in the MPI library.

The Operation class also has a second role for users that require access to the low-level MPI interface. Creating an instance of the Operation class will find or create an appropriate MPI_Op for that reduction operation. This MPI_Op, accessible through the Op property, can be used with low-level MPI reduction operations directly.

Inheritance Hierarchy

  MPI..::.Operation<(Of <(T>)>)

See Also