![]() |
CUTLASS
CUDA Templates for Linear Algebra Subroutines and Solvers
|
Template for reading and writing tiles of accumulators to shared memory.
#include <tile_iterator_wmma_tensor_op.h>
Public Types | |
| using | WarpShape = WarpShape_ |
| using | OperatorShape = OperatorShape_ |
| using | OperatorFragment = OperatorFragment_ |
| using | Layout = layout::RowMajor |
| using | WmmaDataType = typename OperatorFragment::element_type |
| using | Element = typename cutlass::arch::WmmaToCutlassDataType< WmmaDataType >::Type |
| Data Type of element stored in nvcuda::wmma::frament. More... | |
| using | TensorRef = TensorRef< Element, Layout > |
| Tensor Reference object. More... | |
| using | TensorCoord = MatrixCoord |
| Logical coordinate in referenced tensor. More... | |
| using | Index = typename TensorRef::Index |
| using | LongIndex = typename TensorRef::LongIndex |
| using | Policy = WmmaTensorOpPolicy< WarpShape, OperatorShape, Layout > |
| using | Shape = MatrixShape< Policy::kRowsPerIteration, WarpShape::kN > |
| Shape of the tile in memory. More... | |
| using | Fragment = WmmaFragmentArray< OperatorFragment, Policy::OperatorCount::kColumn *Policy::kWmmaFragmentsPerAccess > |
| This is the fragment size produced by one access of the iterator. More... | |
| using | Padding = MatrixShape< 0, 4 *Policy::kElementsPerAccess > |
| This is the complete warp-level accumulator tile. More... | |
Public Member Functions | |
| CUTLASS_HOST_DEVICE | TileIteratorWmmaTensorOp () |
| Default constructor. More... | |
| CUTLASS_HOST_DEVICE | TileIteratorWmmaTensorOp (TensorRef const &ref, unsigned lane_id) |
| Constructor from TensorRef. More... | |
| CUTLASS_HOST_DEVICE TileIteratorWmmaTensorOp & | add_pointer_offset (Index pointer_offset) |
| Adds a pointer offset. More... | |
| CUTLASS_HOST_DEVICE TileIteratorWmmaTensorOp & | add_tile_offset (TensorCoord const &tile_offset) |
| advances in units of whole tiles along the logical coordinate space of the tensor More... | |
| CUTLASS_HOST_DEVICE TileIteratorWmmaTensorOp & | operator+= (TensorCoord const &tile_offset) |
| CUTLASS_HOST_DEVICE void | store_with_pointer_offset (Fragment const &frag, Index pointer_offset) |
| Store. More... | |
| CUTLASS_HOST_DEVICE void | store (Fragment const &frag) |
| Store. More... | |
| CUTLASS_HOST_DEVICE void | load_with_pointer_offset (Fragment &frag, Index pointer_offset) const |
| Load. More... | |
| CUTLASS_HOST_DEVICE void | load (Fragment &frag) const |
| Load. More... | |
| using cutlass::epilogue::warp::TileIteratorWmmaTensorOp< WarpShape_, OperatorShape_, OperatorFragment_, layout::RowMajor >::Element = typename cutlass::arch::WmmaToCutlassDataType<WmmaDataType>::Type |
| using cutlass::epilogue::warp::TileIteratorWmmaTensorOp< WarpShape_, OperatorShape_, OperatorFragment_, layout::RowMajor >::Fragment = WmmaFragmentArray<OperatorFragment, Policy::OperatorCount::kColumn * Policy::kWmmaFragmentsPerAccess> |
| using cutlass::epilogue::warp::TileIteratorWmmaTensorOp< WarpShape_, OperatorShape_, OperatorFragment_, layout::RowMajor >::Index = typename TensorRef::Index |
| using cutlass::epilogue::warp::TileIteratorWmmaTensorOp< WarpShape_, OperatorShape_, OperatorFragment_, layout::RowMajor >::Layout = layout::RowMajor |
| using cutlass::epilogue::warp::TileIteratorWmmaTensorOp< WarpShape_, OperatorShape_, OperatorFragment_, layout::RowMajor >::LongIndex = typename TensorRef::LongIndex |
| using cutlass::epilogue::warp::TileIteratorWmmaTensorOp< WarpShape_, OperatorShape_, OperatorFragment_, layout::RowMajor >::OperatorFragment = OperatorFragment_ |
| using cutlass::epilogue::warp::TileIteratorWmmaTensorOp< WarpShape_, OperatorShape_, OperatorFragment_, layout::RowMajor >::OperatorShape = OperatorShape_ |
| using cutlass::epilogue::warp::TileIteratorWmmaTensorOp< WarpShape_, OperatorShape_, OperatorFragment_, layout::RowMajor >::Padding = MatrixShape< 0, 4 * Policy::kElementsPerAccess > |
Padding quantity
| using cutlass::epilogue::warp::TileIteratorWmmaTensorOp< WarpShape_, OperatorShape_, OperatorFragment_, layout::RowMajor >::Policy = WmmaTensorOpPolicy<WarpShape, OperatorShape, Layout> |
| using cutlass::epilogue::warp::TileIteratorWmmaTensorOp< WarpShape_, OperatorShape_, OperatorFragment_, layout::RowMajor >::Shape = MatrixShape< Policy::kRowsPerIteration, WarpShape::kN > |
| using cutlass::epilogue::warp::TileIteratorWmmaTensorOp< WarpShape_, OperatorShape_, OperatorFragment_, layout::RowMajor >::TensorCoord = MatrixCoord |
| using cutlass::epilogue::warp::TileIteratorWmmaTensorOp< WarpShape_, OperatorShape_, OperatorFragment_, layout::RowMajor >::TensorRef = TensorRef<Element, Layout> |
| using cutlass::epilogue::warp::TileIteratorWmmaTensorOp< WarpShape_, OperatorShape_, OperatorFragment_, layout::RowMajor >::WarpShape = WarpShape_ |
| using cutlass::epilogue::warp::TileIteratorWmmaTensorOp< WarpShape_, OperatorShape_, OperatorFragment_, layout::RowMajor >::WmmaDataType = typename OperatorFragment::element_type |
|
inline |
|
inline |
|
inline |
advances in units of whole tiles along the logical coordinate space of the tensor
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
1.8.11