Windows+conda+TensorRT

Windows+Anaconda配置TensorRT的教程,通过此教程配置完TensorRT后,可以在Anaconda的虚拟环境内使用TensorRT

本文环境为win10 +conda+cuda11.2

利用conda 创建一个虚拟环境yolov8,

conda create -n yolov8 python=3.9

安装CudaToolKit、安装CUDNN就不在叙述,

安装TensorRT

首先,前往官网下载TensorRT点击这里进行跳转,这一步需要注册为英伟达开发者用户,这里就不再过多介绍了,登录后会出现不同版本的tensorrt资源,如下图所示。
在这里插入图片描述本文使用的是tensorrt版本为8,点击展开,根据系统版本以及cudatoolkit版本选择对应的资源,根据本文背景环境,选择的版本如下图所示:
在这里插入图片描述

配置TensorRT系统环境变量

下载完毕后,进行解压,并且进入lib子文件夹,如下图所示,将路径复制下来,例如,C:\Program Files\TensorRT-8.5.3.1\lib
在这里插入图片描述在这里插入图片描述
在这里插入图片描述

可能出现的问题

import tensorrt时显示找不到nvinfer.dll或者nvparsers.dll等
解决办法:nvinfer.dll或者nvparsers.dll等dll文件时我们解压tensorrt压缩包时复制到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.6\lib文件夹下面的文件,因此只需要将这个文件夹地址添加到系统的环境变量Path中即可。

安装TensorRT依赖,进入刚才解压后的TensorRT文件夹内的python子目录,根据python版本选择好对用的whl文件,如下图所示,利用pip install进行安装(先激活虚拟环境)
在这里插入图片描述pip install C:\Program Files\TensorRT-8.5.3.1\python\tensorrt-8.5.3.1-cp39-none-win_amd64.whl
安装完成后会出现successfully的字样,到这里tensorrt已经安装结束

安装Pycuda

pycuda依赖是封装好的cuda api接口,可以用来申请显存等操作。

前往下载合适的版本,点击这里跳转,如下图所示。

进入下载的位置,拼接好路径,例如:c:\users\admin\downloads\pycuda-2021.1+cuda115-cp38-cp38-win_amd64.whl

进入tensorrt虚拟环境后,输入以下指令安装pycuda

pip install c:\users\admin\downloads\pycuda-2021.1+cuda114-cp39-cp39-win_amd64.whll

在这里插入图片描述

安装完成后会提示successfully installed的信息

测试TensorRT 样例

tensorrt官方提供了可供测试的样例,进入刚才下载好的tensorrt文件夹下面的samples\python\目录下,这里我们选择一个手写数字识别的示例,如下图所示。
在这里插入图片描述

python sample.py

此时会进行训练,并且在训练结束后给出相应的预测结果,如下图所示,到此为止,tensorrt已经彻底安装完毕
在这里插入图片描述可能会出现的问题:

Traceback (most recent call last):File "C:\Program Files\TensorRT-8.5.3.1\samples\python\network_api_pytorch_mnist\sample.py", line 33, in <module>import tensorrt as trtFile "C:\Users\16786\.conda\envs\yolov8\lib\site-packages\tensorrt\__init__.py", line 129, in <module>ctypes.CDLL(find_lib(lib))File "C:\Users\16786\.conda\envs\yolov8\lib\ctypes\__init__.py", line 382, in __init__self._handle = _dlopen(self._name, mode)
FileNotFoundError: Could not find module 'C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.1\bin\cublas64_11.dll' (or one of its dependencies). Try using the full path with constructor syntax.

这种情况具体原因应该是不兼容吧,
解决方法是将C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.1\bin目录下的cublas64_12.dll 复制一份,然后命名为cublas64_11.dll即可,遇到其他类似的问题,依然是复制改名。
在这里插入图片描述

FileNotFoundError: Could not find module 'C:\Program Files\TensorRT-8.5.3.1\bin\cublas64_11.dll' (or one of its dependencies). Try using the full path with constructor syntax. 

是因为Pycuda版本不对

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/526411.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Redis精讲

redis持久化 RDB方式 Redis Database Backup file (redis数据备份文件), 也被叫做redis数据快照. 简单来说就是把内存中的所有数据记录到磁盘中. 快照文件称为RDB文件, 默认是保存在当前运行目录. [rootcentos-zyw ~]# docker exec -it redis redis-cli 127.0.0.1:6379> sav…

Normalizer(归一化)和MinMaxScaler(最小-最大标准化)的区别详解

1.Normalizer&#xff08;归一化&#xff09;&#xff08;更加推荐使用&#xff09; 优点&#xff1a;将每个样本向量的欧几里德长度缩放为1&#xff0c;适用于计算样本之间的相似性。 缺点&#xff1a;只对每个样本的特征进行缩放&#xff0c;不保留原始数据的分布形状。 公式…

提升工作效率,告别Excel,尝试Zoho CRM客户管理!

曾经有客户咨询我们&#xff1a;“EXCEL管理客户功能不够用&#xff0c;但是又觉得CRM管理系统太麻烦&#xff0c;应该如何选择&#xff1f;”这篇文章就告诉您:EXCEL在客户管理方面都有哪些局限性&#xff1f;CRM管理系统都有哪些优势&#xff1f;初创企业应该怎样选择适合的C…

Shell常用脚本:文件或目录一键同步到多台服务器

注意&#xff1a; 将本地文件&#xff0c;同步到【/opt/module/script/xsyncByFileIp.txt】里面的目标机器 xsyncByFile.sh #!/bin/bash# 入参参数个数 argsCount$#if(($argsCount0)); thenecho "同步失败&#xff1a;请输入待同步的文件或者目录" exit; fiecho &q…

二分与前缀和

789. 数的范围 - AcWing题库 import java.util.*;public class Main{static int N 100010;static int[] a new int[N];public static void main(String[] args){Scanner sc new Scanner(System.in);int n sc.nextInt();int m sc.nextInt();for(int i 0; i < n; i ){…

7-16 计算符号函数的值

对于任一整数n&#xff0c;符号函数sign(n)的定义如下&#xff1a; 请编写程序计算该函数对任一输入整数的值。 输入格式: 输入在一行中给出整数n。 输出格式: 在一行中按照格式“sign(n) 函数值”输出该整数n对应的函数值。 输入样例1: 10输出样例1: sign(10) 1输入样…

跨域报错(预请求(OPTIONS)的问题)

查原因 是预请求(OPTIONS)的问题 解决方法&#xff08;后端改&#xff09; 指路博客.NET处理VUE OPTIONS请求问题_.net option请求-CSDN博客

GTH手册学习注解

CPLL的动态配置 终于看到有这个复位功能了 QPLL SWITCHing需要复位 器件级RESET没发现有管脚引出来 两种复位方式&#xff0c;对应全复位和器件级复位 对应的复位功能管脚 改那个2分频的寄存器说明段&#xff0c;复位是自动发生的&#xff1f;说明可能起效了&#xff0c;但是分…

本地GenAI工具箱:Mixlab-nodes

在去年暑期夏令营上&#xff0c;我在[ 人工智能创作与数字艺术 ]这门课上重点讲解了叙事技术的发展&#xff0c;当时市面上没有一体化的解决方案&#xff0c;只能零散地使用各种产品or开源项目。 今年&#xff0c;我们的课程上将使用一体化的解决方案&#xff0c;实践叙事技巧并…

使用 Docker 部署 Stirling-PDF 多功能 PDF 工具

1&#xff09;Stirling-PDF 介绍 大家应该都有过这样的经历&#xff0c;面对一堆 PDF 文档&#xff0c;或者需要合并几个 PDF&#xff0c;或者需要将一份 PDF 文件拆分&#xff0c;又或者需要调整 PDF 中的页面顺序&#xff0c;找到的线上工具 要么广告满天飞&#xff0c;要么 …

果蔬作物疾病防治系统|基于Springboot的果蔬作物疾病防治系统设计与实现(源码+数据库+文档)

果蔬作物疾病防治系统目录 目录 基于Springboot的果蔬作物疾病防治系统设计与实现 一、前言 二、系统设计 三、系统功能设计 1、果蔬百科列表 2、公告信息管理 3、公告类型管理 四、数据库设计 1、实体ER图 五、核心代码 六、论文参考 七、最新计算机毕设选题推…

STM32_3-1点亮LED灯与蜂鸣器发声

STM32之GPIO GPIO在输出模式时可以控制端口输出高低电平&#xff0c;用以驱动Led蜂鸣器等外设&#xff0c;以及模拟通信协议输出时序等。 输入模式时可以读取端口的高低电平或电压&#xff0c;用于读取按键输入&#xff0c;外接模块电平信号输入&#xff0c;ADC电压采集灯 GP…