RTX3090+win10+CUDA11.6+cudnn8.5.0+pytorch1.12.1 环境——个人配置经验

Posted zxm_

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了RTX3090+win10+CUDA11.6+cudnn8.5.0+pytorch1.12.1 环境——个人配置经验相关的知识,希望对你有一定的参考价值。

主要参考博客:
Ubuntu20.04+RTX3090ti+cuda11.6+cudnn8.4.1+pytorch安装过程记录

配置时间:2022.9.14
以下是我亲测有效的使用 RTX 3090 的各部分安装版本:
电脑系统:window 10
python版本:3.8.13
pytorch版本:1.12.1
CUDA版本:11.6
cuDNN版本:8.5.0

以下是我个人安装教程,仅供参考,如果出现新问题我恐怕可不能解决,谨慎参考,大神请随意~

文章目录

第一步:安装Anaconda

注意!!!注意安装的Anaconda是64位的,不然后面的pytorch不能找到对应版本!!!
第一次失败:
后续安装pytorch时一直报错Solving environment: failed with initial frozen solve. Retrying with flexible solve.
网上查说是版本不对应的问题,一开始一直以为是python版本的问题,最后才发现是anaconda的版本错了。Anaconda装成32位的,还一直傻傻没有发现。。。

检查版本 conda info

重新安装了64位的Anaconda

根据提示安装即可。

第二步:新建环境

1、打开anaconda prompt
2、命令行输入:conda create --name pytorch_gpu python=3.8
python_gpu为anaconda下虚拟环境名称

3、如果要启用创建的环境,输入指令:conda activate pytorch_gpu
关闭该环境的话,输入指令:conda deactivate

第三步:Cuda安装

建议安装CUDA之前先安装VS

不知道为什么,网上教程这样建议的,于是我还是安装了,一定不要装在c盘!!!!!
可选VS2013,体量小。
我直接官网下载,装的VS2019版本,选择C++开发工具即可。


Driver Version:512.50
CUDA Version:11.6

虽然自带CUDA,但是为了保险起见,重新安装CUDA和cuDNN
注意,安装完重启,否则nvcc -V可能没变

1、进入官网检查版本对应
https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html

考虑到越新的版本可能对运算有优化,这里安装11.6版本

2、下载安装包
CUDA下载网站,无需注册
https://developer.nvidia.com/cuda-toolkit-archive


根据提示安装即可

第四步:cudnn安装

1、检查cudnn是否安装
cmd下输入命令:nvcc -V
如果已经安装会出现详细信息,注意,CUDA安装完重启,否则nvcc -V可能没变
cudnn安装好后:

2、下载安装包
cuDNN网址
https://developer.nvidia.com/cuDnn

下载cuDNN需要注册NVIDIA账号并登录,我使用163邮箱可以正常收发邮件。邮箱验证完后,补全一些信息即可。

我下载的是最新版本:cudnn8.5.0

4、安装cudnn
安装CUDA完毕后

解压cuDNN压缩包,复制以下所有内容。

打开路径
C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v11.6

将刚才复制的内容粘贴到该文件夹。
这里与Win10+CUDA11.0+RTX 3060ti GPU深度学习主机 pytorch 环境相似,大体上是这样


完成。

检查:查看CUDA和CUDNN是否安装成功(conda 环境)

安装pytorch

按照官网建议 https://pytorch.org/get-started/locally/

激活环境后安装

conda install pytorch torchvision torchaudio cudatoolkit=11.6 -c pytorch -c conda-forge

根据提示安装即可。

测试

全部安装好后测试,参考博客 查看Pytorch是否使用GPUpytorch - 查看pytorch、cuda、cuDNN版本

import torch
print("Pytorch version:")
print(torch.__version__)
print("CUDA Version: ")
print(torch.version.cuda)
print("cuDNN version is :")
print(torch.backends.cudnn.version())

print("torch.cuda.is_available():",torch.cuda.is_available())           # cuda是否可用
print("torch.cuda.current_device():",torch.cuda.current_device())       # 返回当前设备索引
print("torch.cuda.device_count():",torch.cuda.device_count())           # 返回GPU的数量
print("torch.cuda.get_device_name(0):",torch.cuda.get_device_name(0))   # 返回gpu名字,设备索引默认从0开始


cudnn的版本不知道为啥子不一样,不过应该是可以用~

备注

1、jupyter运行

配置:Jupyter Notebook切换python运行环境
注意配置环境变量!

运行 :anaconda prompt

cd / 路径
jupyter notebook ./

2、tensorflow-gpu安装

1、新建环境

conda create --name tf_gpu python=3.8

2、版本对应

3、tensorflow_gpu安装

参考博客:安装tensorflow的GPU版本(详细图文教程)–CUDA11.6的安装

pip install -U tensorflow-gpu -i https://pypi.tuna.tsinghua.edu.cn/simple


帮我安装的tensorflow_gpu2.10.0

python3.8.13

4、测试

import tensorflow as tf
tf.test.is_gpu_available()


应该是没什么问题。

3、环境相关

克隆环境
如果要启用创建的环境:

conda activate pytorch_gpu

关闭该环境的话:

conda deactivate

查看环境

conda info --envs
# 或者
conda env list

删除环境
其中yyy是要卸载的环境名

conda uninstall -n yyy --all 

把本地的AAA环境克隆成BBB

conda create -n BBB --clone AAA

4、Pycharm运行问题

pycharm 运行测试代码时,报错:
Original error was: DLL load failed while importing _multiarray_umath: 找不到指定的模块。

经过百度:
应该时numpy版本问题,激活环境后,重装numpy
conda uninstall numpy
conda install numpy


完结撒花~

Caffe-windows + Cuda10 + cudnn7.3.0 + RTX2080 Ti + Python 3.5 + Win10 + VS2017

caffe_windows : https://github.com/BVLC/caffe/tree/windows
VS2017: VS2017 professional
Cuda10: [cuda_10.0.130_411.31_win10.exe] 【大小2.1G,好像自带显卡驱动?】(https://developer.nvidia.com/compute/cuda/10.0/Prod/local_installers/cuda_10.0.130_411.31_win10)
cudnn7.3.0: cudnn-10.0-windows10-x64-v7.3.0.29.zip
RTX2080Ti: Turing 架构
Python3.5: python3.5.4
Win10: Win10 版本号 1803. 刚安装的Win10系统版本号是1703,好像无法安装Nvidia显卡驱动(不记得还是其他原因),因此需要将系统更新升级为1803。
Cmake: cmake-3.13.0-win64-x64
Matlab: Matlab2016b
#####################################
后遗症::win10电脑会死机,caffe 经常会不定时的出现如下的运行时错误(有时候能正确的完成运行,有时候就会在某次迭代中断):

it: 15869 loss1: 0.3009911775588989 loss2: 0.000463328417390585
it: 15870 loss1: 0.2962459325790405 loss2: 0.0004235844593495131
it: 15871 loss1: 0.3099851906299591 loss2: 0.0009147725999355317
it: 15872 loss1: 0.29593050479888916 loss2: 0.00031767517793923616
it: 15873 loss1: 0.2969663143157959 loss2: 0.00037221238017082214
it: 15874 loss1: 0.29857179522514343 loss2: 0.0003736394457519055
it: 15875 loss1: 0.3033006191253662 loss2: 0.0006987718865275384
it: 15876 loss1: 0.3066413104534149 loss2: 0.0004248021170496941
F1130 11:37:46.790082 11012 math_functions.cu:79] Check failed: error == cudaSuccess (4 vs. 0) unspecified launch failure
*** Check failure stack trace: ***

######################################
2018/12/02 更新::
卸载cuda10所有相关程序(我是将之前装的英伟达的所有产品都卸载掉),然后重新装上2080TI对应的显卡驱动程序,然后装上cuda 9.2。
cuda9.2: cuda_9.2.148_win10.exe
cudnn7.3.1: cudnn-9.2-windows10-x64-v7.3.1.20.zip
或者cudnn7.1.4: cudnn-9.2-windows10-x64-v7.1.zip
(考虑到tensorflow:[tensorflow_gpu-1.9.0-cp36-cp36m-win_amd64.whl 下载地址:https://github.com/fo40225/tensorflow-windows-wheel], 我采用的cudnn7.1.4)
即将cuda10 换成了 cuda9.2重新编译了caffe,观察是否会出现“Check failed: error == cudaSuccess (4 vs. 0) unspecified launch failure” 错误。
运行了一天,没有再报上面的错误!
2018/12/05 更新:
Caffe 运行正常!
#####################################
需要修改的6个文件

  1. build_win.cmd
  2. Cuda.cmake
  3. WindowsDownloadPrebuiltDependencies.cmake
  4. OpenCVConfig.cmake
  5. nvcc.hpp
  6. cudnn.hpp

路径分别为

  1. E:\\caffe-windows\\scripts\\build_win.cmd
  2. E:\\caffe-windows\\cmake\\Cuda.cmake
  3. E:\\caffe windows\\cmake\\WindowsDownloadPrebuiltDependencies.cmake
  4. E:\\caffe-windows\\scripts\\build\\libraries\\OpenCVConfig.cmake
  5. E:\\caffe-windows\\scripts\\build\\libraries\\include\\boost 1_61\\boost\\config\\compiler\\nvcc.hpp
  6. E:\\caffe-windows\\include\\caffe\\util\\cudnn.hpp

注意:
通过上面的路径可以看出,OpenCVConfig.cmake 和 nvcc.hpp 文件是在执行build_win之后生成的,因此需要在执行完build_win后,进行修改(为了解决build_win执行时的错误)。

修改内容分别如下

修改内容1:build_win.cmd


修改内容2:Cuda.cmake


修改内容3:WindowsDownloadPrebuiltDependencies.cmake

修改内容4:OpenCVConfig.cmake

修改内容5:nvcc.hpp

修改内容6:cudnn.hpp

为了方便正确复制,6个文件的下载地址:
链接:https://pan.baidu.com/s/1iV99eLYTSnCganF57XZ-xg
提取码:3yx4

注释:

  1. 文件中的行号可能与下载的caffe_window原版不严格一致(修改导致的)。
  2. 在修改过程中,请认真检查核对。
  3. 上述过程可能有遗漏的地方,请参考下面的4个文献。
  4. 修改内容2中 gpu_archs: 50 52 60 61 70 75 表示 Turing 兼容的计算能力,详情参考文献2.
  5. 百度云盘下载的WindowsDownloadPrebuiltDependencies.cmake 中,47或者48行被修改了,请修改为原样。

参考文献:
1.https://binvec.me/archives/build_caffe_with_vs2017_in_windows
2.https://docs.nvidia.com/cuda/turing-compatibility-guide/index.html [Turing兼容性]
3.https://blog.csdn.net/qq_20226441/article/details/82788799
4.https://blog.csdn.net/mao_hui_fei/article/details/80326464 [cudnn版本问题】

以上是关于RTX3090+win10+CUDA11.6+cudnn8.5.0+pytorch1.12.1 环境——个人配置经验的主要内容,如果未能解决你的问题,请参考以下文章

Pytorch CUDA 错误:没有内核映像可用于在带有 cuda 11.1 的 RTX 3090 上的设备上执行

PyTorch切记:GeForce RTX 3090 显卡仅支持 CUDA 11 以上的版本!

PyTorch切记:GeForce RTX 3090 显卡仅支持 CUDA 11 以上的版本!

环境问题—服务器RTX3090—Ubuntu20_Anaconda3_CUDA11.4_PyTorch1.10_cudatoolkit11.3_cudnn-8.2.1+Pycharm_apex

环境问题—服务器RTX3090—Ubuntu20_Anaconda3_CUDA11.4_PyTorch1.10_cudatoolkit11.3_cudnn-8.2.1+Pycharm_apex

在Windows10环境安装CUDA11.7及PyTorch1.13--使用Nvidia RTX A4000开始炼丹之旅