#include <default_gemv.h>
|
using | ThreadBlockShape = ThreadBlockShape_ |
| Shape of Threadblock-level matrix operation (concept: GemmShape) More...
|
|
using | ThreadShape = ThreadShape_ |
| Shape of warp-level matrix operation (concept: GemmShape) More...
|
|
using | ElementA = ElementA_ |
| Data type of multiplicand A. More...
|
|
using | LayoutA = LayoutA_ |
| Layout of multiplicand A. More...
|
|
using | ElementB = ElementB_ |
| Data type of multiplicand B. More...
|
|
using | LayoutB = LayoutB_ |
| Layout of multiplicand B. More...
|
|
using | ElementAccumulator = ElementAccumulator_ |
| Data type of accumulators. More...
|
|
using | LayoutAccumulator = LayoutCD_ |
| Data type of accumulators (same as C/D) More...
|
|
using | ElementCD = ElementCD_ |
| Data type of input/output matrix C/D. More...
|
|
using | LayoutCD = LayoutCD_ |
| Layout of input/output matrix C/D. More...
|
|
using | Core = typename cutlass::gemm::threadblock::DefaultGemvCore< ThreadBlockShape, ThreadShape, ElementA, LayoutA, ElementB, LayoutB, ElementAccumulator, LayoutAccumulator > |
|
using | ThreadBlockGemv = cutlass::gemm::threadblock::Gemv< Core > |
|
using | IteratorA = typename ThreadBlockGemv::IteratorA |
|
using | IteratorB = typename ThreadBlockGemv::IteratorB |
|
using | IteratorPolicyCD = typename platform::conditional< platform::is_same< LayoutCD, layout::RowMajor >::value, cutlass::transform::PitchLinearTilePolicyStripminedThreadContiguous< layout::PitchLinearShape< ThreadBlockShape::kN, ThreadBlockShape::kM >, Core::kThreadsPerN, ThreadShape::kN >, cutlass::transform::PitchLinearTilePolicyStripminedThreadStrided< layout::PitchLinearShape< ThreadBlockShape::kM, ThreadBlockShape::kN >, Core::kThreadsPerN, ThreadShape::kM >>::type |
| Policy for the iterator that reads/writes C/D. More...
|
|
using | IteratorCD = cutlass::transform::threadblock::PredicatedTileIterator< cutlass::MatrixShape< ThreadBlockShape::kM, ThreadBlockShape::kN >, ElementCD, LayoutCD, 0, IteratorPolicyCD > |
| Iterator that reads/writes C/D. More...
|
|
using | FragmentCD = typename IteratorCD::Fragment |
| Fragment storage for C/D. More...
|
|
using | ThreadBlockSwizzle = cutlass::gemm::threadblock::GemvBatchedStridedThreadblockDefaultSwizzle |
|
template<typename ThreadBlockShape_ , typename ThreadShape_ , typename ElementA_ , typename LayoutA_ , typename ElementB_ , typename LayoutB_ , typename ElementCD_ , typename LayoutCD_ , typename ElementAccumulator_ = ElementCD_>
using cutlass::gemm::kernel::DefaultGemv< ThreadBlockShape_, ThreadShape_, ElementA_, LayoutA_, ElementB_, LayoutB_, ElementCD_, LayoutCD_, ElementAccumulator_ >::Core = typename cutlass::gemm::threadblock::DefaultGemvCore< ThreadBlockShape, ThreadShape, ElementA, LayoutA, ElementB, LayoutB, ElementAccumulator, LayoutAccumulator> |
template<typename ThreadBlockShape_ , typename ThreadShape_ , typename ElementA_ , typename LayoutA_ , typename ElementB_ , typename LayoutB_ , typename ElementCD_ , typename LayoutCD_ , typename ElementAccumulator_ = ElementCD_>
template<typename ThreadBlockShape_ , typename ThreadShape_ , typename ElementA_ , typename LayoutA_ , typename ElementB_ , typename LayoutB_ , typename ElementCD_ , typename LayoutCD_ , typename ElementAccumulator_ = ElementCD_>
template<typename ThreadBlockShape_ , typename ThreadShape_ , typename ElementA_ , typename LayoutA_ , typename ElementB_ , typename LayoutB_ , typename ElementCD_ , typename LayoutCD_ , typename ElementAccumulator_ = ElementCD_>
template<typename ThreadBlockShape_ , typename ThreadShape_ , typename ElementA_ , typename LayoutA_ , typename ElementB_ , typename LayoutB_ , typename ElementCD_ , typename LayoutCD_ , typename ElementAccumulator_ = ElementCD_>
template<typename ThreadBlockShape_ , typename ThreadShape_ , typename ElementA_ , typename LayoutA_ , typename ElementB_ , typename LayoutB_ , typename ElementCD_ , typename LayoutCD_ , typename ElementAccumulator_ = ElementCD_>
template<typename ThreadBlockShape_ , typename ThreadShape_ , typename ElementA_ , typename LayoutA_ , typename ElementB_ , typename LayoutB_ , typename ElementCD_ , typename LayoutCD_ , typename ElementAccumulator_ = ElementCD_>
template<typename ThreadBlockShape_ , typename ThreadShape_ , typename ElementA_ , typename LayoutA_ , typename ElementB_ , typename LayoutB_ , typename ElementCD_ , typename LayoutCD_ , typename ElementAccumulator_ = ElementCD_>
template<typename ThreadBlockShape_ , typename ThreadShape_ , typename ElementA_ , typename LayoutA_ , typename ElementB_ , typename LayoutB_ , typename ElementCD_ , typename LayoutCD_ , typename ElementAccumulator_ = ElementCD_>
using cutlass::gemm::kernel::DefaultGemv< ThreadBlockShape_, ThreadShape_, ElementA_, LayoutA_, ElementB_, LayoutB_, ElementCD_, LayoutCD_, ElementAccumulator_ >::IteratorCD = cutlass::transform::threadblock::PredicatedTileIterator< cutlass::MatrixShape<ThreadBlockShape::kM, ThreadBlockShape::kN>, ElementCD, LayoutCD, 0, IteratorPolicyCD> |
template<typename ThreadBlockShape_ , typename ThreadShape_ , typename ElementA_ , typename LayoutA_ , typename ElementB_ , typename LayoutB_ , typename ElementCD_ , typename LayoutCD_ , typename ElementAccumulator_ = ElementCD_>
using cutlass::gemm::kernel::DefaultGemv< ThreadBlockShape_, ThreadShape_, ElementA_, LayoutA_, ElementB_, LayoutB_, ElementCD_, LayoutCD_, ElementAccumulator_ >::IteratorPolicyCD = typename platform::conditional< platform::is_same<LayoutCD, layout::RowMajor>::value, cutlass::transform::PitchLinearTilePolicyStripminedThreadContiguous< layout::PitchLinearShape<ThreadBlockShape::kN, ThreadBlockShape::kM>, Core::kThreadsPerN, ThreadShape::kN>, cutlass::transform::PitchLinearTilePolicyStripminedThreadStrided< layout::PitchLinearShape<ThreadBlockShape::kM, ThreadBlockShape::kN>, Core::kThreadsPerN, ThreadShape::kM>>::type |
template<typename ThreadBlockShape_ , typename ThreadShape_ , typename ElementA_ , typename LayoutA_ , typename ElementB_ , typename LayoutB_ , typename ElementCD_ , typename LayoutCD_ , typename ElementAccumulator_ = ElementCD_>
template<typename ThreadBlockShape_ , typename ThreadShape_ , typename ElementA_ , typename LayoutA_ , typename ElementB_ , typename LayoutB_ , typename ElementCD_ , typename LayoutCD_ , typename ElementAccumulator_ = ElementCD_>
template<typename ThreadBlockShape_ , typename ThreadShape_ , typename ElementA_ , typename LayoutA_ , typename ElementB_ , typename LayoutB_ , typename ElementCD_ , typename LayoutCD_ , typename ElementAccumulator_ = ElementCD_>
template<typename ThreadBlockShape_ , typename ThreadShape_ , typename ElementA_ , typename LayoutA_ , typename ElementB_ , typename LayoutB_ , typename ElementCD_ , typename LayoutCD_ , typename ElementAccumulator_ = ElementCD_>
template<typename ThreadBlockShape_ , typename ThreadShape_ , typename ElementA_ , typename LayoutA_ , typename ElementB_ , typename LayoutB_ , typename ElementCD_ , typename LayoutCD_ , typename ElementAccumulator_ = ElementCD_>
template<typename ThreadBlockShape_ , typename ThreadShape_ , typename ElementA_ , typename LayoutA_ , typename ElementB_ , typename LayoutB_ , typename ElementCD_ , typename LayoutCD_ , typename ElementAccumulator_ = ElementCD_>
template<typename ThreadBlockShape_ , typename ThreadShape_ , typename ElementA_ , typename LayoutA_ , typename ElementB_ , typename LayoutB_ , typename ElementCD_ , typename LayoutCD_ , typename ElementAccumulator_ = ElementCD_>
template<typename ThreadBlockShape_ , typename ThreadShape_ , typename ElementA_ , typename LayoutA_ , typename ElementB_ , typename LayoutB_ , typename ElementCD_ , typename LayoutCD_ , typename ElementAccumulator_ = ElementCD_>
The documentation for this struct was generated from the following file: