# CUTLASS: cutlass::layout::GeneralMatrix Struct Reference

cutlass::layout::GeneralMatrix Struct 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 | GeneralMatrix ()
| Ctor. More...
CUTLASS_HOST_DEVICE | GeneralMatrix (MatrixLayout layout_id, Index ldm, Index interleave)
| Ctor. More...
CUTLASS_HOST_DEVICE LongIndex | operator() (MatrixCoord const &coord) const
CUTLASS_HOST_DEVICE Stride | stride () const
| Returns the stride of the layout. More...
CUTLASS_HOST_DEVICE MatrixLayout | layout_id () const
CUTLASS_HOST_DEVICE Stride & | stride ()
| Returns the stride of the layout. More...
CUTLASS_HOST_DEVICE MatrixLayout & | layout_id ()
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 GeneralMatrix | packed (MatrixCoord const &extent, MatrixLayout layout_id=MatrixLayout::kColumnMajor, Index interleave=1)
| 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 = 2
| Rank of stride vector. More...

## Member Typedef Documentation

using cutlass::layout::GeneralMatrix::Index = int32_t

using cutlass::layout::GeneralMatrix::LongIndex = int64_t

using cutlass::layout::GeneralMatrix::Stride = Coord<kStrideRank, Index>

using cutlass::layout::GeneralMatrix::TensorCoord = MatrixCoord

## Constructor & Destructor Documentation

CUTLASS_HOST_DEVICE cutlass::layout::GeneralMatrix::GeneralMatrix | ( |  | ) |

inline

CUTLASS_HOST_DEVICE cutlass::layout::GeneralMatrix::GeneralMatrix | ( | MatrixLayout | layout_id,
|  | Index | ldm,
|  | Index | interleave
| ) |  |

inline

## Member Function Documentation

CUTLASS_HOST_DEVICE LongIndex cutlass::layout::GeneralMatrix::capacity | ( | MatrixCoord const & | extent | ) | const

inline

CUTLASS_HOST_DEVICE MatrixLayout cutlass::layout::GeneralMatrix::layout_id | ( |  | ) | const

inline

CUTLASS_HOST_DEVICE MatrixLayout& cutlass::layout::GeneralMatrix::layout_id | ( |  | ) |

inline

CUTLASS_HOST_DEVICE LongIndex cutlass::layout::GeneralMatrix::operator() | ( | MatrixCoord const & | coord | ) | const

inline

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

static CUTLASS_HOST_DEVICE GeneralMatrix cutlass::layout::GeneralMatrix::packed | ( | MatrixCoord const & | extent,
|  | MatrixLayout | layout_id = `MatrixLayout::kColumnMajor`,
|  | Index | interleave = `1`
| ) |  |

inlinestatic

CUTLASS_HOST_DEVICE Stride cutlass::layout::GeneralMatrix::stride | ( |  | ) | const

inline

CUTLASS_HOST_DEVICE Stride& cutlass::layout::GeneralMatrix::stride | ( |  | ) |

inline

CUTLASS_HOST_DEVICE Index cutlass::layout::GeneralMatrix::stride | ( | int | idx | ) | const

inline

CUTLASS_HOST_DEVICE Index& cutlass::layout::GeneralMatrix::stride | ( | int | idx | ) |

inline

## Member Data Documentation

int const cutlass::layout::GeneralMatrix::kRank = 2

static

int const cutlass::layout::GeneralMatrix::kStrideRank = 2

static

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

- layout/matrix.h