稀疏量化Linear。
struct LinearSparseParam{ bool transposeA = false; bool transposeB = true; uint32_t tilingK = 1; uint32_t tilingN = 1; };
成员名称 |
描述 |
---|---|
transposeA |
是否转置A矩阵,默认不转置。当前仅支持transposeA为false。 |
transposeB |
是否转置B矩阵,默认转置。当前仅支持transposeB = true。 |
tilingK |
压缩参数,由外部压缩算法决定,默认为1,目前仅支持值为8。 |
tilingN |
压缩参数,由外部压缩算法决定,默认为1,目前仅支持值为8。 |
参数 |
维度 |
数据类型 |
格式 |
描述 |
---|---|---|---|---|
x |
int8 |
ND |
当前只支持int8。 k是32的整数倍。 |
|
weight |
int8 |
ND/NZ |
当前只支持int8。 |
|
bias |
[n] / [1,n] |
int32 |
ND |
n是16的整数倍。 |
deqScale |
[n] / [1,n] |
uint64/int64 |
ND |
反量化的Scale。 |
compressIdx |
[x] |
int8 |
ND |
压缩信息,x由以下计算得出。 x = k_index * n_index * 8 k_index = ceil(k1 / tilingK) n_index = ceil(n1 / tilingN) k1 = k / 32 n1 = n / 16 其中,ceil()函数为向上取整。 |
参数 |
维度 |
数据类型 |
格式 |
---|---|---|---|
output |
根据以上输入维度,输出维度为:
|
float16 |
ND |