Eigen::internal::InnerMostDimReducer< Self, Op, Vectorizable, UseTreeReduction > Struct Template Reference

#include <TensorReduction.h>

Static Public Member Functions

static EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Self::CoeffReturnType reduce (const Self &self, typename Self::Index firstIndex, typename Self::Index numValuesToReduce, Op &reducer)
 

Member Function Documentation

◆ reduce()

template<typename Self , typename Op , bool Vectorizable = (Self::InputPacketAccess && Self::ReducerTraits::PacketAccess), bool UseTreeReduction = (!Self::ReducerTraits::IsStateful && !Self::ReducerTraits::IsExactlyAssociative && !Self::RunningOnGPU)>
static EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Self::CoeffReturnType Eigen::internal::InnerMostDimReducer< Self, Op, Vectorizable, UseTreeReduction >::reduce ( const Self &  self,
typename Self::Index  firstIndex,
typename Self::Index  numValuesToReduce,
Op &  reducer 
)
inlinestatic
174  {
175  typename Self::CoeffReturnType accum = reducer.initialize();
176  for (typename Self::Index j = 0; j < numValuesToReduce; ++j) {
177  reducer.reduce(self.m_impl.coeff(firstIndex + j), &accum);
178  }
179  return reducer.finalize(accum);
180  }
EIGEN_DEFAULT_DENSE_INDEX_TYPE Index
The Index type as used for the API.
Definition: Meta.h:83
std::ptrdiff_t j
Definition: tut_arithmetic_redux_minmax.cpp:2

References j.

Referenced by Eigen::TensorReductionEvaluatorBase< const TensorReductionOp< Op, Dims, ArgType, MakePointer_ >, Device >::coeff(), Eigen::TensorReductionEvaluatorBase< const TensorReductionOp< Op, Dims, ArgType, MakePointer_ >, Device >::packet(), Eigen::internal::InnerMostDimReducer< Self, Op, false, true >::reduce(), Eigen::internal::InnerMostDimReducer< Self, Op, true, true >::reduce(), and Eigen::internal::FullReducer< Self, Op, Device, Vectorizable >::run().


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