AIfES 2 2.0.0
aifes_math.h
Go to the documentation of this file.
1
28#ifndef AIFES_MATH
29#define AIFES_MATH
30
31#include <stdint.h>
32#include <math.h>
33#include <stdio.h>
34#include <stdlib.h>
35
36#include "aifes_config.h"
37
38
39typedef struct aimath_dtype aimath_dtype_t;
40
41typedef struct aitensor aitensor_t;
42
48 const char *name;
49 uint32_t size;
58 void (*print_aitensor)(const aitensor_t *tensor);
59
67 void (*print_aiscalar)(const void *scalar);
68};
69
92struct aitensor {
94 uint8_t dim;
95 uint16_t *shape;
97 void *data;
98};
99
100
101#endif // AIFES_MATH
Indicator for the used datatype.
Definition: aifes_math.h:47
uint32_t tensor_params_size
Size of the tensor params (for example for quantization parameters) of this type in bytes.
Definition: aifes_math.h:50
void(* print_aiscalar)(const void *scalar)
Set a function to print the given scalar for debugging purposes.
Definition: aifes_math.h:67
void(* print_aitensor)(const aitensor_t *tensor)
Set a function to print the given tensor for debugging purposes.
Definition: aifes_math.h:58
const char * name
Name of the data type (for example "F32")
Definition: aifes_math.h:48
uint32_t size
The size of one data value of this type in bytes.
Definition: aifes_math.h:49
A tensor in AIfES.
Definition: aifes_math.h:92
uint16_t * shape
An array of dim elements with the shape of the tensor for example [2, 3].
Definition: aifes_math.h:95
void * data
Pointer to the actual tensor data.
Definition: aifes_math.h:97
void * tensor_params
Parameters to describe some data properties (for example quantization parameters like zero_point and ...
Definition: aifes_math.h:96
const aimath_dtype_t * dtype
The datatype of the tensor, e.g.
Definition: aifes_math.h:93
uint8_t dim
The number of dimensions.
Definition: aifes_math.h:94