Cutlass
CUDA Templates for Linear Algebra Subroutines and Solvers
Classes | Public Types | List of all members
cutlass::gemm::IgemmGlobalTileTraits< kOperand_, kLayout_, Scalar_, Tile_, Threads_, kAccessSize_ > Struct Template Reference

#include <igemm_global_tile.h>

Inheritance diagram for cutlass::gemm::IgemmGlobalTileTraits< kOperand_, kLayout_, Scalar_, Tile_, Threads_, kAccessSize_ >:
cutlass::gemm::GemmGlobalTileTraits< kOperand_, kLayout_, Scalar_, Tile_, Threads_, kAccessSize_ >

Classes

struct  ThreadOffset
 Computes the thread offset in (H, W) based on thread ID. More...
 

Public Types

typedef GemmGlobalTileTraits< kOperand_, kLayout_, Scalar_, Tile_, Threads_, kAccessSize_ > Base
 The base class. More...
 
typedef Base::Threads Threads
 The threads. More...
 
typedef Shape< Base::Threads::kH *4, 1, Base::Threads::kW, Base::kAccessSizeDelta
 The strides in each dimension between different loads/stores. More...
 
typedef Shape< Base::VectorizedTile::kH/Base::Threads::kH/4, 4, Base::VectorizedTile::kW/Base::Threads::kW, Base::VectorizedTile::kC/Base::kAccessSizeIterations
 The number of iterations needed to load/store the tile. More...
 
typedef Shape< 1, 4, Base::VectorizedTile::kC > ThreadsDelta
 The threads strides. More...
 
- Public Types inherited from cutlass::gemm::GemmGlobalTileTraits< kOperand_, kLayout_, Scalar_, Tile_, Threads_, kAccessSize_ >
typedef platform::remove_const< Scalar_ >::type Scalar
 The scalar. More...
 
typedef Scalar_ * Pointer
 The pointer. More...
 
typedef Tile_ Tile
 The tile shape. More...
 
typedef ReshapeTile< Tile_, kAccessSize_ >::Tile VectorizedTile
 The vectorized tile shape. More...
 
typedef ReshapeThreads< VectorizedTile, Threads_ >::Threads Threads
 The threads shape. More...
 
typedef Shape< 1, 1, VectorizedTile::kC > ThreadsDelta
 The relative offset between two elements in the H/W dimension in adjacent threads. More...
 
typedef Shape< 0, Threads::kH, Threads::kW *kAccessSizeDelta
 The strides in each dimension between different loads/stores. More...
 
typedef Shape< 0, 0, Threads::kW *ThreadsDelta::kW, kAccessSizeImmediateOffsetStrides
 Strides for immediate offset computation. More...
 
typedef Shape< 1, VectorizedTile::kH/Threads::kH, VectorizedTile::kW/Threads::kW, VectorizedTile::kC/kAccessSizeIterations
 The number of iterations needed to load/store the tile. More...
 
typedef GemmMultiplicandTraits< Tile, kOperand, kLayoutMultiplicandTraits
 

Additional Inherited Members

- Static Public Attributes inherited from cutlass::gemm::GemmGlobalTileTraits< kOperand_, kLayout_, Scalar_, Tile_, Threads_, kAccessSize_ >
static GemmOperand::Kind const kOperand = kOperand_
 Identity of the operand. More...
 
static MatrixLayout::Kind const kLayout = kLayout_
 The layout. More...
 
static int const kAccessSize = kAccessSize_
 The number of scalars per LDG/STG. More...
 
static MemorySpace::Kind const kMemorySpace = MemorySpace::kGlobal
 The memory space. More...
 

Member Typedef Documentation

◆ Base

template<GemmOperand::Kind kOperand_, MatrixLayout::Kind kLayout_, typename Scalar_ , typename Tile_ , typename Threads_ , int kAccessSize_>
typedef GemmGlobalTileTraits<kOperand_, kLayout_, Scalar_, Tile_, Threads_, kAccessSize_> cutlass::gemm::IgemmGlobalTileTraits< kOperand_, kLayout_, Scalar_, Tile_, Threads_, kAccessSize_ >::Base

◆ Delta

template<GemmOperand::Kind kOperand_, MatrixLayout::Kind kLayout_, typename Scalar_ , typename Tile_ , typename Threads_ , int kAccessSize_>
typedef Shape<Base::Threads::kH * 4, 1, Base::Threads::kW, Base::kAccessSize> cutlass::gemm::IgemmGlobalTileTraits< kOperand_, kLayout_, Scalar_, Tile_, Threads_, kAccessSize_ >::Delta

◆ Iterations

template<GemmOperand::Kind kOperand_, MatrixLayout::Kind kLayout_, typename Scalar_ , typename Tile_ , typename Threads_ , int kAccessSize_>
typedef Shape<Base::VectorizedTile::kH / Base::Threads::kH / 4, 4, Base::VectorizedTile::kW / Base::Threads::kW, Base::VectorizedTile::kC / Base::kAccessSize> cutlass::gemm::IgemmGlobalTileTraits< kOperand_, kLayout_, Scalar_, Tile_, Threads_, kAccessSize_ >::Iterations

◆ Threads

template<GemmOperand::Kind kOperand_, MatrixLayout::Kind kLayout_, typename Scalar_ , typename Tile_ , typename Threads_ , int kAccessSize_>
typedef Base::Threads cutlass::gemm::IgemmGlobalTileTraits< kOperand_, kLayout_, Scalar_, Tile_, Threads_, kAccessSize_ >::Threads

◆ ThreadsDelta

template<GemmOperand::Kind kOperand_, MatrixLayout::Kind kLayout_, typename Scalar_ , typename Tile_ , typename Threads_ , int kAccessSize_>
typedef Shape<1, 4, Base::VectorizedTile::kC> cutlass::gemm::IgemmGlobalTileTraits< kOperand_, kLayout_, Scalar_, Tile_, Threads_, kAccessSize_ >::ThreadsDelta

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