asc_set_deq_scale
产 品 支 持 情 况
| 产 品 | 是 否 支 持 |
|---|---|
| √ | |
| √ |
功 能 说 明
设 置DEQSCALE(量 化 参 数)寄 存 器 的 值。
函 数 原 型
C++
__aicore__ inline void asc_set_deq_scale(__ubuf__ uint64_t* tmp, float scale_arr[ASC_VDEQ_SIZE], int16_t offset_arr[ASC_VDEQ_SIZE], bool sign_mode_arr[ASC_VDEQ_SIZE])
__aicore__ inline void asc_set_deq_scale(float scale, int16_t offset, bool sign_mode)
__aicore__ inline void asc_set_deq_scale(half scale)
参 数 说 明
| 参 数 名 | 输 入/输 出 | 描 述 |
|---|---|---|
| tmp | 输 入 | 一 块 临 时 内 存 区 域,用 于 存 储 一 组 大 小 为16的 量 化 参 数。 |
| scale_arr | 输 入 | float数 组 类 型,大 小 为16,用 于 存 储 一 组 量 化 参 数。 |
| offset_arr | 输 入 | int16_t数 组 类 型,大 小 为16,用 于 存 储 一 组 量 化 参 数。 |
| sign_mode_arr | 输 入 | bool数 组 类 型,大 小 为16,用 于 存 储 一 组 量 化 参 数。 |
| scale(half) | 输 入 | 量 化 参 数,half类 型。适 用 于cast_deq等 接 口 的int32_t转 化 为half的 场 景。 |
| scale(float) | 输 入 | 量 化 参 数,float类 型。设 置DEQSCALE寄 存 器 的 值。 |
| offset | 输 入 | 量 化 参 数,int16_t类 型,只 有 前9位 有 效。 |
| sign_mode | 输 入 | bool类 型,表 示 量 化 结 果 是 否 带 符 号。 |
返 回 值 说 明
无
流 水 类 型
PIPE_V
约 束 说 明
无
调 用 示 例
C++
constexpr uint32_t src_size = 256;
__ubuf__ half src[src_size];
__ubuf__ half dst[src_size];
float scale = 1.0;
int16_t offset = 2;
bool sign_mode = false;
asc_set_deq_scale(scale, offset, sign_mode);