# CUTLASS: cutlass::arch::Mma< gemm::GemmShape< 8, 8, 16 >, 32, int8_t, layout::RowMajor, int8_t, layout::ColumnMajor, int, layout::RowMajor, OpMultiplyAdd > Struct Template Reference

cutlass::arch::Mma< gemm::GemmShape< 8, 8, 16 >, 32, int8_t, layout::RowMajor, int8_t, layout::ColumnMajor, int, layout::RowMajor, OpMultiplyAdd > Struct Template Reference

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

`#include <mma_sm75.h>`

## Public Types

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

## 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, int8_t, layout::RowMajor, int8_t, layout::ColumnMajor, int, layout::RowMajor, OpMultiplyAdd >::ElementA = int8_t

using cutlass::arch::Mma< gemm::GemmShape< 8, 8, 16 >, 32, int8_t, layout::RowMajor, int8_t, layout::ColumnMajor, int, layout::RowMajor, OpMultiplyAdd >::ElementB = int8_t

using cutlass::arch::Mma< gemm::GemmShape< 8, 8, 16 >, 32, int8_t, layout::RowMajor, int8_t, layout::ColumnMajor, int, layout::RowMajor, OpMultiplyAdd >::ElementC = int

using cutlass::arch::Mma< gemm::GemmShape< 8, 8, 16 >, 32, int8_t, layout::RowMajor, int8_t, layout::ColumnMajor, int, layout::RowMajor, OpMultiplyAdd >::FragmentA = Array<int8_t, 4>

using cutlass::arch::Mma< gemm::GemmShape< 8, 8, 16 >, 32, int8_t, layout::RowMajor, int8_t, layout::ColumnMajor, int, layout::RowMajor, OpMultiplyAdd >::FragmentB = Array<int8_t, 4>

using cutlass::arch::Mma< gemm::GemmShape< 8, 8, 16 >, 32, int8_t, layout::RowMajor, int8_t, layout::ColumnMajor, int, layout::RowMajor, OpMultiplyAdd >::FragmentC = Array<int, 2>

using cutlass::arch::Mma< gemm::GemmShape< 8, 8, 16 >, 32, int8_t, layout::RowMajor, int8_t, layout::ColumnMajor, int, layout::RowMajor, OpMultiplyAdd >::LayoutA = layout::RowMajor

using cutlass::arch::Mma< gemm::GemmShape< 8, 8, 16 >, 32, int8_t, layout::RowMajor, int8_t, layout::ColumnMajor, int, layout::RowMajor, OpMultiplyAdd >::LayoutB = layout::ColumnMajor

using cutlass::arch::Mma< gemm::GemmShape< 8, 8, 16 >, 32, int8_t, layout::RowMajor, int8_t, layout::ColumnMajor, int, layout::RowMajor, OpMultiplyAdd >::LayoutC = layout::RowMajor

using cutlass::arch::Mma< gemm::GemmShape< 8, 8, 16 >, 32, int8_t, layout::RowMajor, int8_t, layout::ColumnMajor, int, layout::RowMajor, OpMultiplyAdd >::Operator = OpMultiplyAdd

using cutlass::arch::Mma< gemm::GemmShape< 8, 8, 16 >, 32, int8_t, layout::RowMajor, int8_t, layout::ColumnMajor, int, layout::RowMajor, OpMultiplyAdd >::Shape = gemm::GemmShape<8, 8, 16>

## Member Function Documentation

CUTLASS_HOST_DEVICE void cutlass::arch::Mma< gemm::GemmShape< 8, 8, 16 >, 32, int8_t, layout::RowMajor, int8_t, layout::ColumnMajor, int, layout::RowMajor, OpMultiplyAdd >::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:

- mma_sm75.h