(二)MNN aarch64平台交叉编译

MNN是一个非常实用的深度学习推理框架,今天在华为笔记本ubuntu18.04上进行MNN的交叉编译,并在nvidia jeston进行部署(没有其他扳子可以用)

1、硬件配置

jeston的配置如下:

2、环境配置

(1) MNN选择master版本(1.2.0tag版本有错误)

(2)下载linaro交叉编译环境, 我的是aarch64,Linaro Releaseshttps://releases.linaro.org/components/toolchain/binaries/7.4-2019.02/aarch64-linux-gnu/选择7.4版本

(3)编译MNN,在MNN目录下,注意编译器选的路径位置

mkdir build && cd build
cmake .. \
-DCMAKE_BUILD_TYPE=Release \
-DMNN_BUILD_DEMO=ON \
-DMNN_BUILD_BENCHMARK=true \
-DMNN_BUILD_CONVERTER=true \
-DMNN_BUILD_QUANTOOLS=true \
-DMNN_USE_INT8_FAST=true \
-DMNN_BUILD_TEST=true\
-DMNN_OPENCL=ON \
-DCMAKE_SYSTEM_NAME=Linux \
-DCMAKE_SYSTEM_VERSION=1 \
-DCMAKE_SYSTEM_PROCESSOR=aarch64 \
-DCMAKE_INSTALL_PREFIX=/gzy_mnt/MNN_OPENCL_INSTALL \
-DCMAKE_C_COMPILER=/home/gzy/Test/gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-gcc \
-DCMAKE_CXX_COMPILER=/home/gzy/Test/gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-g++
make -j8 

直接在x86编译平台进行编译

mkdir build && cd build
cmake .. \
-DCMAKE_BUILD_TYPE=Release \
-DMNN_BUILD_DEMO=ON \
-DMNN_BUILD_BENCHMARK=true \
-DMNN_BUILD_CONVERTER=true \
-DMNN_BUILD_QUANTOOLS=true \
-DCMAKE_INSTALL_PREFIX=/gzy_mnt/MNN_OPENCL_INSTALL \
make -j8 

(4)编译完成和清理

将build目录下的benchmark.out、工程目录下bencmark/models文件夹(全是mnn模型库)、建立lib文件夹(放libMNN_Express.so、libMNN.so)拷贝到扳子上,目录如下:

或者进行下面操作

make install

将会把编译结果放在结果中

 3、测试

将lib添加道系统库路径下:

vim ~/.bashrc

添加

 进入目录进行测试

benchmark.out models_folder [loop_count] [warmup] [forwardtype] [numberThread] [precision]
./benchmark.out ./models 100 10 0

输出结果为:

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值