Static Public Attributes | List of all members
Eigen::TensorSycl::internal::TTPanelSize< Scalar, StorageIndex, REG_SIZE_M, REG_SIZE_N, TSDK > Struct Template Reference

TTPanelSize, a template class used for setting the panel size required for launching General Tensor Tensor contraction kernel on various hardware devices. More...

#include <TensorContractionSycl.h>

Static Public Attributes

static EIGEN_CONSTEXPR bool BC = true
 
static EIGEN_CONSTEXPR bool DoubleBuffer
 
static EIGEN_CONSTEXPR StorageIndex LoadPerThreadLhs
 
static EIGEN_CONSTEXPR StorageIndex LoadPerThreadRhs
 
static EIGEN_CONSTEXPR StorageIndex LocalThreadSizeM = EIGEN_SYCL_LOCAL_THREAD_DIM0
 
static EIGEN_CONSTEXPR StorageIndex LocalThreadSizeN = EIGEN_SYCL_LOCAL_THREAD_DIM1
 
static EIGEN_CONSTEXPR StorageIndex TileSizeDimK = TSDK
 
static EIGEN_CONSTEXPR StorageIndex TileSizeDimM = LocalThreadSizeM * WorkLoadPerThreadM
 
static EIGEN_CONSTEXPR StorageIndex TileSizeDimN = LocalThreadSizeN * WorkLoadPerThreadN
 
static EIGEN_CONSTEXPR StorageIndex WorkLoadPerThreadM = REG_SIZE_M
 
static EIGEN_CONSTEXPR StorageIndex WorkLoadPerThreadN = REG_SIZE_N
 

Detailed Description

template<typename Scalar, typename StorageIndex, StorageIndex REG_SIZE_M, StorageIndex REG_SIZE_N, StorageIndex TSDK>
struct Eigen::TensorSycl::internal::TTPanelSize< Scalar, StorageIndex, REG_SIZE_M, REG_SIZE_N, TSDK >

TTPanelSize, a template class used for setting the panel size required for launching General Tensor Tensor contraction kernel on various hardware devices.

Template Parameters
Scalardetermines the element type of the tensor
StorageIndexdetermines the Index type.
REG_SIZE_Mdetermines workload per thread for loading the M dimension This can be varied based on the available register on a chosen device(can be controlled by EIGEN_SYCL_REG_M macro).
REG_SIZE_Ndetermines workload per thread for loading the N dimension This can be varied based on the available register on a chosen device(can be controlled by EIGEN_SYCL_REG_N macro).
TSDKdetermines Tile size for dimension K. The packet size is assumed to be considered

Definition at line 79 of file TensorContractionSycl.h.

Member Data Documentation

◆ BC

template<typename Scalar , typename StorageIndex , StorageIndex REG_SIZE_M, StorageIndex REG_SIZE_N, StorageIndex TSDK>
EIGEN_CONSTEXPR bool Eigen::TensorSycl::internal::TTPanelSize< Scalar, StorageIndex, REG_SIZE_M, REG_SIZE_N, TSDK >::BC = true
static

Definition at line 111 of file TensorContractionSycl.h.

◆ DoubleBuffer

template<typename Scalar , typename StorageIndex , StorageIndex REG_SIZE_M, StorageIndex REG_SIZE_N, StorageIndex TSDK>
EIGEN_CONSTEXPR bool Eigen::TensorSycl::internal::TTPanelSize< Scalar, StorageIndex, REG_SIZE_M, REG_SIZE_N, TSDK >::DoubleBuffer
static
Initial value:
=
true

Definition at line 114 of file TensorContractionSycl.h.

◆ LoadPerThreadLhs

template<typename Scalar , typename StorageIndex , StorageIndex REG_SIZE_M, StorageIndex REG_SIZE_N, StorageIndex TSDK>
EIGEN_CONSTEXPR StorageIndex Eigen::TensorSycl::internal::TTPanelSize< Scalar, StorageIndex, REG_SIZE_M, REG_SIZE_N, TSDK >::LoadPerThreadLhs
static
Initial value:

Definition at line 105 of file TensorContractionSycl.h.

◆ LoadPerThreadRhs

template<typename Scalar , typename StorageIndex , StorageIndex REG_SIZE_M, StorageIndex REG_SIZE_N, StorageIndex TSDK>
EIGEN_CONSTEXPR StorageIndex Eigen::TensorSycl::internal::TTPanelSize< Scalar, StorageIndex, REG_SIZE_M, REG_SIZE_N, TSDK >::LoadPerThreadRhs
static
Initial value:

Definition at line 108 of file TensorContractionSycl.h.

◆ LocalThreadSizeM

template<typename Scalar , typename StorageIndex , StorageIndex REG_SIZE_M, StorageIndex REG_SIZE_N, StorageIndex TSDK>
EIGEN_CONSTEXPR StorageIndex Eigen::TensorSycl::internal::TTPanelSize< Scalar, StorageIndex, REG_SIZE_M, REG_SIZE_N, TSDK >::LocalThreadSizeM = EIGEN_SYCL_LOCAL_THREAD_DIM0
static

Definition at line 97 of file TensorContractionSycl.h.

◆ LocalThreadSizeN

template<typename Scalar , typename StorageIndex , StorageIndex REG_SIZE_M, StorageIndex REG_SIZE_N, StorageIndex TSDK>
EIGEN_CONSTEXPR StorageIndex Eigen::TensorSycl::internal::TTPanelSize< Scalar, StorageIndex, REG_SIZE_M, REG_SIZE_N, TSDK >::LocalThreadSizeN = EIGEN_SYCL_LOCAL_THREAD_DIM1
static

Definition at line 99 of file TensorContractionSycl.h.

◆ TileSizeDimK

template<typename Scalar , typename StorageIndex , StorageIndex REG_SIZE_M, StorageIndex REG_SIZE_N, StorageIndex TSDK>
EIGEN_CONSTEXPR StorageIndex Eigen::TensorSycl::internal::TTPanelSize< Scalar, StorageIndex, REG_SIZE_M, REG_SIZE_N, TSDK >::TileSizeDimK = TSDK
static

Definition at line 81 of file TensorContractionSycl.h.

◆ TileSizeDimM

template<typename Scalar , typename StorageIndex , StorageIndex REG_SIZE_M, StorageIndex REG_SIZE_N, StorageIndex TSDK>
EIGEN_CONSTEXPR StorageIndex Eigen::TensorSycl::internal::TTPanelSize< Scalar, StorageIndex, REG_SIZE_M, REG_SIZE_N, TSDK >::TileSizeDimM = LocalThreadSizeM * WorkLoadPerThreadM
static

Definition at line 101 of file TensorContractionSycl.h.

◆ TileSizeDimN

template<typename Scalar , typename StorageIndex , StorageIndex REG_SIZE_M, StorageIndex REG_SIZE_N, StorageIndex TSDK>
EIGEN_CONSTEXPR StorageIndex Eigen::TensorSycl::internal::TTPanelSize< Scalar, StorageIndex, REG_SIZE_M, REG_SIZE_N, TSDK >::TileSizeDimN = LocalThreadSizeN * WorkLoadPerThreadN
static

Definition at line 103 of file TensorContractionSycl.h.

◆ WorkLoadPerThreadM

template<typename Scalar , typename StorageIndex , StorageIndex REG_SIZE_M, StorageIndex REG_SIZE_N, StorageIndex TSDK>
EIGEN_CONSTEXPR StorageIndex Eigen::TensorSycl::internal::TTPanelSize< Scalar, StorageIndex, REG_SIZE_M, REG_SIZE_N, TSDK >::WorkLoadPerThreadM = REG_SIZE_M
static

Definition at line 85 of file TensorContractionSycl.h.

◆ WorkLoadPerThreadN

template<typename Scalar , typename StorageIndex , StorageIndex REG_SIZE_M, StorageIndex REG_SIZE_N, StorageIndex TSDK>
EIGEN_CONSTEXPR StorageIndex Eigen::TensorSycl::internal::TTPanelSize< Scalar, StorageIndex, REG_SIZE_M, REG_SIZE_N, TSDK >::WorkLoadPerThreadN = REG_SIZE_N
static

Definition at line 92 of file TensorContractionSycl.h.


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


gtsam
Author(s):
autogenerated on Tue Jul 4 2023 02:46:12