Anaconda虚拟环境中安装cuda和cuDNN
踩坑踩坑踩坑!!!
网上很多关于python+pytorch+cuda+cuDNN的教程,作为一只新手小菜鸟,好不容易跟着众多大佬们成功安装了cuda和cuDNN(从官网下载cuda和cuDNN到本地,在本地进行安装并配置了环境变量),并通过了检测!好家伙啊,发现我不会加到虚拟环境里!(事实是不用单独下载cuda和cudnn,可以直接用conda安装)
接着各种查怎么把安装到本地的cuda整到目标虚拟环境里,发现很多是从conda里直接install,不过直接下载会很慢,大多是在conda中直接从清华大学开源软件镜像站 网址中链接(通过channel)下载,或者从清华大学开源软件镜像站下载cuda和cuDNN包,在conda中从本地install,下文会都提到。
踩坑做法:
从Nvidia官网下载cuda10.2并安装到电脑中,no!no!no!不是这样的!
首先,我们要明确,我们是要在虚拟环境中安装cuda和cuDNN!!!只需要在虚拟环境中安装就可以了。
一套整理过的踩坑做法!(在电脑里安装cuda等)
正确做法(两种都可以):
一. 安装包下载到本地,离线安装到虚拟环境中(新手小白不建议哦)
Pytorch1.7.0—GPU安装教程(在中后半部分)
二. 联网下载(在虚拟环境中下载安装,首选此办法)
首先, 在如下位置找到 .condarc 文件以记事本形式打开
将里面的内容,替换成以下内容:(清华的镜像、还有一些其他镜像,下载地址)
(1)原本的内容:
channels: – defaults ssl_verify: true
(2)把(1)中内容替换成:
channels: – http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ – http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/ – http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/ – http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/ – http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/ – https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
– https://conda.anaconda.org/ – http://pypi.douban.com/simple/ – http://mirrors.aliyun.com/pypi/simple/
show_channel_urls: true ssl_verify: false
否则会出现如下错误:
可以创建一个新的虚拟环境安装:
(1)conda create -n env_name python=3.8
(2)conda install pytorch==1.7.0 torchvision==0.8.0 torchaudio==0.7.0 cudatoolkit=10.2 cudnn=7.6.5
也可以在旧的虚拟环境中安装:
conda install pytorch==1.7.0 torchvision==0.8.0 torchaudio==0.7.0 cudatoolkit=10.2 cudnn=7.6.5
到此,已经完成安装啦!
悲催死磕旧环境历程,当个笑话
假设pytorch gpu版已安装。我的旧环境里安装的是 pytorch且 cpuonly,从此,我的悲催历程开始了。
在conda虚拟环境中安装cuda 10.2,其他版本类似,更换版本名即可
从清华大学开源软件镜像站下载
conda install cudatoolkit=10.2 -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/win-64/
直接下载,慢
conda install cudatoolkit=10.2
在conda虚拟环境中安装cuDNN 7.6.5,其他版本类似,更换版本名即可
conda install cudnn=7.6.5 -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/win-64/
或者
conda install cudnn=7.6.5
或者自动匹配版本
conda install cudnn
安装完后,查看list,可以看到已经安装到环境中了
但是!!!
我的天,怎么回事?为啥还是不行呢?
突然想起来,我当时安装pytorch的时候,用的是下面的命令:
conda install pytorch==1.7.0 torchvision==0.8.0 torchaudio==0.7.0 cpuonly -c pytorch(这个是官方给的)
用的是cpuonly!也就是,不能使用gpu的,呜呜呜呜.jpg卸载pytorch,conda uninstall
(1)先卸载Pytorch
conda uninstall pytorch
(2)从国内镜像(清华大学)下载
conda install pytorch==1.7.0 torchvision==0.8.0 torchaudio==0.7.0
或者从官网下载,超级慢
conda install pytorch==1.7.0 torchvision==0.8.0 torchaudio==0.7.0 -c pytorch
再次下载pytorch,还是不行,甚至numpy库崩了,我也崩了呀!!!
含泪conda uninstall numpy
conda install numpy
numpy活了,但是! cuda还是检测不出来??
可能是需要先安装pytorch??再安装cuda??
试试叭:
先全部卸载
conda uninstall cudatoolkit(卸载完这个,cudnn也没了)
conda uninstall cudnn
再下载,如前所述下载方式。
服了,还是不行?!我无了呀!
可能是torch和cuda必须一起安装?如果分开会认为安装的torch是cpu版的?
毁灭吧,torch、cuda全卸载掉,这次一起安装
conda install pytorch==1.7.0 torchvision==0.8.0 torchaudio==0.7.0 cudatoolkit=10.2 cudnn=7.6.5
不行呢还是不行呢!
算球,我重新建立了一个新环境,用以下命令创建torch和cuda
conda install pytorch=1.7.0 torchvision=0.8.0 cudatoolkit=10.2
然后就行了???我也不懂为啥,再次用原先的虚拟环境试一下,不行就拜拜!
不行!!!!因为第一次下载的pytorch是cpu版本的,卸载后安装的一直都是cpu,即使后面跟的是cuda,也不会安装成gpu的,原因终于找到了!!要想办法,把这个cpu魔咒去掉!!
首先去清华开源库下载pytorch的gpu版,存放在如下地址中:E:\Software\CUDA10.2\pytorch-1.7.0-py3.8_cuda102_cudnn7_0.tar
(1)安装pytorch gpu版
conda install E:\Software\CUDA10.2\pytorch-1.7.0-py3.8_cuda102_cudnn7_0.tar.bz2
(2)安装其他选项
conda install torchvision==0.8.0 torchaudio==0.7.0 cudatoolkit=10.2 cudnn=7.6.5
终成正果!!! 一个 cpuonly 惹的祸!!!! 应该改不会有人遇到我这种情况叭!!
其实可以直接创建一个新环境,安装所需pytorch、cuda版本,没必要和旧环境死磕,我就是想知道为什么不可以直接在旧环境中下载,嘿嘿,算是给我玩儿明白了,泪奔::>_<::来源:ligous