Tensorrt-onnx踩坑指南

首先是安装tensorrt:
参考的博客:
https://arleyzhang.github.io/articles/7f4b25ce/
然后配合着官网文档安装下来基本没啥大问题,这里要注意的一点就是,不管是不是用.tar安装的tensorrt 最好都下载下来,分别安装好python2和python3的whl
在这里插入图片描述
然后是安装onnx-tensorrt:
因为我使用的框架是pytorch都需要先转成onnx再转成tensorrt,onnx-tensor这个库就十分重要。
安装这个库存在大量的陷阱:
步骤一:
官网把库先下载下来:
安装基本流程

$ mkdir build
$ cd build
$ cmake .. -DTENSORRT_ROOT=<tensorrt_install_dir> -DGPU_ARCHS="75"
$ make -j8
$ sudo make install

DGPU_ARCHS="75"要改成自己的显卡算力,我的1050卡就是61

坑1:

CMake Error at CMakeLists.txt:121 (add_subdirectory):
  The source directory

    /home/xxx/Downloads/onnx-tensorrt-master/third_party/onnx

  does not contain a CMakeLists.txt file.

原因是github上下载项目的时候,没有把/onnx-tensorrt-master/third_party/onnx/中的包含的onnx库的东西下载下来,手动下载并复制到该路径下即可。

至此,C++版本的已经安装完毕,这个时候,需要安装Python版本的,坑又出现了。
你需要执行以下部分:

python setup.py build
sudo python setup.py install

python setup.py build的坑

Namespace(action=['build'], build_lib=None, include_dirs=None)
running build
running build_py
running build_ext
building 'onnx_tensorrt.parser._nv_onnx_parser_bindings' extension
swigging nv_onnx_parser_bindings.i to nv_onnx_parser_bindings_wrap.cpp
swig -python -c++ -modern -builtin -o nv_onnx_parser_bindings_wrap.cpp nv_onnx_parser_bindings.i
NvOnnxParser.h:213: Error: Syntax error in input(1).
error: command 'swig' failed with exit status 1

在安装完swig之后(sudo apt-get install swig),Add #define TENSORRTAPI at the top of NvOnnxParser.h, and re-run python setup.py install。

sudo python setup.py install 的坑一

这里在安装依赖pycuda的时候一直提示找不到cuda的路径 即cuda.h 没有这样的文件或目录,但实际上我已经设置CUDA_ROOT并将binCUDA安装的路径添加到PATH环境变量中,所以此错误很奇怪。因此,安装程序应该已经找到cuda.h了我可以看到的内容$CUDA_ROOT/include
原因是因为:找不到nvcc。在下载PyCUDA的源代码并进行检查时setup.py,使用check for nvcc来找出CUDA_ROOTand CUDA_INC_DIR。
而nvcc不可见的原因是CUDA_ROOT为我的用户设置的,但是PATH当在sudo此处运行命令时,这是不可见的。

解决的办法是切换成root用户

sudo su -
pip install pycuda这里这样安装的是python2 还可以用pip3把python3版本也装上 然后安装命令 python也变成python3 setup.py include

sudo python setup.py install 的坑二

找不到python.h,其实就是因为我的python是anaconda环境安装的,这里就需要手动 安装
sudo apt-get install python-dev
sudo apt-get install python3-dev

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值