CUTLASS: cutlass::arch::Mma< gemm::GemmShape< 8, 8, 4 >, 8, half_t, layout::RowMajor, half_t, layout::RowMajor, float, layout::RowMajor, OpMultiplyAdd > Struct Template Reference

| CUTLASS CUDA Templates for Linear Algebra Subroutines and Solvers

- Main Page
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Types | Public Member Functions | List of all members
cutlass::arch::Mma< gemm::GemmShape< 8, 8, 4 >, 8, half_t, layout::RowMajor, half_t, layout::RowMajor, float, layout::RowMajor, OpMultiplyAdd > Struct Template Reference

Matrix multiply-add operation: F32 = F16 * F16 + F32.

`#include <mma_sm70.h>`

## Public Types
using | Shape = gemm::GemmShape< 8, 8, 4 >
using | ElementA = half_t
using | LayoutA = layout::RowMajor
using | FragmentA = Array< half_t, 4 >
using | ElementB = half_t
using | LayoutB = layout::RowMajor
using | FragmentB = Array< half_t, 4 >
using | ElementC = float
using | LayoutC = layout::RowMajor
using | FragmentC = Array< float, 8 >
using | Operator = OpMultiplyAdd

## Public Member Functions
CUTLASS_HOST_DEVICE void | operator() (FragmentC &d, FragmentA const &a, FragmentB const &b, FragmentC const &c)
| Multiply-add. More...

## Member Typedef Documentation

using cutlass::arch::Mma< gemm::GemmShape< 8, 8, 4 >, 8, half_t, layout::RowMajor, half_t, layout::RowMajor, float, layout::RowMajor, OpMultiplyAdd >::ElementA = half_t

using cutlass::arch::Mma< gemm::GemmShape< 8, 8, 4 >, 8, half_t, layout::RowMajor, half_t, layout::RowMajor, float, layout::RowMajor, OpMultiplyAdd >::ElementB = half_t

using cutlass::arch::Mma< gemm::GemmShape< 8, 8, 4 >, 8, half_t, layout::RowMajor, half_t, layout::RowMajor, float, layout::RowMajor, OpMultiplyAdd >::ElementC = float

using cutlass::arch::Mma< gemm::GemmShape< 8, 8, 4 >, 8, half_t, layout::RowMajor, half_t, layout::RowMajor, float, layout::RowMajor, OpMultiplyAdd >::FragmentA = Array<half_t, 4>

using cutlass::arch::Mma< gemm::GemmShape< 8, 8, 4 >, 8, half_t, layout::RowMajor, half_t, layout::RowMajor, float, layout::RowMajor, OpMultiplyAdd >::FragmentB = Array<half_t, 4>

using cutlass::arch::Mma< gemm::GemmShape< 8, 8, 4 >, 8, half_t, layout::RowMajor, half_t, layout::RowMajor, float, layout::RowMajor, OpMultiplyAdd >::FragmentC = Array<float, 8>

using cutlass::arch::Mma< gemm::GemmShape< 8, 8, 4 >, 8, half_t, layout::RowMajor, half_t, layout::RowMajor, float, layout::RowMajor, OpMultiplyAdd >::LayoutA = layout::RowMajor

using cutlass::arch::Mma< gemm::GemmShape< 8, 8, 4 >, 8, half_t, layout::RowMajor, half_t, layout::RowMajor, float, layout::RowMajor, OpMultiplyAdd >::LayoutB = layout::RowMajor

using cutlass::arch::Mma< gemm::GemmShape< 8, 8, 4 >, 8, half_t, layout::RowMajor, half_t, layout::RowMajor, float, layout::RowMajor, OpMultiplyAdd >::LayoutC = layout::RowMajor

using cutlass::arch::Mma< gemm::GemmShape< 8, 8, 4 >, 8, half_t, layout::RowMajor, half_t, layout::RowMajor, float, layout::RowMajor, OpMultiplyAdd >::Operator = OpMultiplyAdd

using cutlass::arch::Mma< gemm::GemmShape< 8, 8, 4 >, 8, half_t, layout::RowMajor, half_t, layout::RowMajor, float, layout::RowMajor, OpMultiplyAdd >::Shape = gemm::GemmShape<8, 8, 4>

## Member Function Documentation

CUTLASS_HOST_DEVICE void cutlass::arch::Mma< gemm::GemmShape< 8, 8, 4 >, 8, half_t, layout::RowMajor, half_t, layout::RowMajor, float, layout::RowMajor, OpMultiplyAdd >::operator() | ( | FragmentC & | d,
|  | FragmentA const & | a,
|  | FragmentB const & | b,
|  | FragmentC const & | c
| ) |  |
| inline

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

- mma_sm70.h