Template Numerical Library version\ main:4e58ea6
Loading...
Searching...
No Matches
TNL::Algorithms::SegmentsReductionKernels::CSRAdaptiveKernel< Index, Device > Struct Template Reference
Collaboration diagram for TNL::Algorithms::SegmentsReductionKernels::CSRAdaptiveKernel< Index, Device >:

Public Types

using BlocksType = typename ViewType::BlocksType
 
using BlocksView = typename BlocksType::ViewType
 
using ConstViewType = CSRAdaptiveKernelView< Index, Device >
 
using DeviceType = Device
 
using IndexType = Index
 
using ViewType = CSRAdaptiveKernelView< Index, Device >
 

Public Member Functions

__cuda_callable__ ConstViewType getConstView () const
 
__cuda_callable__ ViewType getView ()
 
template<typename Segments >
void init (const Segments &segments)
 
template<typename SegmentsView , typename Fetch , typename Reduction , typename ResultKeeper , typename Value = typename detail::FetchLambdaAdapter< Index, Fetch >::ReturnType>
void reduceAllSegments (const SegmentsView &segments, Fetch &fetch, const Reduction &reduction, ResultKeeper &keeper, const Value &identity=Reduction::template getIdentity< Value >()) const
 
template<typename SegmentsView , typename Fetch , typename Reduction , typename ResultKeeper , typename Value = typename detail::FetchLambdaAdapter< Index, Fetch >::ReturnType>
void reduceSegments (const SegmentsView &segments, Index begin, Index end, Fetch &fetch, const Reduction &reduction, ResultKeeper &keeper, const Value &identity=Reduction::template getIdentity< Value >()) const
 
void reset ()
 

Static Public Member Functions

static std::string getKernelType ()
 
static int getSizeValueLog (const int &i)
 
static constexpr int MaxValueSizeLog ()
 

Protected Member Functions

template<int SizeOfValue, typename Offsets >
Index findLimit (Index start, const Offsets &offsets, Index size, detail::Type &type)
 
template<int SizeOfValue, typename Offsets >
void initValueSize (const Offsets &offsets)
 

Protected Attributes

BlocksType blocksArray [MaxValueSizeLog()]
 blocksArray[ i ] stores blocks for sizeof( Value ) == 2^i.
 
ViewType view
 

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