|
typedef TensorRef< Storage_, Rank_, MapFunc_, StorageRank_, Index_, LongIndex_ > | Base |
| Underlying TensorRef type. More...
|
|
typedef Base::Storage | Storage |
| Storage type. More...
|
|
typedef Index_ | Index |
| Index type. More...
|
|
typedef LongIndex_ | LongIndex |
| Typically, strides in memory can be very large. More...
|
|
typedef Coord< kRank > | TensorCoord |
| Coordinate in logical tensor space. More...
|
|
typedef Base | TensorRef |
| Tensor reference implied by the TensorRefBatchStrided. More...
|
|
typedef Storage_ | Storage |
| Data type of individual access. More...
|
|
typedef MapFunc_ | MapFunc |
| Mapping function from logical coordinate to internal n-D array. More...
|
|
typedef Index_ | Index |
| Index type. More...
|
|
typedef LongIndex_ | LongIndex |
| Typically, strides in memory can be very large. More...
|
|
typedef Coord< kRank > | TensorCoord |
| Coordinate in logical tensor space. More...
|
|
typedef Coord< kStorageRank > | StorageCoord |
| Coordinate in storage n-D array. More...
|
|
typedef Coord< kStorageRank - 1 > | StrideVector |
|
typedef TensorRef< typename platform::remove_const< Storage >::type const, Rank_, MapFunc_, StorageRank_, Index_, LongIndex_ > | ConstTensorRef |
| Tensor reference to of constant value. More...
|
|
typedef TensorCoord | Coord_t |
| Coordinate in logical tensor space. More...
|
|
|
CUTLASS_HOST_DEVICE | TensorRefBatchStrided () |
|
CUTLASS_HOST_DEVICE | TensorRefBatchStrided (TensorRef const &ref, LongIndex _tensor_stride=0) |
|
CUTLASS_HOST_DEVICE LongIndex | get_pointer_offset (Index idx) const |
| Gets the pointer offset. More...
|
|
CUTLASS_HOST_DEVICE TensorRef | at (Index idx=0) const |
|
CUTLASS_HOST_DEVICE ConstIterator | begin () |
| Returns an iterator. More...
|
|
CUTLASS_HOST_DEVICE | TensorRef (Storage *ptr=nullptr) |
| Helper for 1-D memory. All higher ranks are projected onto the fastest changing rank. More...
|
|
CUTLASS_HOST_DEVICE | TensorRef (Storage *ptr, Index ldm) |
| Helper to construct from a pointer and single stride element for 2-D pitch linear memory. More...
|
|
CUTLASS_HOST_DEVICE | TensorRef (Storage *ptr, StrideVector const &stride) |
| Constructs from a single pointer and stride vector. More...
|
|
CUTLASS_HOST_DEVICE | TensorRef (Storage *ptr, StorageCoord const &stride) |
|
CUTLASS_HOST_DEVICE | TensorRef (TensorRef< typename platform::remove_const< Storage >::type, kRank, MapFunc, kStorageRank, Index, LongIndex > const &ref) |
| Enables conversion from TensorRef of non-const type. More...
|
|
CUTLASS_HOST_DEVICE ConstTensorRef | const_ref () const |
| Returns a reference to constant-valued tensor. More...
|
|
CUTLASS_HOST_DEVICE void | reset (Storage *ptr=nullptr) |
| Updates only the pointer. More...
|
|
CUTLASS_HOST_DEVICE void | reset (Storage *ptr, StorageCoord const &stride) |
| Updates the pointer, stride, and location within a TensorRef. More...
|
|
CUTLASS_HOST_DEVICE bool | good () const |
| Returns true if the TensorRef may be safely accessed. More...
|
|
CUTLASS_HOST_DEVICE Storage * | data () const |
| Returns the pointer to referenced data. More...
|
|
CUTLASS_HOST_DEVICE StorageCoord | stride () const |
| Returns the stride of the tensor. More...
|
|
CUTLASS_HOST_DEVICE Index | stride (int dim) const |
| Returns the stride of the tensor in the given dimension. More...
|
|
CUTLASS_HOST_DEVICE Index | leading_dim (int idx=0) const |
| Returns the maximum stride element as the 'leading dimension'. More...
|
|
CUTLASS_HOST_DEVICE StorageCoord | map (TensorCoord const &coord) const |
| Maps a logical coordinate to an n-D array in memory. More...
|
|
CUTLASS_HOST_DEVICE LongIndex | offset (TensorCoord const &coord) const |
| Computes the offset of an index from the origin of the tensor. More...
|
|
CUTLASS_HOST_DEVICE Storage & | at (TensorCoord const &coord) const |
| Returns a reference to the element at a given Coord. More...
|
|
CUTLASS_HOST_DEVICE Storage & | at (LongIndex idx) const |
| Returns a reference to the element at a given linear index. More...
|
|
CUTLASS_HOST_DEVICE Storage & | operator[] (TensorCoord const &coord) const |
| Returns a reference to the element at a given Coord. More...
|
|
CUTLASS_HOST_DEVICE Storage & | operator[] (LongIndex idx) const |
| Returns a reference to the element at a given linear index. More...
|
|
CUTLASS_HOST_DEVICE TensorRef & | add_pointer_offset (LongIndex delta) |
| Adds an offset to each pointer. More...
|
|
CUTLASS_HOST_DEVICE TensorRef | operator+ (TensorCoord const &b) const |
| Returns a TensorRef offset by a given amount. More...
|
|
CUTLASS_HOST_DEVICE TensorRef & | operator+= (TensorCoord const &b) |
| Returns a TensorRef offset by a given amount. More...
|
|
CUTLASS_HOST_DEVICE TensorRef | operator- (TensorCoord const &b) const |
| Returns a TensorRef offset by a given amount. More...
|
|
CUTLASS_HOST_DEVICE TensorRef & | operator-= (TensorCoord const &b) |
| Returns a TensorRef offset by a given amount. More...
|
|
template<typename Storage_, int Rank_, typename MapFunc_ = IdentityTensorMapFunc<Rank_>, int StorageRank_ = MapFunc_::kStorageRank, typename Index_ = int, typename LongIndex_ = long long>
struct cutlass::TensorRefBatchStrided< Storage_, Rank_, MapFunc_, StorageRank_, Index_, LongIndex_ >
This satisfies TensorRefCollection and stores a collection of TensorRef objects that have identical strides. TensorRef objects are separated by a linear stride.