(data)
| 240 | |
| 241 | # only support int16 symmetric quantization. |
| 242 | def quantize_int16(data): |
| 243 | np_data = np.array(data).astype(float) |
| 244 | max_val = max(abs(np_data.min()), abs(np_data.max())) |
| 245 | scale = max_val / 2**15 |
| 246 | zero = 0 |
| 247 | output = np.clip((np.round(zero + data / scale).astype(np.int32)), |
| 248 | -2**15, 2**15 - 1) |
| 249 | |
| 250 | quantized_data = QuantizedData() |
| 251 | quantized_data.data = output |
| 252 | quantized_data.scale = scale |
| 253 | quantized_data.zero = zero |
| 254 | quantized_data.minval = -max_val |
| 255 | quantized_data.maxval = max_val |
| 256 | return quantized_data |
| 257 | |
| 258 | |
| 259 | def quantize_bias_for_hexagon(data): |
nothing calls this directly
no test coverage detected