Tengine-Lite在Nvidia AGX Xavier上的安装

一 说明

由于工作需要,在Nvidia AGX Xavier上使用Tengine-Lite引擎进行模型的推理使用.
Tengine-Lite是什么?
Tengine 由 OPEN AI LAB 主导开发,该项目实现了深度学习神经网络模型在嵌入式设备上的快速、高效部署需求。为实现在众多 AIoT 应用中的跨平台部署,本项目基于原有 Tengine 项目使用 C 语言进行重构,针对嵌入式设备资源有限的特点进行了深度框架裁剪。同时采用了完全分离的前后端设计,有利于 CPU、GPU、NPU 等异构计算单元的快速移植和部署,同时降低评估和迁移成本。

二、部署步骤

1.前期准备(升级cmake,Xavier里的cmake版本只有3.10 不够用的)
升级到Cmake3.22.4,可参考我的另一个博客: https://blog.csdn.net/Boys_Wu/article/details/104940575

但是要注意得去Cmake官网下载ARM架构适配的Cmake包, 不是X86架构的. 如下图的cmake-3.22.4-linux-aarch64.tar.gz就是ARM架构适用的.
在这里插入图片描述
2.setup nvcc enva(有用, 打开~/.bashrc添加进如下内容)

export CUDACXX=/usr/local/cuda/bin/nvcc

添加之后再 source ~/.bashrc 更新环境一下.

3.build

$ git clone -b tengine-lite https://github.com/OAID/Tengine.git  Tengine-Lite #也可以自己下载之后再拷贝到Xavier上
$ cd <tengine-lite-root-dir>  # 进入你的tengine根目录
$ mkdir -p build-linux-cuda && cd build-linux-cuda  #建立编译文件夹并进入
$ cmake -DTENGINE_ENABLE_CUDABACKEND=ON \ -DCUDA_INCLUDE_DIR=/usr/local/cuda-10.2/targets/aarch64-linux/include \ -DCUDA_LIBARAY_DIR=/usr/local/cuda-10.2/targets/aarch64-linux/lib ..   # cmake参数的文件路径一定要设置成自己的,如果不知道在哪里,可以根据下方阿chai的路径进行寻找。
# 开始编译
$ make -j4   #(如果出现权限问题的话则加上sudo)
$ make install  #(如果出现权限问题的话则加上sudo)

三、测试Tengine的例子

测试用的程序文件在如下路径中,为tm_classification_trt

Tengine-Lite/build-linux-cuda/examples/

测试以MobileNet V1为例,测试的模型可在如下链接中下载:

链接: https://pan.baidu.com/s/1Izm0RlLJvwTIkhfQ_NXg5Q  密码: faan

将模型预测师图片下载好导入嵌入式设备中并记住路径,输入如下命令进行测试,模型与图片的路径以自己设置的为准。

./tm_classification_trt -m mobilenet_v1.tmfile -i dog.jpg -g 224,224 -s 0.017,0.017,0.017 -w 104.007,116.669,122.679 -r 10

我们可以看到如下结果:

Tengine plugin allocator TRT is registered.tengine-lite library version: 1.2-devTengine: Try using inference precision TF32 failed, rollback.model file : mobilenet_v1.tmfileimage file : cat.jpgimg_h, img_w, scale[3], mean[3] : 224 224 , 0.017 0.017 0.017, 104.0 116.7 122.7Repeat 1 times, thread 1, avg time 2.91 ms, max_time 2.91 ms, min_time 2.91 ms--------------------------------------8.574147, 2827.880117, 2777.812574, 2787.286457, 2636.357487, 281--------------------------------------

同样我们可以输入如下命令测试纯CPU的推理速度:

./tm_classification -m mobilenet_v1.tmfile -i dog.jpg -g 224,224 -s 0.017,0.017,0.017 -w 104.007,116.669,122.679 -r 10

CPU的推理速度是远远慢于CUDA加速的GPU推理。

四、参考文献及博客.

https://blog.csdn.net/m0_51098223/article/details/124629786
https://aijishu.com/a/1060000000184766

如有侵权, 可以联系删除.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值