CUTLASS
CUDA Templates for Linear Algebra Subroutines and Solvers
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | List of all members
cutlass::layout::RowMajorVoltaTensorOpMultiplicandCongruous< ElementSize > Struct Template Reference

Template mapping a row-major view of pitch-linear memory to VoltaTensorOpMultiplicandCongruous.

#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 = VoltaTensorOpMultiplicandCongruous< ElementSize >
 
using TileShape = typename Base::TileShape
 
using PartitionShape = typename Base::PartitionShape
 
using PartitionCount = typename Base::PartitionCount
 
using AccessCount = typename Base::AccessCount
 

Public Member Functions

CUTLASS_HOST_DEVICE RowMajorVoltaTensorOpMultiplicandCongruous (Index ldm=0)
 Ctor. More...
 
CUTLASS_HOST_DEVICE RowMajorVoltaTensorOpMultiplicandCongruous (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 Stridestride ()
 Returns the stride of the layout. More...
 
CUTLASS_HOST_DEVICE LongIndex capacity (TensorCoord 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 RowMajorVoltaTensorOpMultiplicandCongruous 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 128b accesses. More...
 
static int const kElementSize = Base::kElementSize
 
static int const kElementsPerAccess = Base::kElementsPerAccess
 

Member Typedef Documentation

template<int ElementSize>
using cutlass::layout::RowMajorVoltaTensorOpMultiplicandCongruous< ElementSize >::AccessCount = typename Base::AccessCount
template<int ElementSize>
using cutlass::layout::RowMajorVoltaTensorOpMultiplicandCongruous< ElementSize >::Base = VoltaTensorOpMultiplicandCongruous<ElementSize>
template<int ElementSize>
using cutlass::layout::RowMajorVoltaTensorOpMultiplicandCongruous< ElementSize >::Index = int32_t
template<int ElementSize>
using cutlass::layout::RowMajorVoltaTensorOpMultiplicandCongruous< ElementSize >::LongIndex = int64_t
template<int ElementSize>
using cutlass::layout::RowMajorVoltaTensorOpMultiplicandCongruous< ElementSize >::PartitionCount = typename Base::PartitionCount
template<int ElementSize>
using cutlass::layout::RowMajorVoltaTensorOpMultiplicandCongruous< ElementSize >::PartitionShape = typename Base::PartitionShape
template<int ElementSize>
using cutlass::layout::RowMajorVoltaTensorOpMultiplicandCongruous< ElementSize >::TensorCoord = MatrixCoord
template<int ElementSize>
using cutlass::layout::RowMajorVoltaTensorOpMultiplicandCongruous< ElementSize >::TileShape = typename Base::TileShape

Constructor & Destructor Documentation

Member Function Documentation

template<int ElementSize>
CUTLASS_HOST_DEVICE LongIndex cutlass::layout::RowMajorVoltaTensorOpMultiplicandCongruous< ElementSize >::capacity ( TensorCoord const &  extent) const
inline
template<int ElementSize>
CUTLASS_HOST_DEVICE TensorCoord cutlass::layout::RowMajorVoltaTensorOpMultiplicandCongruous< ElementSize >::inverse ( LongIndex  offset) const
inline
template<int ElementSize>
CUTLASS_HOST_DEVICE LongIndex cutlass::layout::RowMajorVoltaTensorOpMultiplicandCongruous< ElementSize >::operator() ( TensorCoord const &  coord) const
inline

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

template<int ElementSize>
static CUTLASS_HOST_DEVICE RowMajorVoltaTensorOpMultiplicandCongruous cutlass::layout::RowMajorVoltaTensorOpMultiplicandCongruous< ElementSize >::packed ( TensorCoord const &  extent)
inlinestatic
template<int ElementSize>
CUTLASS_HOST_DEVICE Stride cutlass::layout::RowMajorVoltaTensorOpMultiplicandCongruous< ElementSize >::stride ( ) const
inline
template<int ElementSize>
CUTLASS_HOST_DEVICE Stride& cutlass::layout::RowMajorVoltaTensorOpMultiplicandCongruous< ElementSize >::stride ( )
inline

Member Data Documentation

template<int ElementSize>
int const cutlass::layout::RowMajorVoltaTensorOpMultiplicandCongruous< ElementSize >::kAccessSize = Base::kAccessSize
static
template<int ElementSize>
int const cutlass::layout::RowMajorVoltaTensorOpMultiplicandCongruous< ElementSize >::kElementSize = Base::kElementSize
static
template<int ElementSize>
int const cutlass::layout::RowMajorVoltaTensorOpMultiplicandCongruous< ElementSize >::kElementsPerAccess = Base::kElementsPerAccess
static
template<int ElementSize>
int const cutlass::layout::RowMajorVoltaTensorOpMultiplicandCongruous< ElementSize >::kRank = 2
static
template<int ElementSize>
int const cutlass::layout::RowMajorVoltaTensorOpMultiplicandCongruous< ElementSize >::kStrideRank = 1
static

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