Cutlass
CUDA Templates for Linear Algebra Subroutines and Solvers
|
#include <matrix_traits.h>
Public Types | |
typedef int | Index |
Integer-valued index. More... | |
typedef Coord< 2, Index > | Base |
Base type is a Coord of rank=2. More... | |
![]() | |
typedef int | Index |
Index type used to store elements. More... | |
Public Member Functions | |
CUTLASS_HOST_DEVICE | MatrixCoord () |
Default ctor. More... | |
CUTLASS_HOST_DEVICE | MatrixCoord (Coord< 2, Index > const &coord) |
Constructs from Coord<2> More... | |
CUTLASS_HOST_DEVICE | MatrixCoord (Index row, Index column) |
Helper to construct from a row and column. More... | |
CUTLASS_HOST_DEVICE Index const & | row () const |
Returns the row of the coordinate. More... | |
CUTLASS_HOST_DEVICE Index & | row () |
Returns the row of the coordinate. More... | |
CUTLASS_HOST_DEVICE Index const & | column () const |
Returns the column of the coordinate. More... | |
CUTLASS_HOST_DEVICE Index & | column () |
Returns the column of the coordinate. More... | |
CUTLASS_HOST_DEVICE MatrixCoord | operator+ (Base const &b) const |
Element-wise addition. More... | |
CUTLASS_HOST_DEVICE MatrixCoord | operator- (Base const &b) const |
Element-wise subtraction. More... | |
CUTLASS_HOST_DEVICE MatrixCoord | operator* (Base const &b) const |
Element-wise multiplication. More... | |
CUTLASS_HOST_DEVICE MatrixCoord | operator/ (Base const &b) const |
Element-wise division. More... | |
CUTLASS_HOST_DEVICE MatrixCoord & | operator+= (Base const &b) |
In-place addition. More... | |
CUTLASS_HOST_DEVICE MatrixCoord & | operator-= (Base const &b) |
In-place subtraction. More... | |
CUTLASS_HOST_DEVICE MatrixCoord & | operator*= (Base const &b) |
In-place multiplication. More... | |
CUTLASS_HOST_DEVICE MatrixCoord & | operator/= (Base const &b) |
In-place division. More... | |
![]() | |
CUTLASS_HOST_DEVICE | Coord (Index value=0) |
Default ctor initializes uniformly. More... | |
CUTLASS_HOST_DEVICE | Coord (Index _idx[]) |
Constructs from an array of integers. More... | |
CUTLASS_HOST_DEVICE | Coord (Coord< kRank > const &coord) |
Constructs from an array of integers. More... | |
CUTLASS_HOST_DEVICE Coord< Slice > | slice (int start=0, Index identity=0) const |
CUTLASS_HOST_DEVICE | operator bool () const |
Returns true if Coord is non-zero. More... | |
CUTLASS_HOST_DEVICE bool | operator! () const |
Returns true if Coord is uniformly zero. More... | |
CUTLASS_HOST_DEVICE Coord | operator+ (Coord const &b) const |
Element-wise addition. More... | |
CUTLASS_HOST_DEVICE Coord | operator- (Coord const &b) const |
Element-wise subtraction. More... | |
CUTLASS_HOST_DEVICE Coord | operator* (Coord const &b) const |
Element-wise multiplication. More... | |
CUTLASS_HOST_DEVICE Coord | operator/ (Coord const &b) const |
Element-wise division. More... | |
CUTLASS_HOST_DEVICE Coord & | operator+= (Coord const &b) |
In-place addition. More... | |
CUTLASS_HOST_DEVICE Coord & | operator-= (Coord const &b) |
In-place subtraction. More... | |
CUTLASS_HOST_DEVICE Coord & | operator*= (Coord const &b) |
In-place multiplication. More... | |
CUTLASS_HOST_DEVICE Coord & | operator/= (Coord const &b) |
In-place division. More... | |
CUTLASS_HOST_DEVICE Index & | operator[] (int dim) |
Member access operator. More... | |
CUTLASS_HOST_DEVICE Index const & | operator[] (int dim) const |
Member access operator. More... | |
CUTLASS_HOST_DEVICE T | dot (Coord const &b, T sum) const |
Computes the dot product of two Coord instances. More... | |
CUTLASS_HOST_DEVICE T | dot (Coord const &b) const |
Computes the dot product of two Coord instances. More... | |
CUTLASS_HOST_DEVICE Index & | at () |
Gets the index of a given Coord element. More... | |
CUTLASS_HOST_DEVICE Index & | at (int dim) |
Access via index; may limit unrolling potential. More... | |
CUTLASS_HOST_DEVICE Index const & | at () const |
Gets the index of a given Coord element. More... | |
CUTLASS_HOST_DEVICE Index const & | at (int dim) const |
Access via index; may limit unrolling potential. More... | |
CUTLASS_HOST_DEVICE bool | operator== (Coord< kRank > const &b) const |
Determines if two Coord<> objects are equal. More... | |
CUTLASS_HOST_DEVICE bool | operator!= (Coord< kRank > const &b) const |
Not equal. More... | |
CUTLASS_HOST_DEVICE Coord & | clamp (Coord< kRank > const &max, Coord< kRank > const &min=Coord< kRank >()) |
Clamps a coordinate to a range specified by maximum and minimum values. More... | |
CUTLASS_HOST_DEVICE Index | count () const |
Returns the product of all elements. More... | |
CUTLASS_HOST_DEVICE bool | operator< (Coord< kRank > const &b) const |
Less than operator. More... | |
CUTLASS_HOST_DEVICE bool | operator<= (Coord< kRank > const &b) const |
Less than or equals operator. More... | |
Static Public Attributes | |
static int const | kRow = 0 |
Rows dimension. More... | |
static int const | kColumn = 1 |
Columns dimension. More... | |
![]() | |
static int const | kRank |
Number of elements in Coord. More... | |
static int const | N |
Number of elements in Coord, aliased for compatibility. More... | |
Additional Inherited Members | |
![]() | |
Index | idx [kRank] |
Indices. More... | |
MatrixCoord wraps Coord<2, int> to provide a helper for accessing named dimensions. Classes expecting a coordinate in the rank=2 index space of a matrix should use MatrixCoord.
typedef Coord<2, Index> cutlass::MatrixCoord::Base |
typedef int cutlass::MatrixCoord::Index |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
static |
|
static |