Template Numerical Library version\ main:bb09b17
Loading...
Searching...
No Matches
TNL::Algorithms::Multireduction< Devices::Cuda > Struct Reference

Static Public Member Functions

template<typename Result , typename DataFetcher , typename Reduction , typename Index >
static void reduce (Result identity, DataFetcher dataFetcher, Reduction reduction, Index size, int n, Result *hostResult)
 

Member Function Documentation

◆ reduce()

template<typename Result , typename DataFetcher , typename Reduction , typename Index >
void TNL::Algorithms::Multireduction< Devices::Cuda >::reduce ( Result identity,
DataFetcher dataFetcher,
Reduction reduction,
Index size,
int n,
Result * hostResult )
static

Parameters: identity: the identity element for the reduction operation, i.e. element which does not change the result of the reduction dataFetcher: callable object such that dataFetcher( i, j ) yields the i-th value to be reduced from the j-th dataset (i = 0,...,size-1; j = 0,...,n-1) reduction: callable object representing the reduction operation for example, it can be an instance of std::plus, std::logical_and, std::logical_or etc. size: the size of each dataset n: number of datasets to be reduced hostResult: output array of size = n


The documentation for this struct was generated from the following files: