DPC++ Runtime
Runtime libraries for oneAPI DPC++
cl::sycl::ext::oneapi::detail::reducer< T, BinaryOperation, Dims, Extent, Algorithm, View, Subst > Class Template Reference

Class that is used to represent objects that are passed to user's lambda functions and representing users' reduction variable. More...

#include <sycl/ext/oneapi/reduction.hpp>

Detailed Description

template<typename T, class BinaryOperation, int Dims, size_t Extent, class Algorithm, bool View = false, typename Subst = void>
class cl::sycl::ext::oneapi::detail::reducer< T, BinaryOperation, Dims, Extent, Algorithm, View, Subst >

Class that is used to represent objects that are passed to user's lambda functions and representing users' reduction variable.

The generic version of the class represents those reductions of those types and operations for which the identity value is not known. The Algorithm template can be used to specialize reducers for different reduction algorithms. The View template describes whether the reducer owns its data or not: if View is 'true', then the reducer does not own its data and instead provides a view of data allocated elsewhere (i.e. via a reference or pointer member); if View is 'false', then the reducer owns its data. With the current default reduction algorithm, the top-level reducers that are passed to the user's lambda contain a private copy of the reduction variable, whereas any reducer created by a subscript operator contains a reference to a reduction variable allocated elsewhere.

Definition at line 126 of file reduction.hpp.


The documentation for this class was generated from the following file: