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>
|
typedef cl::sycl::accessor< OutScalar, 1, cl::sycl::access::mode::read_write, cl::sycl::access::target::local > | Scratch |
|
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
-
OutScalar | determines the output scalar type |
LhsScalar | determines the left-hand-side scalar type |
RhsScalar | determines the right-hand-side scalar type |
OutAccessor | determines 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) |
LhsMapper | determines the tensor contraction mapper type for left-hand-side matrix |
RhsMapper | determines the tensor contraction mapper type for right-hand-side matrix |
StorageIndex | determines the StorageIndex Type |
Vectorizable | determines whether or not the vectorization is enabled for the Eigen expression. |
- Parameters
-
scratch | local memory containing tiles of LHS and RHS tensors for each work-group |
lhs | determines the left-hand-side flattened tensor (tensor mapper) |
rhs | determines the right-hand-side flattened tensor (tensor mapper) |
out_res | determines the output tensor containing the contraction result |
rng | determins the total input data size |
Definition at line 1241 of file TensorContractionSycl.h.
◆ 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 |
◆ 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 |
◆ operator()()
template<typename OutScalar , typename LhsScalar , typename RhsScalar , typename OutAccessor , typename LhsMapper , typename RhsMapper , typename StorageIndex , bool Vectorizable>
◆ lhs
template<typename OutScalar , typename LhsScalar , typename RhsScalar , typename OutAccessor , typename LhsMapper , typename RhsMapper , typename StorageIndex , bool Vectorizable>
◆ out_res
template<typename OutScalar , typename LhsScalar , typename RhsScalar , typename OutAccessor , typename LhsMapper , typename RhsMapper , typename StorageIndex , bool Vectorizable>
◆ rhs
template<typename OutScalar , typename LhsScalar , typename RhsScalar , typename OutAccessor , typename LhsMapper , typename RhsMapper , typename StorageIndex , bool Vectorizable>
◆ rng
template<typename OutScalar , typename LhsScalar , typename RhsScalar , typename OutAccessor , typename LhsMapper , typename RhsMapper , typename StorageIndex , bool Vectorizable>
◆ scratch
template<typename OutScalar , typename LhsScalar , typename RhsScalar , typename OutAccessor , typename LhsMapper , typename RhsMapper , typename StorageIndex , bool Vectorizable>
The documentation for this struct was generated from the following file: