cutlass::layout::ColumnMajorVoltaTensorOpMultiplicandCrosswise< ElementSize, KBlock > Struct Template Reference

`#include <tensor_op_multiplicand_sm70.h>`

## Public Types

using | Index = int32_t
| Index type used for coordinates. More...
using | LongIndex = int64_t
| Long index type used for offsets. More...
using | TensorCoord = MatrixCoord
| Logical coordinate. More...
using | Stride = Coord< kStrideRank, Index, LongIndex >
| Stride vector. More...
using | Base = VoltaTensorOpMultiplicandCrosswise< ElementSize, KBlock >

## Public Member Functions

CUTLASS_HOST_DEVICE | ColumnMajorVoltaTensorOpMultiplicandCrosswise (Index ldm=0)
| Ctor. More...
CUTLASS_HOST_DEVICE | ColumnMajorVoltaTensorOpMultiplicandCrosswise (Stride stride)
| Ctor. More...
CUTLASS_HOST_DEVICE LongIndex | operator() (TensorCoord const &coord) const
CUTLASS_HOST_DEVICE TensorCoord | inverse (LongIndex offset) const
| Inverse of layout function, mapping linear offset to logical coordinate. More...
CUTLASS_HOST_DEVICE Stride | stride () const
| Returns the stride of the layout. More...
CUTLASS_HOST_DEVICE Stride & | stride ()
| Returns the stride of the layout. More...
CUTLASS_HOST_DEVICE LongIndex | capacity (TensorCoord const &extent) const

## Static Public Member Functions

static CUTLASS_HOST_DEVICE ColumnMajorVoltaTensorOpMultiplicandCrosswise | packed (TensorCoord const &extent)
| Helper returns a layout to a tightly packed tensor. More...

## Static Public Attributes

static int const | kRank = 2
| Logical rank of tensor. More...
static int const | kStrideRank = 1
| Rank of stride vector. More...
static int const | kAccessSize = Base::kAccessSize
| This layout is optimized for 64b accesses. More...
static int const | kElementSize = Base::kElementSize
static int const | kElementsPerAccess = Base::kElementsPerAccess

## Detailed Description

### template<int ElementSize, int KBlock>
struct cutlass::layout::ColumnMajorVoltaTensorOpMultiplicandCrosswise< ElementSize, KBlock >

Template mapping a column-major view of pitch-linear memory to VoltaTensorOpMultiplicandCrosswise

## Member Typedef Documentation

template<int ElementSize, int KBlock>

using cutlass::layout::ColumnMajorVoltaTensorOpMultiplicandCrosswise< ElementSize, KBlock >::Base = VoltaTensorOpMultiplicandCrosswise<ElementSize, KBlock>

template<int ElementSize, int KBlock>

using cutlass::layout::ColumnMajorVoltaTensorOpMultiplicandCrosswise< ElementSize, KBlock >::Index = int32_t

template<int ElementSize, int KBlock>

using cutlass::layout::ColumnMajorVoltaTensorOpMultiplicandCrosswise< ElementSize, KBlock >::LongIndex = int64_t

template<int ElementSize, int KBlock>

using cutlass::layout::ColumnMajorVoltaTensorOpMultiplicandCrosswise< ElementSize, KBlock >::Stride = Coord<kStrideRank, Index, LongIndex>

template<int ElementSize, int KBlock>

using cutlass::layout::ColumnMajorVoltaTensorOpMultiplicandCrosswise< ElementSize, KBlock >::TensorCoord = MatrixCoord

## Constructor & Destructor Documentation

template<int ElementSize, int KBlock>

CUTLASS_HOST_DEVICE cutlass::layout::ColumnMajorVoltaTensorOpMultiplicandCrosswise< ElementSize, KBlock >::ColumnMajorVoltaTensorOpMultiplicandCrosswise | ( | Index | ldm = `0` | ) |

inline

template<int ElementSize, int KBlock>

CUTLASS_HOST_DEVICE cutlass::layout::ColumnMajorVoltaTensorOpMultiplicandCrosswise< ElementSize, KBlock >::ColumnMajorVoltaTensorOpMultiplicandCrosswise | ( | Stride | stride | ) |

inline

## Member Function Documentation

template<int ElementSize, int KBlock>

CUTLASS_HOST_DEVICE LongIndex cutlass::layout::ColumnMajorVoltaTensorOpMultiplicandCrosswise< ElementSize, KBlock >::capacity | ( | TensorCoord const & | extent | ) | const

inline

Compute the number of contiguous elements needed to store a tensor with the given size

template<int ElementSize, int KBlock>

CUTLASS_HOST_DEVICE TensorCoord cutlass::layout::ColumnMajorVoltaTensorOpMultiplicandCrosswise< ElementSize, KBlock >::inverse | ( | LongIndex | offset | ) | const

inline

template<int ElementSize, int KBlock>

CUTLASS_HOST_DEVICE LongIndex cutlass::layout::ColumnMajorVoltaTensorOpMultiplicandCrosswise< ElementSize, KBlock >::operator() | ( | TensorCoord const & | coord | ) | const

inline

Returns the offset of a coordinate in linear memory. Assumes coordinate has convention (contiguous, strided)

template<int ElementSize, int KBlock>

static CUTLASS_HOST_DEVICE ColumnMajorVoltaTensorOpMultiplicandCrosswise cutlass::layout::ColumnMajorVoltaTensorOpMultiplicandCrosswise< ElementSize, KBlock >::packed | ( | TensorCoord const & | extent | ) |

inlinestatic

template<int ElementSize, int KBlock>

CUTLASS_HOST_DEVICE Stride cutlass::layout::ColumnMajorVoltaTensorOpMultiplicandCrosswise< ElementSize, KBlock >::stride | ( |  | ) | const

inline

template<int ElementSize, int KBlock>

CUTLASS_HOST_DEVICE Stride& cutlass::layout::ColumnMajorVoltaTensorOpMultiplicandCrosswise< ElementSize, KBlock >::stride | ( |  | ) |

inline

## Member Data Documentation

template<int ElementSize, int KBlock>

int const cutlass::layout::ColumnMajorVoltaTensorOpMultiplicandCrosswise< ElementSize, KBlock >::kAccessSize = Base::kAccessSize

static

template<int ElementSize, int KBlock>

int const cutlass::layout::ColumnMajorVoltaTensorOpMultiplicandCrosswise< ElementSize, KBlock >::kElementSize = Base::kElementSize

static

template<int ElementSize, int KBlock>

int const cutlass::layout::ColumnMajorVoltaTensorOpMultiplicandCrosswise< ElementSize, KBlock >::kElementsPerAccess = Base::kElementsPerAccess

static

template<int ElementSize, int KBlock>

int const cutlass::layout::ColumnMajorVoltaTensorOpMultiplicandCrosswise< ElementSize, KBlock >::kRank = 2

static

template<int ElementSize, int KBlock>

int const cutlass::layout::ColumnMajorVoltaTensorOpMultiplicandCrosswise< ElementSize, KBlock >::kStrideRank = 1

static

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

- tensor_op_multiplicand_sm70.h