TR-mbed 1.0
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Member Functions | List of all members
Eigen::internal::TensorContractionKernel< ResScalar, LhsScalar, RhsScalar, StorageIndex, OutputMapper, LhsMapper, RhsMapper > Struct Template Reference

#include <TensorContraction.h>

Public Types

enum  { HasBeta = false }
 
typedef LhsScalar * LhsBlock
 
typedef RhsScalar * RhsBlock
 
typedef TensorContractionBlockMemAllocator< LhsScalar, RhsScalar > BlockMemAllocator
 
typedef BlockMemAllocator::BlockMemHandle BlockMemHandle
 
typedef internal::gebp_traits< LhsScalar, RhsScalar > Traits
 
typedef internal::gemm_pack_lhs< LhsScalar, StorageIndex, typename LhsMapper::SubMapper, Traits::mr, Traits::LhsProgress, typename Traits::LhsPacket4Packing, ColMajorLhsPacker
 
typedef internal::gemm_pack_rhs< RhsScalar, StorageIndex, typename RhsMapper::SubMapper, Traits::nr, ColMajorRhsPacker
 
typedef internal::gebp_kernel< LhsScalar, RhsScalar, StorageIndex, OutputMapper, Traits::mr, Traits::nr, false, falseGebpKernel
 

Public Member Functions

EIGEN_DEVICE_FUNC TensorContractionKernel (StorageIndex m_, StorageIndex k_, StorageIndex n_, StorageIndex bm_, StorageIndex bk_, StorageIndex bn_)
 
template<typename Device >
EIGEN_DEVICE_FUNC BlockMemHandle allocate (Device &d, LhsBlock *lhs_block, RhsBlock *rhs_block)
 
template<typename Device >
EIGEN_DEVICE_FUNC BlockMemHandle allocateSlices (Device &d, const StorageIndex num_lhs, const StorageIndex num_rhs, const StorageIndex num_slices, std::vector< LhsBlock > *lhs_blocks, std::vector< RhsBlock > *rhs_blocks)
 
EIGEN_DEVICE_FUNC EIGEN_DONT_INLINE void packLhs (LhsBlock *lhsBlock, const typename LhsMapper::SubMapper &data_mapper, const StorageIndex depth, const StorageIndex rows)
 
EIGEN_DEVICE_FUNC EIGEN_DONT_INLINE void packRhs (RhsBlock *rhsBlock, const typename RhsMapper::SubMapper &data_mapper, const StorageIndex depth, const StorageIndex cols)
 
EIGEN_DEVICE_FUNC EIGEN_DONT_INLINE void invoke (const OutputMapper &output_mapper, const LhsBlock &lhsBlock, const RhsBlock &rhsBlock, const StorageIndex rows, const StorageIndex depth, const StorageIndex cols, const ResScalar alpha, const ResScalar beta)
 

Static Public Member Functions

template<typename Device >
static EIGEN_DEVICE_FUNC void deallocate (Device &d, BlockMemHandle handle)
 

Member Typedef Documentation

◆ BlockMemAllocator

template<typename ResScalar , typename LhsScalar , typename RhsScalar , typename StorageIndex , typename OutputMapper , typename LhsMapper , typename RhsMapper >
typedef TensorContractionBlockMemAllocator<LhsScalar, RhsScalar> Eigen::internal::TensorContractionKernel< ResScalar, LhsScalar, RhsScalar, StorageIndex, OutputMapper, LhsMapper, RhsMapper >::BlockMemAllocator

◆ BlockMemHandle

template<typename ResScalar , typename LhsScalar , typename RhsScalar , typename StorageIndex , typename OutputMapper , typename LhsMapper , typename RhsMapper >
typedef BlockMemAllocator::BlockMemHandle Eigen::internal::TensorContractionKernel< ResScalar, LhsScalar, RhsScalar, StorageIndex, OutputMapper, LhsMapper, RhsMapper >::BlockMemHandle

◆ GebpKernel

template<typename ResScalar , typename LhsScalar , typename RhsScalar , typename StorageIndex , typename OutputMapper , typename LhsMapper , typename RhsMapper >
typedef internal::gebp_kernel<LhsScalar, RhsScalar, StorageIndex, OutputMapper, Traits::mr, Traits::nr, false, false> Eigen::internal::TensorContractionKernel< ResScalar, LhsScalar, RhsScalar, StorageIndex, OutputMapper, LhsMapper, RhsMapper >::GebpKernel

◆ LhsBlock

template<typename ResScalar , typename LhsScalar , typename RhsScalar , typename StorageIndex , typename OutputMapper , typename LhsMapper , typename RhsMapper >
typedef LhsScalar* Eigen::internal::TensorContractionKernel< ResScalar, LhsScalar, RhsScalar, StorageIndex, OutputMapper, LhsMapper, RhsMapper >::LhsBlock

◆ LhsPacker

template<typename ResScalar , typename LhsScalar , typename RhsScalar , typename StorageIndex , typename OutputMapper , typename LhsMapper , typename RhsMapper >
typedef internal::gemm_pack_lhs< LhsScalar, StorageIndex, typename LhsMapper::SubMapper, Traits::mr, Traits::LhsProgress, typename Traits::LhsPacket4Packing, ColMajor> Eigen::internal::TensorContractionKernel< ResScalar, LhsScalar, RhsScalar, StorageIndex, OutputMapper, LhsMapper, RhsMapper >::LhsPacker

◆ RhsBlock

template<typename ResScalar , typename LhsScalar , typename RhsScalar , typename StorageIndex , typename OutputMapper , typename LhsMapper , typename RhsMapper >
typedef RhsScalar* Eigen::internal::TensorContractionKernel< ResScalar, LhsScalar, RhsScalar, StorageIndex, OutputMapper, LhsMapper, RhsMapper >::RhsBlock

◆ RhsPacker

template<typename ResScalar , typename LhsScalar , typename RhsScalar , typename StorageIndex , typename OutputMapper , typename LhsMapper , typename RhsMapper >
typedef internal::gemm_pack_rhs<RhsScalar, StorageIndex, typename RhsMapper::SubMapper, Traits::nr, ColMajor> Eigen::internal::TensorContractionKernel< ResScalar, LhsScalar, RhsScalar, StorageIndex, OutputMapper, LhsMapper, RhsMapper >::RhsPacker

◆ Traits

template<typename ResScalar , typename LhsScalar , typename RhsScalar , typename StorageIndex , typename OutputMapper , typename LhsMapper , typename RhsMapper >
typedef internal::gebp_traits<LhsScalar, RhsScalar> Eigen::internal::TensorContractionKernel< ResScalar, LhsScalar, RhsScalar, StorageIndex, OutputMapper, LhsMapper, RhsMapper >::Traits

Member Enumeration Documentation

◆ anonymous enum

template<typename ResScalar , typename LhsScalar , typename RhsScalar , typename StorageIndex , typename OutputMapper , typename LhsMapper , typename RhsMapper >
anonymous enum
Enumerator
HasBeta 

Constructor & Destructor Documentation

◆ TensorContractionKernel()

template<typename ResScalar , typename LhsScalar , typename RhsScalar , typename StorageIndex , typename OutputMapper , typename LhsMapper , typename RhsMapper >
EIGEN_DEVICE_FUNC Eigen::internal::TensorContractionKernel< ResScalar, LhsScalar, RhsScalar, StorageIndex, OutputMapper, LhsMapper, RhsMapper >::TensorContractionKernel ( StorageIndex  m_,
StorageIndex  k_,
StorageIndex  n_,
StorageIndex  bm_,
StorageIndex  bk_,
StorageIndex  bn_ 
)
inline

Member Function Documentation

◆ allocate()

template<typename ResScalar , typename LhsScalar , typename RhsScalar , typename StorageIndex , typename OutputMapper , typename LhsMapper , typename RhsMapper >
template<typename Device >
EIGEN_DEVICE_FUNC BlockMemHandle Eigen::internal::TensorContractionKernel< ResScalar, LhsScalar, RhsScalar, StorageIndex, OutputMapper, LhsMapper, RhsMapper >::allocate ( Device &  d,
LhsBlock lhs_block,
RhsBlock rhs_block 
)
inline

◆ allocateSlices()

template<typename ResScalar , typename LhsScalar , typename RhsScalar , typename StorageIndex , typename OutputMapper , typename LhsMapper , typename RhsMapper >
template<typename Device >
EIGEN_DEVICE_FUNC BlockMemHandle Eigen::internal::TensorContractionKernel< ResScalar, LhsScalar, RhsScalar, StorageIndex, OutputMapper, LhsMapper, RhsMapper >::allocateSlices ( Device &  d,
const StorageIndex  num_lhs,
const StorageIndex  num_rhs,
const StorageIndex  num_slices,
std::vector< LhsBlock > *  lhs_blocks,
std::vector< RhsBlock > *  rhs_blocks 
)
inline

◆ deallocate()

template<typename ResScalar , typename LhsScalar , typename RhsScalar , typename StorageIndex , typename OutputMapper , typename LhsMapper , typename RhsMapper >
template<typename Device >
static EIGEN_DEVICE_FUNC void Eigen::internal::TensorContractionKernel< ResScalar, LhsScalar, RhsScalar, StorageIndex, OutputMapper, LhsMapper, RhsMapper >::deallocate ( Device &  d,
BlockMemHandle  handle 
)
inlinestatic

◆ invoke()

template<typename ResScalar , typename LhsScalar , typename RhsScalar , typename StorageIndex , typename OutputMapper , typename LhsMapper , typename RhsMapper >
EIGEN_DEVICE_FUNC EIGEN_DONT_INLINE void Eigen::internal::TensorContractionKernel< ResScalar, LhsScalar, RhsScalar, StorageIndex, OutputMapper, LhsMapper, RhsMapper >::invoke ( const OutputMapper output_mapper,
const LhsBlock lhsBlock,
const RhsBlock rhsBlock,
const StorageIndex  rows,
const StorageIndex  depth,
const StorageIndex  cols,
const ResScalar  alpha,
const ResScalar  beta 
)
inline

◆ packLhs()

template<typename ResScalar , typename LhsScalar , typename RhsScalar , typename StorageIndex , typename OutputMapper , typename LhsMapper , typename RhsMapper >
EIGEN_DEVICE_FUNC EIGEN_DONT_INLINE void Eigen::internal::TensorContractionKernel< ResScalar, LhsScalar, RhsScalar, StorageIndex, OutputMapper, LhsMapper, RhsMapper >::packLhs ( LhsBlock lhsBlock,
const typename LhsMapper::SubMapper &  data_mapper,
const StorageIndex  depth,
const StorageIndex  rows 
)
inline

◆ packRhs()

template<typename ResScalar , typename LhsScalar , typename RhsScalar , typename StorageIndex , typename OutputMapper , typename LhsMapper , typename RhsMapper >
EIGEN_DEVICE_FUNC EIGEN_DONT_INLINE void Eigen::internal::TensorContractionKernel< ResScalar, LhsScalar, RhsScalar, StorageIndex, OutputMapper, LhsMapper, RhsMapper >::packRhs ( RhsBlock rhsBlock,
const typename RhsMapper::SubMapper &  data_mapper,
const StorageIndex  depth,
const StorageIndex  cols 
)
inline

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