Public Types | Public Member Functions | Static Public Attributes | List of all members
Eigen::TensorEvaluator< const TensorContractionOp< Indices, LeftArgType, RightArgType, OutputKernelType >, Device > Struct Template Reference

#include <TensorContraction.h>

Inheritance diagram for Eigen::TensorEvaluator< const TensorContractionOp< Indices, LeftArgType, RightArgType, OutputKernelType >, Device >:
Inheritance graph
[legend]

Public Types

enum  { Layout = TensorEvaluator<LeftArgType, Device>::Layout }
 
typedef TensorContractionEvaluatorBase< SelfBase
 
typedef XprType::CoeffReturnType CoeffReturnType
 
typedef array< Index, ContractDimscontract_t
 
typedef DSizes< Index, NumDimsDimensions
 
typedef internal::conditional< static_cast< int >Layout)==static_cast< int >ColMajor), LeftArgType, RightArgType >::type EvalLeftArgType
 
typedef internal::conditional< static_cast< int >Layout)==static_cast< int >ColMajor), RightArgType, LeftArgType >::type EvalRightArgType
 
typedef XprType::Index Index
 
typedef array< Index, LDims - ContractDimsleft_nocontract_t
 
typedef PacketType< CoeffReturnType, Device >::type PacketReturnType
 
typedef array< Index, RDims - ContractDimsright_nocontract_t
 
typedef internal::remove_const< typename XprType::Scalar >::type Scalar
 
typedef TensorEvaluator< const TensorContractionOp< Indices, LeftArgType, RightArgType, OutputKernelType >, DeviceSelf
 
typedef TensorContractionOp< Indices, LeftArgType, RightArgType, OutputKernelTypeXprType
 
- Public Types inherited from Eigen::TensorContractionEvaluatorBase< TensorEvaluator< const TensorContractionOp< Indices, LeftArgType, RightArgType, OutputKernelType >, Device > >
enum  
 
typedef XprType::CoeffReturnType CoeffReturnType
 
typedef array< Index, ContractDimscontract_t
 
typedef internal::traits< TensorEvaluator< const TensorContractionOp< Indices, LeftArgType, RightArgType, OutputKernelType >, Device > >::Device Device
 
typedef DSizes< Index, NumDimsDimensions
 
typedef internal::conditional< static_cast< int >Layout)==static_cast< int >ColMajor), LeftArgType, RightArgType >::type EvalLeftArgType
 
typedef internal::conditional< static_cast< int >Layout)==static_cast< int >ColMajor), RightArgType, LeftArgType >::type EvalRightArgType
 
typedef Storage::Type EvaluatorPointerType
 
typedef XprType::Index Index
 
typedef internal::traits< TensorEvaluator< const TensorContractionOp< Indices, LeftArgType, RightArgType, OutputKernelType >, Device > >::Indices Indices
 
typedef array< Index, LDims - ContractDimsleft_nocontract_t
 
typedef internal::traits< TensorEvaluator< const TensorContractionOp< Indices, LeftArgType, RightArgType, OutputKernelType >, Device > >::LeftArgType LeftArgType
 
typedef TensorEvaluator< EvalLeftArgType, DeviceLeftEvaluatorType
 
typedef internal::traits< TensorEvaluator< const TensorContractionOp< Indices, LeftArgType, RightArgType, OutputKernelType >, Device > >::OutputKernelType OutputKernelType
 
typedef PacketType< CoeffReturnType, Device >::type PacketReturnType
 
typedef array< Index, RDims - ContractDimsright_nocontract_t
 
typedef internal::traits< TensorEvaluator< const TensorContractionOp< Indices, LeftArgType, RightArgType, OutputKernelType >, Device > >::RightArgType RightArgType
 
typedef TensorEvaluator< EvalRightArgType, DeviceRightEvaluatorType
 
typedef internal::remove_const< typename XprType::Scalar >::type Scalar
 
typedef StorageMemory< Scalar, DeviceStorage
 
typedef internal::TensorBlockNotImplemented TensorBlock
 
typedef TensorContractionOp< Indices, LeftArgType, RightArgType, OutputKernelTypeXprType
 

Public Member Functions

template<int Alignment>
void evalProduct (Scalar *buffer) const
 
 TensorEvaluator (const XprType &op, const Device &device)
 
- Public Member Functions inherited from Eigen::TensorContractionEvaluatorBase< TensorEvaluator< const TensorContractionOp< Indices, LeftArgType, RightArgType, OutputKernelType >, Device > >
EIGEN_STRONG_INLINE void cleanup ()
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE CoeffReturnType coeff (Index index) const
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE TensorOpCost costPerCoeff (bool) const
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE EvaluatorPointerType data () const
 
EIGEN_DEVICE_FUNC const EIGEN_STRONG_INLINE Dimensionsdimensions () const
 
EIGEN_DEVICE_FUNC void evalGemm (Scalar *buffer) const
 
EIGEN_DEVICE_FUNC void evalGemmPartial (Scalar *buffer, Index k_start, Index k_end, int num_threads) const
 
EIGEN_DEVICE_FUNC void evalGemmPartialWithoutOutputKernel (Scalar *buffer, Index k_start, Index k_end, int num_threads) const
 
EIGEN_DEVICE_FUNC void evalGemv (Scalar *buffer) const
 
void evalProductSequential (Scalar *buffer) const
 
EIGEN_STRONG_INLINE bool evalSubExprsIfNeeded (EvaluatorPointerType data)
 
EIGEN_DEVICE_FUNC void evalTo (Scalar *buffer) const
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE PacketReturnType packet (Index index) const
 
EIGEN_STRONG_INLINE TensorContractionEvaluatorBase (const XprType &op, const Device &device)
 

Static Public Attributes

static const int ContractDims = internal::array_size<Indices>::value
 
static const int LDims
 
static const int NumDims = LDims + RDims - 2 * ContractDims
 
static const int RDims
 
- Static Public Attributes inherited from Eigen::TensorContractionEvaluatorBase< TensorEvaluator< const TensorContractionOp< Indices, LeftArgType, RightArgType, OutputKernelType >, Device > >
static const int ContractDims
 
static const int LDims
 
static const int NumDims
 
static const int RDims
 

Additional Inherited Members

- Protected Attributes inherited from Eigen::TensorContractionEvaluatorBase< TensorEvaluator< const TensorContractionOp< Indices, LeftArgType, RightArgType, OutputKernelType >, Device > >
const Device EIGEN_DEVICE_REF m_device
 
Dimensions m_dimensions
 
Index m_i_size
 
left_nocontract_t m_i_strides
 
Index m_j_size
 
right_nocontract_t m_j_strides
 
Index m_k_size
 
contract_t m_k_strides
 
contract_t m_left_contracting_strides
 
left_nocontract_t m_left_nocontract_strides
 
TensorEvaluator< EvalLeftArgType, Devicem_leftImpl
 
bool m_lhs_inner_dim_contiguous
 
OutputKernelType m_output_kernel
 
EvaluatorPointerType m_result
 
bool m_rhs_inner_dim_contiguous
 
bool m_rhs_inner_dim_reordered
 
contract_t m_right_contracting_strides
 
right_nocontract_t m_right_nocontract_strides
 
TensorEvaluator< EvalRightArgType, Devicem_rightImpl
 
TensorContractionParams m_tensor_contraction_params
 

Detailed Description

template<typename Indices, typename LeftArgType, typename RightArgType, typename OutputKernelType, typename Device>
struct Eigen::TensorEvaluator< const TensorContractionOp< Indices, LeftArgType, RightArgType, OutputKernelType >, Device >

Definition at line 972 of file TensorContraction.h.

Member Typedef Documentation

◆ Base

template<typename Indices , typename LeftArgType , typename RightArgType , typename OutputKernelType , typename Device >
typedef TensorContractionEvaluatorBase<Self> Eigen::TensorEvaluator< const TensorContractionOp< Indices, LeftArgType, RightArgType, OutputKernelType >, Device >::Base

Definition at line 976 of file TensorContraction.h.

◆ CoeffReturnType

template<typename Indices , typename LeftArgType , typename RightArgType , typename OutputKernelType , typename Device >
typedef XprType::CoeffReturnType Eigen::TensorEvaluator< const TensorContractionOp< Indices, LeftArgType, RightArgType, OutputKernelType >, Device >::CoeffReturnType

Definition at line 981 of file TensorContraction.h.

◆ contract_t

template<typename Indices , typename LeftArgType , typename RightArgType , typename OutputKernelType , typename Device >
typedef array<Index, ContractDims> Eigen::TensorEvaluator< const TensorContractionOp< Indices, LeftArgType, RightArgType, OutputKernelType >, Device >::contract_t

Definition at line 1003 of file TensorContraction.h.

◆ Dimensions

template<typename Indices , typename LeftArgType , typename RightArgType , typename OutputKernelType , typename Device >
typedef DSizes<Index, NumDims> Eigen::TensorEvaluator< const TensorContractionOp< Indices, LeftArgType, RightArgType, OutputKernelType >, Device >::Dimensions

Definition at line 1010 of file TensorContraction.h.

◆ EvalLeftArgType

template<typename Indices , typename LeftArgType , typename RightArgType , typename OutputKernelType , typename Device >
typedef internal::conditional< static_cast<int>Layout) == static_cast<int>ColMajor), LeftArgType, RightArgType>::type Eigen::TensorEvaluator< const TensorContractionOp< Indices, LeftArgType, RightArgType, OutputKernelType >, Device >::EvalLeftArgType

Definition at line 993 of file TensorContraction.h.

◆ EvalRightArgType

template<typename Indices , typename LeftArgType , typename RightArgType , typename OutputKernelType , typename Device >
typedef internal::conditional< static_cast<int>Layout) == static_cast<int>ColMajor), RightArgType, LeftArgType>::type Eigen::TensorEvaluator< const TensorContractionOp< Indices, LeftArgType, RightArgType, OutputKernelType >, Device >::EvalRightArgType

Definition at line 995 of file TensorContraction.h.

◆ Index

template<typename Indices , typename LeftArgType , typename RightArgType , typename OutputKernelType , typename Device >
typedef XprType::Index Eigen::TensorEvaluator< const TensorContractionOp< Indices, LeftArgType, RightArgType, OutputKernelType >, Device >::Index

Definition at line 980 of file TensorContraction.h.

◆ left_nocontract_t

template<typename Indices , typename LeftArgType , typename RightArgType , typename OutputKernelType , typename Device >
typedef array<Index, LDims - ContractDims> Eigen::TensorEvaluator< const TensorContractionOp< Indices, LeftArgType, RightArgType, OutputKernelType >, Device >::left_nocontract_t

Definition at line 1004 of file TensorContraction.h.

◆ PacketReturnType

template<typename Indices , typename LeftArgType , typename RightArgType , typename OutputKernelType , typename Device >
typedef PacketType<CoeffReturnType, Device>::type Eigen::TensorEvaluator< const TensorContractionOp< Indices, LeftArgType, RightArgType, OutputKernelType >, Device >::PacketReturnType

Definition at line 982 of file TensorContraction.h.

◆ right_nocontract_t

template<typename Indices , typename LeftArgType , typename RightArgType , typename OutputKernelType , typename Device >
typedef array<Index, RDims - ContractDims> Eigen::TensorEvaluator< const TensorContractionOp< Indices, LeftArgType, RightArgType, OutputKernelType >, Device >::right_nocontract_t

Definition at line 1005 of file TensorContraction.h.

◆ Scalar

template<typename Indices , typename LeftArgType , typename RightArgType , typename OutputKernelType , typename Device >
typedef internal::remove_const<typename XprType::Scalar>::type Eigen::TensorEvaluator< const TensorContractionOp< Indices, LeftArgType, RightArgType, OutputKernelType >, Device >::Scalar

Definition at line 979 of file TensorContraction.h.

◆ Self

template<typename Indices , typename LeftArgType , typename RightArgType , typename OutputKernelType , typename Device >
typedef TensorEvaluator<const TensorContractionOp<Indices, LeftArgType, RightArgType, OutputKernelType>, Device> Eigen::TensorEvaluator< const TensorContractionOp< Indices, LeftArgType, RightArgType, OutputKernelType >, Device >::Self

Definition at line 975 of file TensorContraction.h.

◆ XprType

template<typename Indices , typename LeftArgType , typename RightArgType , typename OutputKernelType , typename Device >
typedef TensorContractionOp<Indices, LeftArgType, RightArgType, OutputKernelType> Eigen::TensorEvaluator< const TensorContractionOp< Indices, LeftArgType, RightArgType, OutputKernelType >, Device >::XprType

Definition at line 978 of file TensorContraction.h.

Member Enumeration Documentation

◆ anonymous enum

template<typename Indices , typename LeftArgType , typename RightArgType , typename OutputKernelType , typename Device >
anonymous enum
Enumerator
Layout 

Definition at line 984 of file TensorContraction.h.

Constructor & Destructor Documentation

◆ TensorEvaluator()

template<typename Indices , typename LeftArgType , typename RightArgType , typename OutputKernelType , typename Device >
Eigen::TensorEvaluator< const TensorContractionOp< Indices, LeftArgType, RightArgType, OutputKernelType >, Device >::TensorEvaluator ( const XprType op,
const Device device 
)
inline

Definition at line 1012 of file TensorContraction.h.

Member Function Documentation

◆ evalProduct()

template<typename Indices , typename LeftArgType , typename RightArgType , typename OutputKernelType , typename Device >
template<int Alignment>
void Eigen::TensorEvaluator< const TensorContractionOp< Indices, LeftArgType, RightArgType, OutputKernelType >, Device >::evalProduct ( Scalar buffer) const
inline

Definition at line 1016 of file TensorContraction.h.

Member Data Documentation

◆ ContractDims

template<typename Indices , typename LeftArgType , typename RightArgType , typename OutputKernelType , typename Device >
const int Eigen::TensorEvaluator< const TensorContractionOp< Indices, LeftArgType, RightArgType, OutputKernelType >, Device >::ContractDims = internal::array_size<Indices>::value
static

Definition at line 1001 of file TensorContraction.h.

◆ LDims

template<typename Indices , typename LeftArgType , typename RightArgType , typename OutputKernelType , typename Device >
const int Eigen::TensorEvaluator< const TensorContractionOp< Indices, LeftArgType, RightArgType, OutputKernelType >, Device >::LDims
static
Initial value:
=
internal::array_size<typename TensorEvaluator<EvalLeftArgType, Device>::Dimensions>::value

Definition at line 997 of file TensorContraction.h.

◆ NumDims

template<typename Indices , typename LeftArgType , typename RightArgType , typename OutputKernelType , typename Device >
const int Eigen::TensorEvaluator< const TensorContractionOp< Indices, LeftArgType, RightArgType, OutputKernelType >, Device >::NumDims = LDims + RDims - 2 * ContractDims
static

Definition at line 1007 of file TensorContraction.h.

◆ RDims

template<typename Indices , typename LeftArgType , typename RightArgType , typename OutputKernelType , typename Device >
const int Eigen::TensorEvaluator< const TensorContractionOp< Indices, LeftArgType, RightArgType, OutputKernelType >, Device >::RDims
static
Initial value:
=
internal::array_size<typename TensorEvaluator<EvalRightArgType, Device>::Dimensions>::value

Definition at line 999 of file TensorContraction.h.


The documentation for this struct was generated from the following file:
test_callbacks.value
value
Definition: test_callbacks.py:158


gtsam
Author(s):
autogenerated on Sat Jun 1 2024 03:11:09