Cutlass CUDA Templates for Linear Algebra Subroutines and Solvers

Public Types | Static Public Attributes | List of all members
cutlass::gemm::GemmMultiplicandTraits< ThreadBlockTile_, Usage, Layout > Struct Template Reference

`#include <gemm_operand.h>`

## Public Types
typedef ThreadBlockTile_ | ThreadBlockTile
| Shape of GEMM thread block tile (K, N, M) More...
typedef platform::conditional< kKstrided, Shape< 1, ThreadBlockTile::kD, GetExtent< Usage, ThreadBlockTile >::kExtent >, Shape< 1, GetExtent< Usage, ThreadBlockTile >::kExtent, ThreadBlockTile::kD > >::type | Shape
| Map the ThreadBlockShape onto (kH, kW) dimensions for A and B operand. More...

## Static Public Attributes
static GemmOperand::Kind const | kUsage = Usage
| Identifies multiplicand. More...
static MatrixLayout::Kind const | kLayout = Layout
| Layout of tile. More...
static bool const | kKstrided = (kUsage == GemmOperand::kA ^ kLayout == MatrixLayout::kRowMajor)

## Detailed Description

### template<typename ThreadBlockTile_, GemmOperand::Kind Usage, MatrixLayout::Kind Layout>
struct cutlass::gemm::GemmMultiplicandTraits< ThreadBlockTile_, Usage, Layout >

Determines the shape of a multiplicand tile in terms of strided (H) and contiguous (W) dimensions

## Member Typedef Documentation

## ◆ Shape

template<typename ThreadBlockTile_ , GemmOperand::Kind Usage, MatrixLayout::Kind Layout>

typedef platform::conditional< kKstrided, Shape<1, ThreadBlockTile::kD, GetExtent<Usage, ThreadBlockTile>::kExtent>, Shape<1, GetExtent<Usage, ThreadBlockTile>::kExtent, ThreadBlockTile::kD> >::type cutlass::gemm::GemmMultiplicandTraits< ThreadBlockTile_, Usage, Layout >::Shape

## ◆ ThreadBlockTile

template<typename ThreadBlockTile_ , GemmOperand::Kind Usage, MatrixLayout::Kind Layout>

typedef ThreadBlockTile_ cutlass::gemm::GemmMultiplicandTraits< ThreadBlockTile_, Usage, Layout >::ThreadBlockTile

## Member Data Documentation

## ◆ kKstrided

template<typename ThreadBlockTile_ , GemmOperand::Kind Usage, MatrixLayout::Kind Layout>

bool const cutlass::gemm::GemmMultiplicandTraits< ThreadBlockTile_, Usage, Layout >::kKstrided = (kUsage == GemmOperand::kA ^ kLayout == MatrixLayout::kRowMajor)
| static

## ◆ kLayout

template<typename ThreadBlockTile_ , GemmOperand::Kind Usage, MatrixLayout::Kind Layout>

MatrixLayout::Kind const cutlass::gemm::GemmMultiplicandTraits< ThreadBlockTile_, Usage, Layout >::kLayout = Layout
| static

## ◆ kUsage

template<typename ThreadBlockTile_ , GemmOperand::Kind Usage, MatrixLayout::Kind Layout>

GemmOperand::Kind const cutlass::gemm::GemmMultiplicandTraits< ThreadBlockTile_, Usage, Layout >::kUsage = Usage
| static

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

- gemm_operand.h