Back to Cutlass

CUTLASS: cutlass::layout::TensorOpMultiplicandCrosswise< ElementSize, Crosswise > Struct Template Reference

docs/structcutlass_1_1layout_1_1TensorOpMultiplicandCrosswise.html

4.4.218.4 KB
Original Source

| | 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::TensorOpMultiplicandCrosswise< ElementSize, Crosswise > Struct Template Reference

#include <tensor_op_multiplicand_sm75.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 = PitchLinearCoord | | | Logical coordinate. More...
| | | | using | Stride = Coord< kStrideRank, Index, LongIndex > | | | Stride vector. More...
| | | | using | Base = TensorOpMultiplicand< ElementSize, Crosswise > | | | | 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 | TensorOpMultiplicandCrosswise (Index ldm=0) | | | Ctor. More...
| | | | CUTLASS_HOST_DEVICE | TensorOpMultiplicandCrosswise (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 Stride & | stride () | | | Returns the stride of the layout. More...
| | | | CUTLASS_HOST_DEVICE LongIndex | capacity (TensorCoord const &extent) const | | |

|

Static Public Member Functions

| | static CUTLASS_HOST_DEVICE TensorOpMultiplicandCrosswise | 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 | | | | static int const | kCrosswise = Base::kCrosswise | | | | static int const | kFactor = Base::kFactor | | |

Detailed Description

template<int ElementSize, int Crosswise> struct cutlass::layout::TensorOpMultiplicandCrosswise< ElementSize, Crosswise >

Template based on element size (in bits) - defined in terms of pitch-linear memory and Crosswise size (in elements).

Member Typedef Documentation

template<int ElementSize, int Crosswise>

| using cutlass::layout::TensorOpMultiplicandCrosswise< ElementSize, Crosswise >::AccessCount = typename Base::AccessCount |

template<int ElementSize, int Crosswise>

| using cutlass::layout::TensorOpMultiplicandCrosswise< ElementSize, Crosswise >::Base = TensorOpMultiplicand<ElementSize, Crosswise> |

template<int ElementSize, int Crosswise>

| using cutlass::layout::TensorOpMultiplicandCrosswise< ElementSize, Crosswise >::Index = int32_t |

template<int ElementSize, int Crosswise>

| using cutlass::layout::TensorOpMultiplicandCrosswise< ElementSize, Crosswise >::LongIndex = int64_t |

template<int ElementSize, int Crosswise>

| using cutlass::layout::TensorOpMultiplicandCrosswise< ElementSize, Crosswise >::PartitionCount = typename Base::PartitionCount |

template<int ElementSize, int Crosswise>

| using cutlass::layout::TensorOpMultiplicandCrosswise< ElementSize, Crosswise >::PartitionShape = typename Base::PartitionShape |

template<int ElementSize, int Crosswise>

| using cutlass::layout::TensorOpMultiplicandCrosswise< ElementSize, Crosswise >::Stride = Coord<kStrideRank, Index, LongIndex> |

template<int ElementSize, int Crosswise>

| using cutlass::layout::TensorOpMultiplicandCrosswise< ElementSize, Crosswise >::TensorCoord = PitchLinearCoord |

template<int ElementSize, int Crosswise>

| using cutlass::layout::TensorOpMultiplicandCrosswise< ElementSize, Crosswise >::TileShape = typename Base::TileShape |

Constructor & Destructor Documentation

template<int ElementSize, int Crosswise>

|

| CUTLASS_HOST_DEVICE cutlass::layout::TensorOpMultiplicandCrosswise< ElementSize, Crosswise >::TensorOpMultiplicandCrosswise | ( | Index | ldm = 0 | ) | |

| inline |

template<int ElementSize, int Crosswise>

|

| CUTLASS_HOST_DEVICE cutlass::layout::TensorOpMultiplicandCrosswise< ElementSize, Crosswise >::TensorOpMultiplicandCrosswise | ( | Stride | stride | ) | |

| inline |

Member Function Documentation

template<int ElementSize, int Crosswise>

|

| CUTLASS_HOST_DEVICE LongIndex cutlass::layout::TensorOpMultiplicandCrosswise< ElementSize, Crosswise >::capacity | ( | TensorCoord const & | extent | ) | const |

| inline |

Compute the number of contiguous elements needed to store a tensor with the given size

template<int ElementSize, int Crosswise>

|

| CUTLASS_HOST_DEVICE TensorCoord cutlass::layout::TensorOpMultiplicandCrosswise< ElementSize, Crosswise >::inverse | ( | LongIndex | offset | ) | const |

| inline |

template<int ElementSize, int Crosswise>

|

| CUTLASS_HOST_DEVICE LongIndex cutlass::layout::TensorOpMultiplicandCrosswise< ElementSize, Crosswise >::operator() | ( | TensorCoord const & | coord | ) | const |

| inline |

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

template<int ElementSize, int Crosswise>

|

| static CUTLASS_HOST_DEVICE TensorOpMultiplicandCrosswise cutlass::layout::TensorOpMultiplicandCrosswise< ElementSize, Crosswise >::packed | ( | TensorCoord const & | extent | ) | |

| inlinestatic |

template<int ElementSize, int Crosswise>

|

| CUTLASS_HOST_DEVICE Stride cutlass::layout::TensorOpMultiplicandCrosswise< ElementSize, Crosswise >::stride | ( | | ) | const |

| inline |

template<int ElementSize, int Crosswise>

|

| CUTLASS_HOST_DEVICE Stride& cutlass::layout::TensorOpMultiplicandCrosswise< ElementSize, Crosswise >::stride | ( | | ) | |

| inline |

Member Data Documentation

template<int ElementSize, int Crosswise>

|

| int const cutlass::layout::TensorOpMultiplicandCrosswise< ElementSize, Crosswise >::kAccessSize = Base::kAccessSize |

| static |

template<int ElementSize, int Crosswise>

|

| int const cutlass::layout::TensorOpMultiplicandCrosswise< ElementSize, Crosswise >::kCrosswise = Base::kCrosswise |

| static |

template<int ElementSize, int Crosswise>

|

| int const cutlass::layout::TensorOpMultiplicandCrosswise< ElementSize, Crosswise >::kElementSize = Base::kElementSize |

| static |

template<int ElementSize, int Crosswise>

|

| int const cutlass::layout::TensorOpMultiplicandCrosswise< ElementSize, Crosswise >::kElementsPerAccess = Base::kElementsPerAccess |

| static |

template<int ElementSize, int Crosswise>

|

| int const cutlass::layout::TensorOpMultiplicandCrosswise< ElementSize, Crosswise >::kFactor = Base::kFactor |

| static |

template<int ElementSize, int Crosswise>

|

| int const cutlass::layout::TensorOpMultiplicandCrosswise< ElementSize, Crosswise >::kRank = 2 |

| static |

template<int ElementSize, int Crosswise>

|

| int const cutlass::layout::TensorOpMultiplicandCrosswise< ElementSize, Crosswise >::kStrideRank = 1 |

| static |


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

  • [tensor_op_multiplicand_sm75.h](tensor op multiplicand__sm75_8h_source.html)

Generated by 1.8.11