一、工具安装及使用
1.1 工具的作用
在 CE3226 的平台上快速评测开源模型的性能和精度
1.2 工具的执行流程
1.3 使用benchmark 工具评测Inception-v3(caffe) 模型的性能和精度
1)模型和数据集的准备
模型的下载链接
https://pan.baidu.com/s/1boC0HEf
把模型下载下来以后放到第6 课准备好的宿主机环境的models 文件夹下
在docker 环境中把模型放到/data/models/test_models/models/org_caffe/Inception_V3/路径下,把
iamgenet 数据集放到/data/datasets 路径下。
2) json 文件的准备
把sdk 中ce3226_json.tar.gz 文件包拷贝到宿主机上,然后解压
cd /home/luchengchao/CE3226/0.8.111-20211213/inference
tar -xvf ce3226_json.tar.gz
3) 编译sample_server 中server 端的代码并拷贝到 CE3226 板子上执行
在宿主机docker 中
cd /usr/local/neuware/samples/magicmind/basic_samples/sample_remote/edge
修改build_for_edge.sh 文件为
#!/bin/bash
set -x
if [ ! $ABI_MODE ]; then
ABI_MODE=1
fi
if [ -d "build" ]; then
rm -rf build
fi
mkdir build
pushd build
cmake .. -DABI=${ABI_MODE} -DCMAKE_TOOLCHAIN_FILE=../crosscompile.cmake
make
popd
执行build_for_edge.sh 编译出sample_server 二进制文件
./build_for_edge.sh
在build 文件夹下面就能看到编译出来的sample_server 文件
CMakeCache.txt CMakeFiles Makefile cmake_install.cmake sample_server
把编译出来的sample_server 拷贝到CE3226 板子上,在板子端执行
root@ce3226: ./sample_server
1.4 在宿主机端使用mm_perf_benchmark 和mm_eval_benchmark 工具来评测
模型的性能和精度
性能评测
mm_perf_benchmark --json /inference/inception_v3_int8_mixed_fp16_16batch_mlu3226.json
--ip 10.13.30.66
--mmrs_port 9009
--lib_apath /usr/local/neuware/edge/lib64 \
--server_apath /usr/local/neuware/edge/bin/sample_server \
--mm_run_apath /usr/local/neuware/edge/bin/mm_run \
--cross_compile_toolchain_path /tmp/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-
,→linux-gnu/
精度评测
mm_eval_benchmark --json /inference/inception_v3_int8_mixed_fp16_16batch_mlu3226.json
--ip 10.13.30.66 \
--mmrs_port 9009 \
--lib_apath /usr/local/neuware/edge/lib64 \
--server_apath /usr/local/neuware/edge/bin/sample_server \
--cross_compile_toolchain_path /tmp/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-
,→linux-gnu/
三、内容总结
本博文主要介绍了使用寒武纪提供的 Docker 环境,在 CE3226 中测试运行神经网络模型效果。需要开启必要的环境依赖。
四、参考资料
【1】《Cambricon-MagicMind-Benchmark-Guide-CN-v0.7.0.pdf》
【2】《Lesson7 CE3226 Benchmark评测工具的使用.pdf》
评论