Cutlass
CUDA Templates for Linear Algebra Subroutines and Solvers
Classes | Public Types | Public Member Functions | Public Attributes | List of all members
cutlass::gemm::GlobalStoreStream< Iterator_, Transformer_ > Struct Template Reference

#include <gemm_global_stream.h>

Classes

struct  Params
 The params. More...
 

Public Types

typedef Iterator_ Iterator
 The store iterator. More...
 
typedef Transformer_ Transformer
 The transformer. More...
 
typedef Transformer::InputFragment InputFragment
 The input fragment. More...
 
typedef Transformer::OutputFragment TransformedFragment
 The fragment that is obtained after the transformation by the transformer. More...
 
typedef InputFragment Fragment
 Make sure the fragments match. More...
 
typedef Iterator::Scalar Scalar
 The scalar type of the iterator. More...
 
typedef Iterator::Pointer Pointer
 The pointer. More...
 
typedef Iterator::Index Index
 The index. More...
 
typedef Iterator::SharedStorage SharedStorage
 The storage in shared memory needed by that stream. More...
 

Public Member Functions

CUTLASS_DEVICE GlobalStoreStream (Params const &params, SharedStorage &shared_storage, Index m, Index n, Index k, Coord< 3 > const &block)
 Ctor. More...
 
CUTLASS_DEVICE void copy ()
 Trigger the copy from the fragment to shared memory. More...
 
CUTLASS_DEVICE void commit ()
 Commit the data. More...
 
CUTLASS_DEVICE void inc (Index predicate_inc, Index pointer_inc)
 Increment the iterator. More...
 
CUTLASS_DEVICE Fragmentfragment ()
 The fragment. More...
 

Public Attributes

Iterator iterator
 The iterator. More...
 
InputFragment input_fragment
 The input fragment. More...
 
Transformer transformer
 The transformer. More...
 
TransformedFragment transformed_fragment
 The fragment containing the transformed data before the copy into shared memory. More...
 

Member Typedef Documentation

◆ Fragment

template<typename Iterator_ , typename Transformer_ = Copy<typename Iterator_::Fragment>>
typedef InputFragment cutlass::gemm::GlobalStoreStream< Iterator_, Transformer_ >::Fragment

The input fragment.

◆ Index

template<typename Iterator_ , typename Transformer_ = Copy<typename Iterator_::Fragment>>
typedef Iterator::Index cutlass::gemm::GlobalStoreStream< Iterator_, Transformer_ >::Index

◆ InputFragment

template<typename Iterator_ , typename Transformer_ = Copy<typename Iterator_::Fragment>>
typedef Transformer::InputFragment cutlass::gemm::GlobalStoreStream< Iterator_, Transformer_ >::InputFragment

◆ Iterator

template<typename Iterator_ , typename Transformer_ = Copy<typename Iterator_::Fragment>>
typedef Iterator_ cutlass::gemm::GlobalStoreStream< Iterator_, Transformer_ >::Iterator

◆ Pointer

template<typename Iterator_ , typename Transformer_ = Copy<typename Iterator_::Fragment>>
typedef Iterator::Pointer cutlass::gemm::GlobalStoreStream< Iterator_, Transformer_ >::Pointer

◆ Scalar

template<typename Iterator_ , typename Transformer_ = Copy<typename Iterator_::Fragment>>
typedef Iterator::Scalar cutlass::gemm::GlobalStoreStream< Iterator_, Transformer_ >::Scalar

◆ SharedStorage

template<typename Iterator_ , typename Transformer_ = Copy<typename Iterator_::Fragment>>
typedef Iterator::SharedStorage cutlass::gemm::GlobalStoreStream< Iterator_, Transformer_ >::SharedStorage

◆ TransformedFragment

template<typename Iterator_ , typename Transformer_ = Copy<typename Iterator_::Fragment>>
typedef Transformer::OutputFragment cutlass::gemm::GlobalStoreStream< Iterator_, Transformer_ >::TransformedFragment

◆ Transformer

template<typename Iterator_ , typename Transformer_ = Copy<typename Iterator_::Fragment>>
typedef Transformer_ cutlass::gemm::GlobalStoreStream< Iterator_, Transformer_ >::Transformer

Constructor & Destructor Documentation

◆ GlobalStoreStream()

template<typename Iterator_ , typename Transformer_ = Copy<typename Iterator_::Fragment>>
CUTLASS_DEVICE cutlass::gemm::GlobalStoreStream< Iterator_, Transformer_ >::GlobalStoreStream ( Params const &  params,
SharedStorage shared_storage,
Index  m,
Index  n,
Index  k,
Coord< 3 > const &  block 
)
inline

Member Function Documentation

◆ commit()

template<typename Iterator_ , typename Transformer_ = Copy<typename Iterator_::Fragment>>
CUTLASS_DEVICE void cutlass::gemm::GlobalStoreStream< Iterator_, Transformer_ >::commit ( )
inline

◆ copy()

template<typename Iterator_ , typename Transformer_ = Copy<typename Iterator_::Fragment>>
CUTLASS_DEVICE void cutlass::gemm::GlobalStoreStream< Iterator_, Transformer_ >::copy ( )
inline

◆ fragment()

template<typename Iterator_ , typename Transformer_ = Copy<typename Iterator_::Fragment>>
CUTLASS_DEVICE Fragment& cutlass::gemm::GlobalStoreStream< Iterator_, Transformer_ >::fragment ( )
inline

◆ inc()

template<typename Iterator_ , typename Transformer_ = Copy<typename Iterator_::Fragment>>
CUTLASS_DEVICE void cutlass::gemm::GlobalStoreStream< Iterator_, Transformer_ >::inc ( Index  predicate_inc,
Index  pointer_inc 
)
inline

Member Data Documentation

◆ input_fragment

template<typename Iterator_ , typename Transformer_ = Copy<typename Iterator_::Fragment>>
InputFragment cutlass::gemm::GlobalStoreStream< Iterator_, Transformer_ >::input_fragment

◆ iterator

template<typename Iterator_ , typename Transformer_ = Copy<typename Iterator_::Fragment>>
Iterator cutlass::gemm::GlobalStoreStream< Iterator_, Transformer_ >::iterator

◆ transformed_fragment

template<typename Iterator_ , typename Transformer_ = Copy<typename Iterator_::Fragment>>
TransformedFragment cutlass::gemm::GlobalStoreStream< Iterator_, Transformer_ >::transformed_fragment

◆ transformer

template<typename Iterator_ , typename Transformer_ = Copy<typename Iterator_::Fragment>>
Transformer cutlass::gemm::GlobalStoreStream< Iterator_, Transformer_ >::transformer

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