Data Types and Enumerations
Format
enum Format { FORMAT_NCHW = 0, // NCHW FORMAT_NHWC, // NHWC FORMAT_ND, // Nd Tensor FORMAT_NC1HWC0, // NC1HWC0 FORMAT_FRACTAL_Z, // FRACTAL_Z FORMAT_NC1C0HWPAD, FORMAT_NHWC1C0, FORMAT_FSR_NCHW, FORMAT_FRACTAL_DECONV, FORMAT_C1HWNC0, FORMAT_FRACTAL_DECONV_TRANSPOSE, FORMAT_FRACTAL_DECONV_SP_STRIDE_TRANS, FORMAT_NC1HWC0_C04, // NC1HWC0, C0 =4 FORMAT_FRACTAL_Z_C04, // FRACZ, C0 =4 FORMAT_CHWN, FORMAT_FRACTAL_DECONV_SP_STRIDE8_TRANS, FORMAT_HWCN, FORMAT_NC1KHKWHWC0, // KH,KW kernel h& kernel w maxpooling max output format FORMAT_BN_WEIGHT, FORMAT_FILTER_HWCK, // filter input tensor format FORMAT_HASHTABLE_LOOKUP_LOOKUPS = 20, FORMAT_HASHTABLE_LOOKUP_KEYS, FORMAT_HASHTABLE_LOOKUP_VALUE, FORMAT_HASHTABLE_LOOKUP_OUTPUT, FORMAT_HASHTABLE_LOOKUP_HITS = 24, FORMAT_C1HWNCoC0, FORMAT_MD, FORMAT_NDHWC, FORMAT_FRACTAL_ZZ, FORMAT_FRACTAL_NZ, FORMAT_NCDHW, FORMAT_DHWCN, // 3D filter input tensor format FORMAT_NDC1HWC0, FORMAT_FRACTAL_Z_3D, FORMAT_CN, FORMAT_NC, FORMAT_DHWNC, FORMAT_FRACTAL_Z_3D_TRANSPOSE, // 3D filter(transpose) input tensor format FORMAT_FRACTAL_ZN_LSTM, FORMAT_FRACTAL_Z_G, FORMAT_RESERVED, FORMAT_ALL };
DataType
enum DataType { DT_FLOAT = 0, // float type DT_FLOAT16 = 1, // fp16 type DT_INT8 = 2, // int8 type DT_INT16 = 6, // int16 type DT_UINT16 = 7, // uint16 type DT_UINT8 = 4, // uint8 type DT_INT32 = 3, // DT_INT64 = 9, // int64 type DT_UINT32 = 8, // unsigned int32 DT_UINT64 = 10, // unsigned int64 DT_BOOL = 12, // bool type DT_DOUBLE = 11, // double type DT_STRING = 13, // string type DT_DUAL_SUB_INT8 = 14, /**< dual output int8 type */ DT_DUAL_SUB_UINT8 = 15, /**< dual output uint8 type */ DT_COMPLEX64 = 16, // complex64 type DT_COMPLEX128 = 17, // complex128 type DT_QINT8 = 18, // qint8 type DT_QINT16 = 19, // qint16 type DT_QINT32 = 20, // qint32 type DT_QUINT8 = 21, // quint8 type DT_QUINT16 = 22, // quint16 type DT_RESOURCE = 23, // resource type DT_STRING_REF = 24, // string ref type DT_DUAL = 25, /**< dual output type */ DT_UNDEFINED // Used to indicate a DataType field has not been set. };
Struct UsrQuantizeFactor
struct UsrQuantizeFactor { public: //QuantizeScaleMode scale_mode; UsrQuantizeScaleMode scale_mode{USR_NORMAL_MODE}; std::vector<uint8_t> scale_value; int64_t scale_offset{0}; std::vector<uint8_t> offset_data_value; int64_t offset_data_offset{0}; std::vector<uint8_t> offset_weight_value; int64_t offset_weight_offset{0}; std::vector<uint8_t> offset_pad_value; int64_t offset_pad_offset{0}; USR_TYPE_DEC(UsrQuantizeScaleMode, scale_mode); USR_TYPE_BYTES_DEC(scale_value); USR_TYPE_DEC(int64_t, scale_offset); USR_TYPE_BYTES_DEC(offset_data_value); USR_TYPE_DEC(int64_t, offset_data_offset); USR_TYPE_BYTES_DEC(offset_weight_value); USR_TYPE_DEC(int64_t, offset_weight_offset); USR_TYPE_BYTES_DEC(offset_pad_value); USR_TYPE_DEC(int64_t, offset_pad_offset); };
Struct TensorDescInfo
struct TensorDescInfo { Format format_ = FORMAT_RESERVED; /* tbe op register support format */ DataType dataType_ = DT_UNDEFINED; /* tbe op register support datatype */ };
Format is an enumerated type. For details about the definition, see Format.
DataType is an enumerated type. For details about the definition, see DataType.
GetSizeByDataType
Function
Obtains the memory size occupied by data_type that is transferred.
Syntax
int GetSizeByDataType(DataType data_type)
Parameter Description
Parameter |
Input/Output |
Description |
---|---|---|
data_type |
Input |
Data type. For details, see DataType. |
Return Value
Size of the memory occupied by data_type, in bytes. If an invalid value or an unsupported data type is transferred, –1 is returned.
Exception Handling
None
Restriction
None