当前位置: 首页 > article >正文

tensorRT安装详解(linux与windows)

目录

tensorRT介绍

前置准备

安装cuda与cudnn

linux

windows

cuda版本查看

下载安装包

linux安装

安装

安装验证

windows安装

安装

环境变量配置

安装验证


tensorRT介绍

有关tensorRT的介绍见

TensorRT简介-CSDN博客

前置准备

安装cuda与cudnn

linux

Linux下安装cuda和对应版本的cudnn_linux怎么在自己的环境中安装cuda和cudnn-CSDN博客

windows

windows安装cuda与cudnn-CSDN博客

cuda版本查看

linux与windows均可使用以下命令查看cuda版本

nvcc -V

下载安装包

进官网查看对应自己cuda版本的tensorRT

TensorRT Download | NVIDIA Developer

官网页面打开如下所示, 每个版本的tensorRT都有对应操作系统与cuda版本的说明

注意,win11只能只有tensorRT10支持

linux下我们以安装tensorRT8为例,如下图所示 ,第一个红色框是cuda11对应的安装包,第二个红色方框是cuda12对应的安装包,找到自己对应cuda版本的安装包即可,建议下载tar包,安装比较方便

同理,windows11下只要tensorRT10支持,如下图所示,仍旧找到自己的安装包下载即可

linux安装

安装

下载好安装包后,将文件解压至 /usr/local,如下所示

 然后将tensorrt的头文件和库文件加入到环境变量中,配置~/.bashrc文件

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/TensorRT-8.5.3.1/lib
export C_INCLUDE_PATH=$C_INCLUDE_PATH:/usr/local/TensorRT-8.5.3.1/include
export CPLUS_INCLUDE_PATH=$CPLUS_INCLUDE_PATH:/usr/local/TensorRT-8.5.3.1/include

 添加完路径后使配置文件生效

source ~/.bashrc

安装验证

进入到 /usr/local/TensorRT-8.5.3.1/samples/sampleOnnxMNIST路径下,执行

sudo make

进入/usr/local/TensorRT-8.5.3.1/bin目录,运行可执行文件sample_onnx_mnist,如果编译和运行过程都没有问题则说明tensorrt安装成功,运行结果如下

 

windows安装

安装

首先找到自己cuda的安装路径,打开cmd命令行窗口,输入

which nvcc

如果cuda安装成功,会显示cuda的安装路径

/c/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.1/bin/nvcc

 然后解压下载的tensorRT安装包,将tensorRT中lib目录和include目录中的文件内容都拷贝到cuda对应的目录文件下

环境变量配置

右键“此电脑”,点击"属性",点击“高级系统设置”,即可打开系统属性面板

也可以在搜索框输入“编辑系统环境变量”,也可打开下述面板

然后点击环境变量

用户变量一栏,点击Path

 点击“新建”,将对应TensorRT解压的文件夹下的bin目录路径,以及cuda安装目录下的lib目录、include目录,以及lib下的x64目录路径设置进去,如下所示

 然后逐步点击“确定”,直到所有面板关闭,一定不要直接点右上角关闭,否则配置会失败

安装验证

打开cmd命令窗口,输入

trtexec --help

如果显示以下帮助信息,说明TensorRT中的trtexec程序可用,否则检查trtexec程序(TensorRT解压安装包的bin目录下)的环境变量是否配置正确

接下来代码验证trtexec是否可成功执行,打开python,写下如下python代码,更多代码细节见

PyTorch模型转换ONNX 入门-CSDN博客

import torch
import torchvision.models as models
import onnx
import onnxruntime
 
# 加载 PyTorch 模型
model = models.resnet18(pretrained=True)
model.eval()
 
# 定义输入和输出张量的名称和形状
input_names = ["input"]
output_names = ["output"]
batch_size = 1
input_shape = (batch_size, 3, 224, 224)
output_shape = (batch_size, 1000)
 
# 将 PyTorch 模型转换为 ONNX 格式
torch.onnx.export(
    model,  # 要转换的 PyTorch 模型
    torch.randn(input_shape),  # 模型输入的随机张量
    "resnet18.onnx",  # 保存的 ONNX 模型的文件名
    input_names=input_names,  # 输入张量的名称
    output_names=output_names,  # 输出张量的名称
    dynamic_axes={input_names[0]: {0: "batch_size"}, output_names[0]: {0: "batch_size"}}  # 动态轴,即输入和输出张量可以具有不同的批次大小
)
 
# 加载 ONNX 模型
onnx_model = onnx.load("resnet18.onnx")
onnx_model_graph = onnx_model.graph
onnx_session = onnxruntime.InferenceSession(onnx_model.SerializeToString())
 
# 使用随机张量测试 ONNX 模型
x = torch.randn(input_shape).numpy()
onnx_output = onnx_session.run(output_names, {input_names[0]: x})[0]
 
print(f"PyTorch output: {model(torch.from_numpy(x)).detach().numpy()[0, :5]}")
print(f"ONNX output: {onnx_output[0, :5]}")

如果代码运行不成功,查看pytorch是否安装、onnx模块是否安装、onnxruntime模块是否安装

如果代码运行成功,会在本地输出一个mymodel.onnx文件

接下来打开该文件所在路径,打开cmd,输入

trtexec --onnx=mymodel.onnx --saveEngine=model.trt

如果运行成功,说明TensorRT安装成功

如果这里运行失败,检查环境变量是否配置正确 

参考

ubuntu20.04 安装TensorRT c++库 - Wangtn - 博客园 (cnblogs.com)

TensorRT安装部署指南(Windows10) - 知乎 (zhihu.com)


http://www.kler.cn/a/355011.html

相关文章:

  • P1596 [USACO10OCT] Lake Counting S 洛谷 -池塘计数
  • 问题解决:发现Excel中的部分内容有问题。是否让我们尽量尝试恢复? 如果您信任此工作簿的源,请单击“是”。
  • DP动态规划(装箱问题)
  • 5G -- 5G网络架构
  • leetcode之hot100---240搜索二维矩阵II(C++)
  • 未来将要被淘汰的编程语言
  • Redis总结(官方文档解读)
  • 【工具篇】MLU运行XInference部署手册
  • 安全见闻笔记
  • 春日学习伴侣:Spring Boot答疑平台
  • 03.顺序表实现
  • JS_用发布订阅模式解耦
  • 云手机:社交平台运营的热门工具
  • 王爽汇编语言第三版实验1
  • 基于springboot的学习平台系统
  • 两种常见的磁盘分区样式及它们的区别总结
  • HttpUtils 详解
  • k8s jenkins 2.421动态创建slave
  • linux 内核如何读取你配置好的.config文件
  • 【CentOS】Shell脚本案例:归档文件
  • C++从入门到起飞之——红黑树 全方位剖析!
  • 【Flutter 面试题】 Flutter如何使用路由、全局错误捕获和自定义组件统一管理错误页面?
  • SpringBoot3响应式编程全套-R2DBC
  • 模板方法设计模式
  • hdfs API操作 hadoop3.3.5
  • java项目技术架构图-样例