项目简介
本项目基于TensorFlow Lite Micro(TFLu)和CMSIS-NN库,借助Mbed CLI工具在不同微控制器(MCU)上测试和比较不同神经网络模型的性能。利用CMSIS-NN库加速整数推理计算,可在ARM Cortex - M系列微控制器上实现高效的神经网络推理。
项目的主要特性和功能
- 多模型支持:支持测试和比较不同架构的TensorFlow Lite模型,涵盖量化、剪枝、蒸馏等优化技术。
- 跨平台测试:能在不同微控制器和架构上进行性能测试,助力用户选择适配应用的硬件平台。
- CMSIS-NN加速:集成CMSIS-NN库,显著加速整数推理计算,提升嵌入式设备上神经网络的性能。
- 灵活的编译选项:提供多种编译宏选项,可自定义输入输出长度、基准测试单位、层级基准测试等功能。
- 自动化测试:结合Jupyter Notebook(如LeNet5-on-MNIST)实现模型的自动化比较和部署。
安装使用步骤
设置Mbed环境
运行以下命令加载项目依赖:
bash
mbed config root .
mbed deploy
执行补丁脚本修复已知问题:
bash
./patch-cmsis.sh
编译项目
使用以下命令编译项目:
bash
mbed compile -m auto -t GCC_ARM
对于特定开发板(如NUCLEO-L496ZG),使用以下命令:
bash
mbed compile -m NUCLEO_L496ZG -t GCC_ARM
cp BUILD/NUCLEO_L496ZG/GCC_ARM/mbed.bin /Volumes/NODE_L496ZG
screen /dev/tty.X 9600
配置编译选项
通过定义不同的宏(如INPUT_LENGTH
、OUTPUT_LENGTH
、CYCLES
等)自定义基准测试行为。例如,启用层级基准测试:
bash
mbed compile -m auto -t GCC_ARM -D BENCHMARK_LAYERS
运行基准测试
将生成的.bin
文件烧录到目标设备,通过UART接口读取基准测试结果。使用Jupyter Notebook或其他工具解析UART输出进行性能分析和比较。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】