CUTLASS
CUDA Templates for Linear Algebra Subroutines and Solvers
Public Types | Public Member Functions | List of all members
cutlass::gemm::threadblock::Gemv< Core_ > Class Template Reference

Structure to compute the matrix-vector product using SIMT math instructions.

#include <gemv.h>

Public Types

using Shape = typename Core_::Shape
 
using Operator = typename Core_::Operator
 The MMA operator that computes GEMV. More...
 
using IteratorA = typename Core_::IteratorA
 Iterates over A in global memory. More...
 
using IteratorB = typename Core_::IteratorB
 Iterates over B in global memory. More...
 
using IteratorC = typename Core_::IteratorC
 Fragment of operand C loaded from global memory. More...
 
using FragmentA = typename IteratorA::Fragment
 Fragment of operand A loaded from global memory. More...
 
using FragmentB = typename IteratorB::Fragment
 Fragment of operand B loaded from global memory. More...
 
using FragmentC = typename Operator::FragmentC
 Fragment of operand accumulator loaded/stored to global memory. More...
 
using ThreadShape = typename Core_::ThreadShape
 Shape of the per-thread GEMV operation. More...
 

Public Member Functions

CUTLASS_DEVICE Gemv ()
 
CUTLASS_DEVICE void operator() (GemmCoord const &problem_size, FragmentC &accum, IteratorA iterator_A, IteratorB iterator_B, FragmentC const &src_accum)
 

Member Typedef Documentation

template<class Core_ >
using cutlass::gemm::threadblock::Gemv< Core_ >::FragmentA = typename IteratorA::Fragment
template<class Core_ >
using cutlass::gemm::threadblock::Gemv< Core_ >::FragmentB = typename IteratorB::Fragment
template<class Core_ >
using cutlass::gemm::threadblock::Gemv< Core_ >::FragmentC = typename Operator::FragmentC
template<class Core_ >
using cutlass::gemm::threadblock::Gemv< Core_ >::IteratorA = typename Core_::IteratorA
template<class Core_ >
using cutlass::gemm::threadblock::Gemv< Core_ >::IteratorB = typename Core_::IteratorB
template<class Core_ >
using cutlass::gemm::threadblock::Gemv< Core_ >::IteratorC = typename Core_::IteratorC
template<class Core_ >
using cutlass::gemm::threadblock::Gemv< Core_ >::Operator = typename Core_::Operator
template<class Core_ >
using cutlass::gemm::threadblock::Gemv< Core_ >::Shape = typename Core_::Shape
template<class Core_ >
using cutlass::gemm::threadblock::Gemv< Core_ >::ThreadShape = typename Core_::ThreadShape

Constructor & Destructor Documentation

template<class Core_ >
CUTLASS_DEVICE cutlass::gemm::threadblock::Gemv< Core_ >::Gemv ( )
inline

Member Function Documentation

template<class Core_ >
CUTLASS_DEVICE void cutlass::gemm::threadblock::Gemv< Core_ >::operator() ( GemmCoord const &  problem_size,
FragmentC accum,
IteratorA  iterator_A,
IteratorB  iterator_B,
FragmentC const &  src_accum 
)
inline

< source accumualtor tile

Parameters
problem_sizeproblem size of batched GEMV
accumdestination accumulator tile
iterator_Aiterator over A operand in global memory
iterator_Biterator over B operand in global memory

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