CUTLASS
CUDA Templates for Linear Algebra Subroutines and Solvers
|
Partial specialization for row-major shared memory.
#include <fragment_iterator_volta_tensor_op.h>
Public Types | |
using | WarpShape = WarpShape_ |
using | InterleavedTileShape = gemm::GemmShape< 32, 32, 4 > |
using | ElementC = half_t |
using | Layout = layout::RowMajor |
using | Policy = VoltaTensorOpPolicy< WarpShape, InterleavedTileShape, ElementC, Layout > |
Policy operator. More... | |
using | AccessType = typename Policy::AccessType |
Array type for aligned memory accesses. More... | |
using | Fragment = typename Policy::Fragment |
This is the fragment size produced by one access of the iterator. More... | |
using | AccumulatorTile = typename Policy::AccumulatorTile |
This is the complete warp-level accumulator tile. More... | |
using | OutputAccumulatorTile = AccumulatorTile |
Public Member Functions | |
CUTLASS_HOST_DEVICE | FragmentIteratorVoltaTensorOp (AccumulatorTile const &accum) |
Constructs an iterator. More... | |
CUTLASS_HOST_DEVICE FragmentIteratorVoltaTensorOp & | operator++ () |
Increments. More... | |
CUTLASS_HOST_DEVICE FragmentIteratorVoltaTensorOp & | operator-- () |
Decrements. More... | |
CUTLASS_HOST_DEVICE void | load (Fragment &frag, int index_offset=0) const |
Loads a fragment from the referenced part of the accumulator tile. More... | |
Static Public Attributes | |
static int const | kIterations = Policy::kIterations |
Number of times this iterator can be incremented. More... | |
using cutlass::epilogue::warp::FragmentIteratorVoltaTensorOp< WarpShape_, gemm::GemmShape< 32, 32, 4 >, half_t, layout::RowMajor >::AccessType = typename Policy::AccessType |
using cutlass::epilogue::warp::FragmentIteratorVoltaTensorOp< WarpShape_, gemm::GemmShape< 32, 32, 4 >, half_t, layout::RowMajor >::AccumulatorTile = typename Policy::AccumulatorTile |
using cutlass::epilogue::warp::FragmentIteratorVoltaTensorOp< WarpShape_, gemm::GemmShape< 32, 32, 4 >, half_t, layout::RowMajor >::ElementC = half_t |
using cutlass::epilogue::warp::FragmentIteratorVoltaTensorOp< WarpShape_, gemm::GemmShape< 32, 32, 4 >, half_t, layout::RowMajor >::Fragment = typename Policy::Fragment |
using cutlass::epilogue::warp::FragmentIteratorVoltaTensorOp< WarpShape_, gemm::GemmShape< 32, 32, 4 >, half_t, layout::RowMajor >::InterleavedTileShape = gemm::GemmShape<32, 32, 4> |
using cutlass::epilogue::warp::FragmentIteratorVoltaTensorOp< WarpShape_, gemm::GemmShape< 32, 32, 4 >, half_t, layout::RowMajor >::Layout = layout::RowMajor |
using cutlass::epilogue::warp::FragmentIteratorVoltaTensorOp< WarpShape_, gemm::GemmShape< 32, 32, 4 >, half_t, layout::RowMajor >::OutputAccumulatorTile = AccumulatorTile |
using cutlass::epilogue::warp::FragmentIteratorVoltaTensorOp< WarpShape_, gemm::GemmShape< 32, 32, 4 >, half_t, layout::RowMajor >::Policy = VoltaTensorOpPolicy<WarpShape, InterleavedTileShape, ElementC, Layout> |
using cutlass::epilogue::warp::FragmentIteratorVoltaTensorOp< WarpShape_, gemm::GemmShape< 32, 32, 4 >, half_t, layout::RowMajor >::WarpShape = WarpShape_ |
|
inline |
|
inline |
|
inline |
|
inline |
|
static |