Eigen-unsupported  5.0.1-dev+284dcc12
 
Loading...
Searching...
No Matches
Eigen::TensorSycl::internal::ThreadProperties< StorageIndex > Struct Template Reference

#include <unsupported/Eigen/CXX11/src/Tensor/TensorContractionSycl.h>

Detailed Description

template<typename StorageIndex>
struct Eigen::TensorSycl::internal::ThreadProperties< StorageIndex >

ThreadProperties is a template class that provides each thread's properties within a workgroup. Please see the sycl-1.2.1 specification (https://www.khronos.org/registry/SYCL/specs/sycl-1.2.1.pdf) for the workgroup, work-items.

Template Parameters
StorageIndexdetermines the StorageIndex Type
Parameters
linearLocalThreadIddetermines the linearized location of a thread within a work-group
kGroupIddetermines the logical group id in a k dimension of the flattened tensor. It will be > 1 when tall/skinny algorithm is used
mGroupOffsetdetermines the logical start position of all thread within a workgroup for the m dimension of the flattened tensor.
kGroupOffsetdetermines the logical start position of all thread within a workgroup for the k dimension of the flattened tensor. It will be > 1 when tall/skinny algorithm is used.
mLocalOffsetdetermines the logical start position of each thread within a workgroup for the m dimension of a flattened tensor. The position determines the distance of each thread within the workgroup from each other independent from their global position.
nLocalOffsetdetermines the logical start position of each thread within a workgroup for the n dimension of a flattened tensor. The position determines the distance of each thread within the workgroup from each other independent from their global position.
mGlobalOffsetdetermines the logical start position of each thread a thread for the m dimension on a flattened tensor
nGlobalOffsetdetermines the logical start position of each thread a thread for the n dimension on a flattened tensor
kSize: determine the number of the k elements of the flattened Tensor to be processed by each thread for the given tensor block. This is !=K dimension of Flattened Tensor when Tall/Skinny matrix is used.
is_internal: this will determined if the thread within the work-group computes an internal block of tensor or the edge blocks. When it is internal, there is no need to check the boundaries and all the if stantement can be resolve by compiler.

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