Public Types | Public Member Functions | Public Attributes | List of all members
Eigen::TensorSycl::internal::GeneralScalarContraction< OutScalar, LhsScalar, RhsScalar, OutAccessor, LhsMapper, RhsMapper, StorageIndex, Vectorizable > Struct Template Reference

GeneralScalarContraction is a template class that provides the scalar value of Tensor -Tensor contraction operation, when all the dimensions are contracting dimensions. This Kernel reduces two tensors to an scalar. More...

#include <TensorContractionSycl.h>

Public Types

typedef cl::sycl::accessor< OutScalar, 1, cl::sycl::access::mode::read_write, cl::sycl::access::target::local > Scratch
 

Public Member Functions

EIGEN_DEVICE_FUNC GeneralScalarContraction (Scratch scratch_, const LhsMapper lhs_, const RhsMapper rhs_, OutAccessor out_res_, const StorageIndex rng_)
 
EIGEN_DEVICE_FUNC void operator() (cl::sycl::nd_item< 1 > itemID)
 

Public Attributes

const LhsMapper lhs
 
OutAccessor out_res
 
const RhsMapper rhs
 
const StorageIndex rng
 
Scratch scratch
 

Detailed Description

template<typename OutScalar, typename LhsScalar, typename RhsScalar, typename OutAccessor, typename LhsMapper, typename RhsMapper, typename StorageIndex, bool Vectorizable>
struct Eigen::TensorSycl::internal::GeneralScalarContraction< OutScalar, LhsScalar, RhsScalar, OutAccessor, LhsMapper, RhsMapper, StorageIndex, Vectorizable >

GeneralScalarContraction is a template class that provides the scalar value of Tensor -Tensor contraction operation, when all the dimensions are contracting dimensions. This Kernel reduces two tensors to an scalar.

Template Parameters
OutScalardetermines the output scalar type
LhsScalardetermines the left-hand-side scalar type
RhsScalardetermines the right-hand-side scalar type
OutAccessordetermines the sycl accessor type for out put (please see the sycl-1.2.1 specification (https://www.khronos.org/registry/SYCL/specs/sycl-1.2.1.pdf) for accessor definition)
LhsMapperdetermines the tensor contraction mapper type for left-hand-side matrix
RhsMapperdetermines the tensor contraction mapper type for right-hand-side matrix
StorageIndexdetermines the StorageIndex Type
Vectorizabledetermines whether or not the vectorization is enabled for the Eigen expression.
Parameters
scratchlocal memory containing tiles of LHS and RHS tensors for each work-group
lhsdetermines the left-hand-side flattened tensor (tensor mapper)
rhsdetermines the right-hand-side flattened tensor (tensor mapper)
out_resdetermines the output tensor containing the contraction result
rngdetermins the total input data size

Definition at line 1241 of file TensorContractionSycl.h.

Member Typedef Documentation

◆ Scratch

template<typename OutScalar , typename LhsScalar , typename RhsScalar , typename OutAccessor , typename LhsMapper , typename RhsMapper , typename StorageIndex , bool Vectorizable>
typedef cl::sycl::accessor<OutScalar, 1, cl::sycl::access::mode::read_write, cl::sycl::access::target::local> Eigen::TensorSycl::internal::GeneralScalarContraction< OutScalar, LhsScalar, RhsScalar, OutAccessor, LhsMapper, RhsMapper, StorageIndex, Vectorizable >::Scratch

Definition at line 1242 of file TensorContractionSycl.h.

Constructor & Destructor Documentation

◆ GeneralScalarContraction()

template<typename OutScalar , typename LhsScalar , typename RhsScalar , typename OutAccessor , typename LhsMapper , typename RhsMapper , typename StorageIndex , bool Vectorizable>
EIGEN_DEVICE_FUNC Eigen::TensorSycl::internal::GeneralScalarContraction< OutScalar, LhsScalar, RhsScalar, OutAccessor, LhsMapper, RhsMapper, StorageIndex, Vectorizable >::GeneralScalarContraction ( Scratch  scratch_,
const LhsMapper  lhs_,
const RhsMapper  rhs_,
OutAccessor  out_res_,
const StorageIndex  rng_ 
)
inline

Definition at line 1250 of file TensorContractionSycl.h.

Member Function Documentation

◆ operator()()

template<typename OutScalar , typename LhsScalar , typename RhsScalar , typename OutAccessor , typename LhsMapper , typename RhsMapper , typename StorageIndex , bool Vectorizable>
EIGEN_DEVICE_FUNC void Eigen::TensorSycl::internal::GeneralScalarContraction< OutScalar, LhsScalar, RhsScalar, OutAccessor, LhsMapper, RhsMapper, StorageIndex, Vectorizable >::operator() ( cl::sycl::nd_item< 1 >  itemID)
inline

Definition at line 1254 of file TensorContractionSycl.h.

Member Data Documentation

◆ lhs

template<typename OutScalar , typename LhsScalar , typename RhsScalar , typename OutAccessor , typename LhsMapper , typename RhsMapper , typename StorageIndex , bool Vectorizable>
const LhsMapper Eigen::TensorSycl::internal::GeneralScalarContraction< OutScalar, LhsScalar, RhsScalar, OutAccessor, LhsMapper, RhsMapper, StorageIndex, Vectorizable >::lhs

Definition at line 1244 of file TensorContractionSycl.h.

◆ out_res

template<typename OutScalar , typename LhsScalar , typename RhsScalar , typename OutAccessor , typename LhsMapper , typename RhsMapper , typename StorageIndex , bool Vectorizable>
OutAccessor Eigen::TensorSycl::internal::GeneralScalarContraction< OutScalar, LhsScalar, RhsScalar, OutAccessor, LhsMapper, RhsMapper, StorageIndex, Vectorizable >::out_res

Definition at line 1246 of file TensorContractionSycl.h.

◆ rhs

template<typename OutScalar , typename LhsScalar , typename RhsScalar , typename OutAccessor , typename LhsMapper , typename RhsMapper , typename StorageIndex , bool Vectorizable>
const RhsMapper Eigen::TensorSycl::internal::GeneralScalarContraction< OutScalar, LhsScalar, RhsScalar, OutAccessor, LhsMapper, RhsMapper, StorageIndex, Vectorizable >::rhs

Definition at line 1245 of file TensorContractionSycl.h.

◆ rng

template<typename OutScalar , typename LhsScalar , typename RhsScalar , typename OutAccessor , typename LhsMapper , typename RhsMapper , typename StorageIndex , bool Vectorizable>
const StorageIndex Eigen::TensorSycl::internal::GeneralScalarContraction< OutScalar, LhsScalar, RhsScalar, OutAccessor, LhsMapper, RhsMapper, StorageIndex, Vectorizable >::rng

Definition at line 1247 of file TensorContractionSycl.h.

◆ scratch

template<typename OutScalar , typename LhsScalar , typename RhsScalar , typename OutAccessor , typename LhsMapper , typename RhsMapper , typename StorageIndex , bool Vectorizable>
Scratch Eigen::TensorSycl::internal::GeneralScalarContraction< OutScalar, LhsScalar, RhsScalar, OutAccessor, LhsMapper, RhsMapper, StorageIndex, Vectorizable >::scratch

Definition at line 1243 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:11