Ubuntu下TensorRT的安装和torch2trt的配置及使用

目录

1、环境需求

2、安装tensorrt 7.2.2.3

​3、安装tensorrt7.2.2.3

4、下载torch2trt

5、设置torch2trt

6、运行torch2trt的demo

错误说明

torch2trt是NVIDIA官方给出的将pytorch模型转换为tensorrt引擎的工具。

1、环境需求

tensorrt 7.2.2.3(注意如果你的版本是tensorrt 8的,之后使用torch2trt会报错,具体之后我会说明)。

python = 3.8

至于cuda和cuDNN ,下载tensorrt 7.2.2.3的时候会自动下载相应的版本。

2、安装tensorrt 7.2.2.3

创建名为tensorrt的虚拟环境

conda create -n tensorrt python=3.8

安装pytorch框架

pytorch官网找到相应的版本进行下载,指令如下:

pip install torch==1.9.0+cu111 torchvision==0.10.0+cu111 torchaudio==0.9.0 -f https://download.pytorch.org/whl/torch_stable.html

3、安装tensorrt7.2.2.3

参考了TensorRT 笔记 - 在 Conda 虚拟环境中安装 

pip install nvidia-pyindex
pip install nvidia-tensorrt==7.2.2.3

4、下载torch2trt

GitHub - NVIDIA-AI-IOT/torch2trt: An easy to use PyTorch to TensorRT converter

5、设置torch2trt

官方提供了3种设置,如图所示:

option1指的是没有插件,option2指的是有插件,插件的作用是支持使用pytorch中有的而tensorrt中没有的一些操作,option3支持实验性社区贡献的功能。这里我是使用的第1种设置。

注意:这里我试过用option2的方式设置,但是会出现如下图所示的错误:

官方的解释option2需要pytorch1.3+版本进行序列化,而我的pytorch版本是1.10的,因此就是用的option1.。

配置好之后,按照下图的方式测试torch2trt是否可用,如果不报错,便是torch2trt测试成功。

 

6、运行torch2trt的demo

import torch
from torch2trt import torch2trt
from torchvision.models.alexnet import alexnet

# create some regular pytorch model...
model = alexnet(pretrained=True).eval().cuda()

# create example data
x = torch.ones((1, 3, 224, 224)).cuda()

batch_size = 1
# convert to TensorRT feeding sample data as input
model_trt = torch2trt(model, [x])

y = model(x)
y_trt = model_trt(x)

# check the output against PyTorch
print(torch.max(torch.abs(y - y_trt)))
print(f"pytorch:{model}")
print(f"trt:{model_trt}")

torch.save(model_trt.state_dict(), 'alexnet_trt.pth')

结果:

错误说明

由于我之前使用的是tensorrt 8版本的,所以运行demo会报错

AttributeError: 'tensorrt.tensorrt.Builder' object has no attribute 'max_workspace_size'

官方的建议是使用tensorrt7.2版本的。AttributeError: 'tensorrt.tensorrt.Builder' object has no attribute 'max_workspace_size' · Issue #557 · NVIDIA-AI-IOT/torch2trt · GitHub

使用指令下载tensotensorrt7.2*版本的出错,参见第三步,安装tensorrt 7.2.3

 

 

  • 6
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
安装torch2trt有以下几个步骤: 1. 首先,你需要克隆torch2trt的GitHub仓库并安装它。在命令行中运行以下命令: ``` git clone https://github.com/NVIDIA-AI-IOT/torch2trt cd torch2trt python setup.py install ``` 这将克隆项目源代码并安装torch2trt。 2. 接下来,你需要安装一些依赖项。在命令行中运行以下命令: ``` pip install onnx cython ``` 这将安装ONNX和Cython。 3. 然后,你需要安装pycuda。你可以从以下链接下载pycuda的离线安装包并进行安装:[https://pypi.org/project/pycuda/2022.1/#history](https://pypi.org/project/pycuda/2022.1/#history) 4. 最后,你需要安装TensorRT。你可以从NVIDIA开发者网站的以下链接下载TensorRT:[https://developer.nvidia.com/tensorrt](https://developer.nvidia.com/tensorrt) 完成上述步骤后,你就成功地安装torch2trt。你可以开始使用它来将PyTorch模型转换为TensorRT模型进行推理了。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [【TensorRTtorch2trt安装使用简例](https://blog.csdn.net/dou3516/article/details/124538557)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [Win10 安装 Tensorrttorch2trt教程](https://blog.csdn.net/sanxiaw/article/details/127882541)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值