Program Listing for File quantize.h
↰ Return to documentation for file (include/quantize.h)
#ifndef _QUANTIZE_H_
#define _QUANTIZE_H_
#ifdef __cplusplus
extern "C" {
#endif
#include "nn_api.h"
#define BITS_PER_BYTE 8
unsigned int type_get_bytes(const int type);
int get_stride(int data_format);
unsigned int type_get_bits(const int type);
unsigned int get_element_num(const uint32_t *sizes, unsigned int num_of_dims);
uint16_t fp32_to_fp16(float f);
void asym_affine_u8(uint8_t *out_ptr, float value, float q_scale, int q_zero);
void dynamic_fix_point_i8(int8_t *out_ptr, float value, int fl);
void dynamic_fix_point_i16(int16_t *out_ptr, float value, int fl);
int quantize_vector(uint8_t *output, const float *input, pnna_buffer_create_params_t params);
int dtype_to_float32_scalar(float *dst, unsigned char *src, const int data_format,
const int quant_format, const signed char fixed_point_pos,
const float scale, const int zeroPoint);
int float32_to_dtype_scalar(unsigned char *dst, float src, const int data_format,
const int quant_format, const signed char fl,
const float scale, const int zerop);
void asym_affine_vector(uint8_t *output, const float *input, const int size, const int stride,
const float scale, const int zeropoint, int data_type);
void dynamic_fix_point_vector(uint8_t *output, const float *input, const int size,
const int stride, const int fl, int data_type);
void asym_affine_inverse_vector(float *output, void *input, const int size,
const float scale, const int zeropoint, int data_type);
void dynamic_fix_point_inverse_vector(float *output, void *input,
const int size, const int fl, int data_type);
void float_to_fp16_vector(uint8_t *output, const float *input,
const int size, const int stride);
void fp16_to_float_vector(float *output, short *input, const int size);
int get_input_quantize_param(pnna_buffer_create_params_t *params,
pnna_network network, uint32_t index);
int get_output_quantize_param(pnna_buffer_create_params_t *params,
pnna_network network, uint32_t index);
uint32_t get_data_size(const uint32_t *sizes, uint32_t num_of_dims, int data_type);
int nn_dequantize_vector(buffer_t *output_data, buffer_t *input_data,
pnna_buffer_create_params_t *qp, uint32_t counts);
#ifdef __cplusplus
}
#endif
#endif // !_QUANTIZE_H_