SetQuantVector
功能说明
在Matmul计算时支持int8类型输入,half/int8类型输出,该场景下,需要调用反量化接口进行反量化。调用反量化接口后,将数据从L0C搬出到GM时,会执行反量化操作,将最终结果反量化为half类型。本节中的反量化接口提供一个量化参数向量,该向量的shape为[1, N], N值为matmul矩阵计算时M/N/K中的N值。对输出矩阵的每一列都采用该向量中对应列的反量化系数进行反量化。
请在Iterate或者IterateAll之前调用该接口。
函数原型
__aicore__ inline void SetQuantVector(const GlobalTensor<uint64_t>& quantTensor)
参数说明
参数名 |
输入/输出 |
描述 |
---|---|---|
quantTensor |
输入 |
反量化运算时的参数向量 |
返回值
无
支持的型号
Atlas推理系列产品AI Core
Atlas A2训练系列产品/Atlas 800I A2推理产品
Atlas 200I/500 A2推理产品
注意事项
针对Atlas推理系列产品AI Core,输出位置为GM的场景,因为计算过程中涉及Atomic Add操作,需要开发者保证输出GM内存在host侧已进行初始化为0操作,否则会导致精度问题。
父主题: Matmul