开发者
资源
我要评分
获取效率
正确性
完整性
易理解
在线提单
论坛求助

gemm_s8u8s32_pack

对矩阵进行pack操作并将其存储到已分配的缓冲区中。

即:

op(X)可取值:,alpha,beta为乘法系数,op(A)为m*k矩阵,op(B)为k*n矩阵,C为m*n矩阵。

接口定义

C interface:

void cblas_gemm_s8u8s32_pack(const CBLAS_ORDER order, const enum CBLAS_IDENTIFIER identifier,

const CBLAS_TRANSPOSE trans, const BLASINT m, const BLASINT n, const BLASINT k,

const void *src, const BLASINT ld, void *dst);

参数

参数名

类型

描述

输入/输出

order

枚举类型CBLAS_ORDER

表示矩阵是行主序或列主序。

输入

identifier

枚举类型CBLAS_IDENTIFIER

指定要pack的矩阵。

  • 如果identifier= CblasA,pack A矩阵。
  • 如果identifier= CblasB,pack B矩阵。

输入

trans

枚举类型CBLAS_TRANSPOSE

矩阵A为常规矩阵,转置矩阵。

  • 如果trans= CblasNoTrans,
  • 如果trans= CblasTrans,

矩阵B为常规矩阵,转置矩阵。

  • 如果trans= CblasNoTrans,
  • 如果trans= CblasTrans,

输入

m

整型数

矩阵op(A)和矩阵C的行。

输入

n

整型数

矩阵op(B)和矩阵C的列。

输入

k

整型数

矩阵op(A)的列和矩阵op(B)的行。

输入

src

  • int8类型。

矩阵A\B。

输入

ld

整型数

  • 矩阵为列存,identifier = CblasA, trans = CblasNoTrans,ld至少max(1, m),否则max(1, k)。
  • 矩阵为行存,identifier = CblasA, trans = CblasNoTrans,ld至少max(1, k),否则max(1, m)。
  • 矩阵为列存,identifier = CblasB, trans = CblasNoTrans,ld至少max(1, k),否则max(1, n)。
  • 矩阵为行存,identifier = CblasB, trans = CblasNoTrans,ld至少max(1, n),否则max(1, k)。

输入

dst

  • int8类型

pack后的矩阵A\B。

输入/输出

依赖

#include "kblas.h"

示例

参见gemm_?8?8s32_compute示例