CUTLASS
CUDA Templates for Linear Algebra Subroutines and Solvers
Public Types | Public Member Functions | List of all members
cutlass::arch::Mma< gemm::GemmShape< 8, 8, 16 >, 32, uint8_t, layout::RowMajor, uint8_t, layout::ColumnMajor, int, layout::RowMajor, OpMultiplyAddSaturate > Struct Template Reference

Matrix multiply-add operation: S32 = S8 * U8 + S32.

#include <mma_sm75.h>

Public Types

using Shape = gemm::GemmShape< 8, 8, 16 >
 
using ElementA = uint8_t
 
using LayoutA = layout::RowMajor
 
using FragmentA = Array< uint8_t, 4 >
 
using ElementB = uint8_t
 
using LayoutB = layout::ColumnMajor
 
using FragmentB = Array< uint8_t, 4 >
 
using ElementC = int
 
using LayoutC = layout::RowMajor
 
using FragmentC = Array< int, 2 >
 
using Operator = OpMultiplyAddSaturate
 

Public Member Functions

CUTLASS_HOST_DEVICE void operator() (FragmentC &d, FragmentA const &a, FragmentB const &b, FragmentC const &c) const
 Computes multiply-add. More...
 

Member Typedef Documentation

using cutlass::arch::Mma< gemm::GemmShape< 8, 8, 16 >, 32, uint8_t, layout::RowMajor, uint8_t, layout::ColumnMajor, int, layout::RowMajor, OpMultiplyAddSaturate >::ElementA = uint8_t
using cutlass::arch::Mma< gemm::GemmShape< 8, 8, 16 >, 32, uint8_t, layout::RowMajor, uint8_t, layout::ColumnMajor, int, layout::RowMajor, OpMultiplyAddSaturate >::ElementB = uint8_t
using cutlass::arch::Mma< gemm::GemmShape< 8, 8, 16 >, 32, uint8_t, layout::RowMajor, uint8_t, layout::ColumnMajor, int, layout::RowMajor, OpMultiplyAddSaturate >::ElementC = int
using cutlass::arch::Mma< gemm::GemmShape< 8, 8, 16 >, 32, uint8_t, layout::RowMajor, uint8_t, layout::ColumnMajor, int, layout::RowMajor, OpMultiplyAddSaturate >::FragmentA = Array<uint8_t, 4>
using cutlass::arch::Mma< gemm::GemmShape< 8, 8, 16 >, 32, uint8_t, layout::RowMajor, uint8_t, layout::ColumnMajor, int, layout::RowMajor, OpMultiplyAddSaturate >::FragmentB = Array<uint8_t, 4>
using cutlass::arch::Mma< gemm::GemmShape< 8, 8, 16 >, 32, uint8_t, layout::RowMajor, uint8_t, layout::ColumnMajor, int, layout::RowMajor, OpMultiplyAddSaturate >::FragmentC = Array<int, 2>
using cutlass::arch::Mma< gemm::GemmShape< 8, 8, 16 >, 32, uint8_t, layout::RowMajor, uint8_t, layout::ColumnMajor, int, layout::RowMajor, OpMultiplyAddSaturate >::LayoutA = layout::RowMajor
using cutlass::arch::Mma< gemm::GemmShape< 8, 8, 16 >, 32, uint8_t, layout::RowMajor, uint8_t, layout::ColumnMajor, int, layout::RowMajor, OpMultiplyAddSaturate >::LayoutB = layout::ColumnMajor
using cutlass::arch::Mma< gemm::GemmShape< 8, 8, 16 >, 32, uint8_t, layout::RowMajor, uint8_t, layout::ColumnMajor, int, layout::RowMajor, OpMultiplyAddSaturate >::LayoutC = layout::RowMajor
using cutlass::arch::Mma< gemm::GemmShape< 8, 8, 16 >, 32, uint8_t, layout::RowMajor, uint8_t, layout::ColumnMajor, int, layout::RowMajor, OpMultiplyAddSaturate >::Operator = OpMultiplyAddSaturate
using cutlass::arch::Mma< gemm::GemmShape< 8, 8, 16 >, 32, uint8_t, layout::RowMajor, uint8_t, layout::ColumnMajor, int, layout::RowMajor, OpMultiplyAddSaturate >::Shape = gemm::GemmShape<8,8,16>

Member Function Documentation

CUTLASS_HOST_DEVICE void cutlass::arch::Mma< gemm::GemmShape< 8, 8, 16 >, 32, uint8_t, layout::RowMajor, uint8_t, layout::ColumnMajor, int, layout::RowMajor, OpMultiplyAddSaturate >::operator() ( FragmentC d,
FragmentA const &  a,
FragmentB const &  b,
FragmentC const &  c 
) const
inline

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