安装目录
写在前面
博主这里装的是cuda11.7,最后一步tensorRT运行的时候有个pycuda的安装,它的最新版本只支持到cuda11.6,所以博主最后是又把cuda11.7卸载后重新安装了11.6,安装过程和11.7一样。pytorch对应的版本也应该修改,但过程都一样。
下载地址:cuda下载官网链接
1.1、cuda版本选择
这里有个前置工作需要搞清楚的,就是自己的显卡支持的cuda版本。
点击电脑左下角开始菜单找到
点击【帮助】下【系统信息】
点击【组件】:
即可查看显卡适配的cuda版本,要<=CUDA Driver Version。此处即<=12.0。
博主安装的是11.7。
1.2、下载安装
这里选择默认目录即可,是个安装过程的临时目录,结束后此文件夹会被自动删除。需要注意的是这里并非指定安装目录,若需要指定安装目录,此处需与指定安装目录不同。
下载地址:cudnn官网下载
选择适配所选cuda版本以及系统的cudnn下载。
下载后解压。直接将其4个文件拷入到上述cuda的安装目录下:
注意直接复制粘贴即可,会自动合并。
查看是否安装成功:打开cmd终端,输入命令行:
nvcc -V
输出如下信息即表示cuda安装成功。
测试cudnn是否安装成功:测试目录D:\CUDA11.7\extras\demo_suite
目录下两个exe文件后是否出现跑“pass”,出现即为安装成功。
下载地址:pytorch官网下载
查看适配cuda的pytorch版本。
如有需要可以新建虚拟环境后安装pytorch:
conda create -n your_env_name python=3.8
创建好之后激活虚拟环境:
conda activate your_env_name
可以看到左边的环境已经切换为新建的“jpytorch”。
博主的是cuda11.7,使用如下命令即可安装:
如果中途因为联网失败错误可以直接再次执行安装代码,安装完成后会出现“done”字样。
最后进入Python环境中测试torch是否成功安装。
Pythonimport torchtorch.cuda.is_available()
下载地址:tensorRT官网下载
有EA和GA两种版本,EA 版本代表抢先体验(在正式发布之前)。GA 代表通用性。 表示稳定版,经过全面测试。建议用GA。
下载解压后将bin以及include文件夹复制粘贴到步骤一种cuda安装目录下,同cudnn,直接复制粘贴会自动合并;注意这里lib文件夹不能直接复制合并,因为它里边的文件夹需要复制到cuda/lib中D:\CUDA11.7\lib\x64
目录下,因此后续还需要为此新建一个环境变量。
再将lib中的文件拷贝到cuda的lib/x86目录下:
添加环境变量
将上图的目录拷贝后添加到环境变量中,右键此电脑,【高级系统设置】→【环境变量】到如下界面:
添加完成后重启计算机。
终端进入到下载的tensorRT文件夹Python目录下,安装下载的tensorRT中的.whl文件,Python目录下:
博主是用的Python3.8,所以这里选择cp38。
终端进入到此目录,通过pip安装:
//可以先更新一下pip install --upgrade pip --user//安装pip install tensorrt-8.4.1.5-cp38-none-win_amd64.whl//测试import tensorrt as trtprint(trt.__version__)
注意上图的红色框框,是因为博主环境变量配置的问题。正确配置后即可查看安装的tensorRT版本了。
最后一步测试是切到下载的tensorrt文件夹下\TensorRT-8.4.1.5\samples\python\network_api_pytorch_mnist
目录,进入Python环境运行sample.py
。
可能会出现上图错误,缺少pycuda。安装就好啦。
pycuda版本查看:网址
这里如果缺少pycuda,直接通过pip install pycuda
是默认安装最新版本不一定和已装环境匹配,可以下载后pip install pycuda-2022.1+cuda116-cp38-cp38-win_amd64.whl
安装。
pycuda版本解释:
如:pycuda-2022.1+cuda116-cp38-cp38-win_amd64.whl
pycuda‑2022.1表示pycuda版本为 2022.1
cuda116表示对应cuda版本为11.6
cp38表示Python解释器版本为3.8。
如果有出错,多试几次。
安装完成后再运行:
如上图即为安装成功啦。
来源地址:https://blog.csdn.net/qq_37346140/article/details/129708653