在使用tinymaix架构移植时要注意库的连接
以及各个文件之间的联系#include
#include "../TinyMaix/tinymaix.h" 每个从文件中均有
1、@ arch_xxx.h (此文件无需修改只需构建连接库)
采用不同的点积加速器;在这里我们暂时采用arch_cpu.h,cpu加速;可以使用arch_rv32p.h,使用点积加速
TinyMaix使用基础的点积函数加速卷积运算
你需要在src里添加arch_xxx_yyy.h, 并加上你自己平台的点积加速函数:
```
TM_INLINE void tm_dot_prod(mtype_t* sptr, mtype_t* kptr,uint32_t size, sumtype_t* result);
```
2、@ tinymaix.c (此文件为每个模型库都具有的main转化而来,均可参照minst下的main.c文件,添加无需任何修改,在添加时注意连接到模型库)
会出现两个错误无须修改
加载模型
在此文件中主要为输入打印模型、模型比对结果
3、@ tinymaix.h (无须修改,直接使用若想在架构中加入执行函数需以下)
4、@ tm_layers.c (此文件包含以下打印信息,直接调用无须修改)
TML_CONV2D: 000~002 (模型卷积层)
TML_GAP:
TML_FC
TML_SOFTMAX
5、@ tm_model.c (此文件为模型运行文件无需修改直接调用,同上 tm_layers.c 均为此类打印做工作)
6、@ tm_port.h (此文件需修改采用的点积加速器类型以及各类配置具体根据移植的模型类型决定,此文件打印模型运行时间)
7、@ tm_start.h (此文件直接调用无需修改)
问题发现与解决:
1、解决exp问题
2、解决in“L0”