Boost C++ Libraries of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

This is the documentation for an old version of Boost. Click here to view this page for the latest version.

Struct template is_commutative

boost::mpi::is_commutative — Determine if a function object type is commutative.


// In header: <boost/mpi/operations.hpp>

template<typename Op, typename T> 
struct is_commutative : public false_ {


This trait determines if an operation Op is commutative when applied to values of type T. Parallel operations such as reduce and prefix_sum can be implemented more efficiently with commutative operations. To mark an operation as commutative, users should specialize is_commutative and derive from the class mpl::true_.