# CUTLASS: cutlass::layout::ContiguousMatrix Struct Reference

cutlass::layout::ContiguousMatrix 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 | ContiguousMatrix (Index ldm=0, Matrix layout=Matrix::kColumnMajor)
| 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 ContiguousMatrix | packed (MatrixCoord const &extent, Matrix layout=Matrix::kColumnMajor)
| 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...

## Detailed Description

Mapping function for scenario in which layout is row-major or column-major but this information is only available at runtime.

## Member Typedef Documentation

using cutlass::layout::ContiguousMatrix::Index = int32_t

using cutlass::layout::ContiguousMatrix::LongIndex = int64_t

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

using cutlass::layout::ContiguousMatrix::TensorCoord = MatrixCoord

## Constructor & Destructor Documentation

CUTLASS_HOST_DEVICE cutlass::layout::ContiguousMatrix::ContiguousMatrix | ( | Index | ldm = `0`,
|  | Matrix | layout = `Matrix::kColumnMajor`
| ) |  |

inline

## Member Function Documentation

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

inline

CUTLASS_HOST_DEVICE MatrixCoord cutlass::layout::ContiguousMatrix::inverse | ( | LongIndex | offset | ) | const

inline

CUTLASS_HOST_DEVICE LongIndex cutlass::layout::ContiguousMatrix::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 ContiguousMatrix cutlass::layout::ContiguousMatrix::packed | ( | MatrixCoord const & | extent,
|  | Matrix | layout = `Matrix::kColumnMajor`
| ) |  |

inlinestatic

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

inline

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

inline

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

inline

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

inline

## Member Data Documentation

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

static

int const cutlass::layout::ContiguousMatrix::kStrideRank = 1

static

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

- layout/matrix.h