Skip to content

gemm_layer_struct

This structure contains all parameters necessary for GEMM.

#include <layer.h>

Public Attributes

Name
uint32_t M
uint32_t M_p
uint32_t N
uint32_t K
uint32_t TA
uint32_t TB
uint32_t TILE_M
uint32_t TILE_N
uint32_t TILE_K
double * A
double * B
double * C
uint32_t ALPHA
precision_t dtype
uint32_t expand

Public Attributes Documentation

variable M

uint32_t M;

Dimension of matrix product MxK * KxN

variable M_p

uint32_t M_p;

M divided by number of compute cores

variable N

uint32_t N;

Dimension of matrix product MxK * KxN

variable K

uint32_t K;

Dimension of matrix product MxK * KxN

variable TA

uint32_t TA;

Transpose matrix A

variable TB

uint32_t TB;

Transpose matrix B

variable TILE_M

uint32_t TILE_M;

Tile factor across M dimension

variable TILE_N

uint32_t TILE_N;

Tile factor across N dimension

variable TILE_K

uint32_t TILE_K;

Tile factor across K dimension

variable A

double * A;

Pointer to matrix A

variable B

double * B;

Pointer to matrix B

variable C

double * C;

Pointer to matrix C

variable ALPHA

uint32_t ALPHA;

constant factor: A * B + ALPHA * C

variable dtype

precision_t dtype;

Precision of GEMM

Precision of Convolution layer

variable expand

uint32_t expand;

Use expanding DOTP instructions


Updated on 2023-06-19 at 09:43:56 +0000