1. 首先安装好Anaconda
2. 安装完之后Anaconda默认是没有桌面快捷方式的,需要点击【开始】,找到Anaconda,点击Anaconda Prompt
如果你不会科学上网,那就继续往下看,如果你会,请跳转到8
3. Anaconda配置清华镜像
由于Anaconda的conda install命令默认使用的是国外源下载,安装比较大的库(比如pytorch和cuda toolkit)的时候非常慢,所以建议配置Anaconda的下载源为国内镜像(比如清华,阿里或者豆瓣),本教程以清华镜像为例,在Anaconda Prompt 里输入如下指令:
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/peterjc123/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
conda config --set show_channel_urls yes
该指令的结果是在C:/user/username路径下产生一个名为.condarc的配置文件,只要不删除此文件即使卸载重装Anaconda下载源也不用重新设置。
4. 创建虚拟环境
在Anaconda prompt 里输入conda create --name 虚拟环境的名字 python=3.7
比如我想把虚拟环境叫做virtual_pytorch,则输入conda create --name virtual_pytorch python=3.7
(python = 3.7 是虚拟环境中的Python版本,可按需更改,目前用pytorch的话python装3.6或者3.7比较好)
这个虚拟环境就会安装在Anaconda安装目录下的envs文件夹里,如果不是安装在Anaconda下的envs而是安装在C盘下的某个文件夹里说明是权限不够,以管理员身份运行Anaconda Prompt就行。
5. 在虚拟环境里安装pytorch
在Anaconda prompt中输入activate envs_name激活虚拟环境,其中evns_name是你刚刚创建的虚拟环境的名字。前往pytorch官网获取下载指令。
复制红框中的指令,注意不要复制到了红框后面的 -c pytorch(它表示强制从默认的国外源安装pytorch)
cudatoolkit版本号要根据自己电脑的cuda版本号来修改(如果驱动有更新则先把显卡驱动升级到最新),可以在cmd里使用nvidia-smi命令查看自己电脑显卡的cuda版本,cuda version:11.1表示
支持的cuda版本小于等于11.1。
清华镜像里并不一定有每一个cuda版本的cudatoolkit包,可以自己去清华镜像看看:Index of /anaconda/cloud/pytorch/win-64/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror比如我的电脑cuda version:11.1,则我在pytorch官网获得的指令改为
conda install pytorch torchvision torchaudio cudatoolkit=11.1
我现在输进去之后报错显示没有cudatoolkit=11.1这个包,说明清华镜像里目前还没有在python3.7环境下的11.1版本的cudatoolkit,我换成11.0之后就有了。
conda install pytorch torchvision torchaudio cudatoolkit=11.0
6. 查看pytorch是否为gpu版本
进入python,输入
import torch
torch.cuda.is_available()
不用看了,结果是False,因为一般从清华镜像下载的默认是CPU版本,进入刚才创建的虚拟环境中使用conda list命令查看安装的包,有可能你会发现安装了一个叫cpuonly的包,pytorch果然也是cpu版的
这时候直接:conda uninstall cpuonly
他会提示你当你卸载cpuonly后一些函数库的版本改变(其中就包括pytorch 和 torchvision)
等待安装,loading…
安装完成后,就可以看到pytorch 和 torchvision 都是 GPU 版本了
此时输入
import torch
torch.cuda.is_available()
返回结果就是True啦
7. 可能没有cpuonly这个库怎么办
在输入conda list
查看包之后,发现库中并没有cpuonly包,但我的pytorch还是cpu版本的那么该怎么办呢?
解决方法:conda install cpuonly
你先自行给它装上cpuonly函数库
然后,你再卸载它:conda uninstall cpuonly
至此,gpu版本的pytorch就装好了
参考文章:https://blog.csdn.net/HuangJM3/article/details/123685177
8. 使用pip代理安装
如果你有代理的话,就不用配置什么镜像了,因为6中出现明明复制的是gpu版本,但下载下来的却是cpu版本的原因就是这些镜像站中的pytorch版本不全,不能做到既能匹配你的python版本,又能匹配你的cuda版本。
首先仍然是查看cuda版本,一般更新到最新就行,就算cuda版本跟官网的指令差几个小版本也没事
然后到pytorch官网复制安装指令,复制pip指令就行
创建和激活anaconda虚拟环境可以看4和5,激活后直接把指令粘贴到Anaconda prompt里,这时先别急着回车,咱们稍微修改修改,比如我需要把指令中的pip3改为pip,然后再在指令后面指定代理,格式如下
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu117 --proxy=https://代理服务器ip:代理服务端口
代理服务器和ip端口可以在你的科学上网工具中找到,如果你用的是小猫咪的话是比较好找的,用其他工具我就不清楚了。