cutlass::layout::ColumnMajorBlockLinear< BlockRows, BlockColumns > Struct Template Reference

`#include <matrix.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 >
| Stride vector. More...

## Public Member Functions

CUTLASS_HOST_DEVICE | ColumnMajorBlockLinear (Index ldm=0)
| Ctor. More...
CUTLASS_HOST_DEVICE LongIndex | operator() (MatrixCoord const &coord) const
CUTLASS_HOST_DEVICE MatrixCoord | 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 Index | stride (int idx) const
| Returns the stride of the layout. More...
CUTLASS_HOST_DEVICE Index & | stride (int idx)
| Returns the stride of the layout. More...
CUTLASS_HOST_DEVICE LongIndex | capacity (MatrixCoord const &extent) const
| Compute the number of contiguous elements needed to store a tensor with the given size. More...

## Static Public Member Functions

static CUTLASS_HOST_DEVICE ColumnMajorBlockLinear | packed (MatrixCoord 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 | kBlockRows = BlockRows
| Size of a block in rows. More...
static int const | kBlockColumns = BlockColumns
| Size of a block in columns. More...

## Detailed Description

### template<int BlockRows, int BlockColumns>
struct cutlass::layout::ColumnMajorBlockLinear< BlockRows, BlockColumns >

Mapping function for block-linear matrices. Matrix is structured as column-major arrangement of 2D tiles (that are column-major).

## Member Typedef Documentation

template<int BlockRows, int BlockColumns>

using cutlass::layout::ColumnMajorBlockLinear< BlockRows, BlockColumns >::Index = int32_t

template<int BlockRows, int BlockColumns>

using cutlass::layout::ColumnMajorBlockLinear< BlockRows, BlockColumns >::LongIndex = int64_t

template<int BlockRows, int BlockColumns>

using cutlass::layout::ColumnMajorBlockLinear< BlockRows, BlockColumns >::Stride = Coord<kStrideRank, Index>

template<int BlockRows, int BlockColumns>

using cutlass::layout::ColumnMajorBlockLinear< BlockRows, BlockColumns >::TensorCoord = MatrixCoord

## Constructor & Destructor Documentation

template<int BlockRows, int BlockColumns>

CUTLASS_HOST_DEVICE cutlass::layout::ColumnMajorBlockLinear< BlockRows, BlockColumns >::ColumnMajorBlockLinear | ( | Index | ldm = `0` | ) |

inline

## Member Function Documentation

template<int BlockRows, int BlockColumns>

CUTLASS_HOST_DEVICE LongIndex cutlass::layout::ColumnMajorBlockLinear< BlockRows, BlockColumns >::capacity | ( | MatrixCoord const & | extent | ) | const

inline

template<int BlockRows, int BlockColumns>

CUTLASS_HOST_DEVICE MatrixCoord cutlass::layout::ColumnMajorBlockLinear< BlockRows, BlockColumns >::inverse | ( | LongIndex | offset | ) | const

inline

template<int BlockRows, int BlockColumns>

CUTLASS_HOST_DEVICE LongIndex cutlass::layout::ColumnMajorBlockLinear< BlockRows, BlockColumns >::operator() | ( | MatrixCoord const & | coord | ) | const

inline

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

template<int BlockRows, int BlockColumns>

static CUTLASS_HOST_DEVICE ColumnMajorBlockLinear cutlass::layout::ColumnMajorBlockLinear< BlockRows, BlockColumns >::packed | ( | MatrixCoord const & | extent | ) |

inlinestatic

template<int BlockRows, int BlockColumns>

CUTLASS_HOST_DEVICE Stride cutlass::layout::ColumnMajorBlockLinear< BlockRows, BlockColumns >::stride | ( |  | ) | const

inline

template<int BlockRows, int BlockColumns>

CUTLASS_HOST_DEVICE Stride& cutlass::layout::ColumnMajorBlockLinear< BlockRows, BlockColumns >::stride | ( |  | ) |

inline

template<int BlockRows, int BlockColumns>

CUTLASS_HOST_DEVICE Index cutlass::layout::ColumnMajorBlockLinear< BlockRows, BlockColumns >::stride | ( | int | idx | ) | const

inline

template<int BlockRows, int BlockColumns>

CUTLASS_HOST_DEVICE Index& cutlass::layout::ColumnMajorBlockLinear< BlockRows, BlockColumns >::stride | ( | int | idx | ) |

inline

## Member Data Documentation

template<int BlockRows, int BlockColumns>

int const cutlass::layout::ColumnMajorBlockLinear< BlockRows, BlockColumns >::kBlockColumns = BlockColumns

static

template<int BlockRows, int BlockColumns>

int const cutlass::layout::ColumnMajorBlockLinear< BlockRows, BlockColumns >::kBlockRows = BlockRows

static

template<int BlockRows, int BlockColumns>

int const cutlass::layout::ColumnMajorBlockLinear< BlockRows, BlockColumns >::kRank = 2

static

template<int BlockRows, int BlockColumns>

int const cutlass::layout::ColumnMajorBlockLinear< BlockRows, BlockColumns >::kStrideRank = 1

static

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

- layout/matrix.h