手把手教你在win10下搭建pytorch GPU环境(Anaconda+Pycharm)
Anaconda指的是一个开源的Python发行版本,其主要优点如下:
Anaconda默认安装了常见的科学计算包,用它搭建起Python环境后不用再费时费力安装这些包;
Anaconda可以创建互相隔离的虚拟环境,可以在不同环境下制定不同版本的Python,安装不同依赖包,再也不用纠结多个Python版本究竟安装哪个;
一、本次安装所需的基本软件
1. Anaconda3-5.3.1-Windows-x86_64
2. pycharm-community-2019.3.4
3. python3.7(不用单独安装)
4. cuDNN 8.0.1
5. CUDA 10.2
二、安装步骤
1. 查看自己电脑的GPU是否支持CUDA(一定要查看,否则白忙活一场)
在我的电脑上右键单击,找到管理并进入,具体情况如下:

找到设备管理器,在显示适配器里面查看GPU的具体型号,如下所示。如果支持CUDA,则继续下一步,否则到此为止!!!.

接下来百度搜索你的GPU型号 SPECIFICATION,如GTX1050 SPECIFICATION,查看是否支持CUDA,具体如下:

2. Anaconda安装
前往Anaconda官网下载个人版,如下图所示:

3. 添加清华镜像源
用conda安装Pytorch过程中会连接失败,这是因为Anaconda.org的服务器在国外,需要切换到国内镜像源。在windows系统的开始菜单中找到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/pytorch/

设置搜索时显示通道地址,如下图所示:
conda config --set show_channel_urls yes

4. 创建pytorch_gpu虚拟环境
在Anaconda Prompt命令行中为自己的深度学习环境创建一个虚拟运行环境,起名为pytorch_gpu,可以运行以下代码创建,如图所示:
conda create --name pytorch_gpu python=3.7 #这条命令将会创建一个新的环境,位置在Anaconda3/envs/pytorch_gpu中

创建好虚拟环境以后,可以使用命令 conda env list 查看已创建好的新环境,如下图所示,pytorch_gpu是我们新创建的环境,base为默认环境:

5. 激活pytorch_gpu虚拟环境
创建好虚拟环境以后,如果想要使用它让系统处于其运行环境下,需要先激活环境,可以运行以下命令:
activate pytorch_gpu
激活成功后可以看到当前环境已经变为pytorch_gpu,如下图所示

如果要关闭当前环境,只需要输入以下命令,如下图所示:
deactivate

如果要删除新环境,只需要输入以下命令,如下图所示,删除名为pytorch_gpu的环境
conda remove -n pytorch_gpu --all

6. CUDA与CUDNN的关系
CUDA(ComputeUnified Device Architecture),是显卡厂商NVIDIA推出的运算平台。CUDA是一种由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题。
NVIDIA cuDNN是用于深度神经网络的GPU加速库。它强调性能、易用性和低内存开销。NVIDIA cuDNN可以集成到更高级别的机器学习框架中,如谷歌的Tensorflow、加州大学伯克利分校的流行caffe软件。简单的插入式设计可以让开发人员专注于设计和实现神经网络模型,而不是简单调整性能,同时还可以在GPU上实现高性能现代并行计算。
CUDA看作是一个工作台,上面配有很多工具,如锤子、螺丝刀等。cuDNN是基于CUDA的深度学习GPU加速库,有了它才能在GPU上完成深度学习的计算。它就相当于工作的工具,比如它就是个扳手。但是CUDA这个工作台买来的时候,并没有送扳手。想要在CUDA上运行深度神经网络,就要安装cuDNN,就像你想要拧个螺帽就要把扳手买回来。这样才能使GPU进行深度神经网络的工作,工作速度相较CPU快很多。
7. 安装CUDA
在NVIDIA官网找到所需要的CUDA版本,然后一步步安装即可,如下图所示:

!下面一步要注意安装Display Driver的最新版本,即勾选版本号更大的选项.



安装好之后,在命令提示符界面输入nvcc -V,查看是否安装成功。以下是安装成功的情况。

8. 安装cuDNN
所安装的cuDNN版本注意和CUDA版本对应,可以在CUDNN官网找到版本对应关系,注册账号后即可下载对应版本的cuDNN,具体版本间的对应关系如下:

新建一个文件夹cudnn,之后将下载的文件cuDNN解压,将里面的bin,include,lib这三个文件夹直接复制到cudnn文件夹之中。最后将cudnn文件夹移动到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0这个路径下面。

移动完成之后的结果如下:

在高级系统设置中找到环境变量,在系统变量的path路径中添加以下两个路径,根据自己的实际路径添加
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\extras\CUPTI\libx64
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\cudnn\bin
添加好之后的结果如下:

9. 安装Pytorch
先到pytorch官网根据你的实际情况选择Pytorch安装包版本,然后复制页面自动生成的脚本进行安装。

使用以下命令安装pytorch,这里比官网的命令少了一个-c pytorch,主要是因为-c pytorch表示指定使用moren默认的pytorch channel,这个服务器位于国外,下载速度很慢,使用刚刚添加进default channel的清华镜像源可以得到一个较快的下载速度。
conda install pytorch torchvision cudatoolkit=10.2

安装完成之后,在pyttorch_gpu环境下使用下面几条条命令验证是否可以调用CUDA:
python
import torch
torch.cuda.is_available()
成功的结果如下图所示:

10. 安装pycharm并配置环境
下载pycharm-community版本安装好之后,创建项目并配置pycharm解释器,首先点击create new project,location为文件存储位置,project interpreter为解释器,也就是Anaconda中的python.exe。这里选择C:\Users\xiaoy\Anaconda3\envs\pytorch_gpu路径下的python解释器。配置好后点击create即可完成。具体情况如下:


三、包管理的各种命令
1. 查看该环境中包和其版本的列表
会看到你在当前环境中已经安装好的所有包和其版本:
conda list
2. 查找一个包
检查我们需要的这个包是否可以通过conda来安装:
conda search beautifulsoup4
3. 安装一个新包
在当前环境(pytorch_gpu)中安装这个Beautiful Soup包,使用conda命令如下:
conda install --name pytorch_gpu beautifulsoup4
4. pip安装包
activate pytorch_gpu
pip install beautifulsoup4
5. 移除包,比如,移除pytorch_gpu环境下的beautifulsoup4
conda remove -n pytorch_gpu beautifulsoup4
四、安装中出现的问题
1. import torch时报错 ,Microsoft Visual C++ Redistributable is not installed, this may lead to the DLL load failure.
需要下载这个可执行程序vc_redist.x64.exe,之后安装即可。

reference:
查看GPU是否支持CUDAhttps://zhuanlan.zhihu.com/p/37086409
Anaconda环境安装GPU版本Pytorch程https://blog.csdn.net/baidu_26646129/article/details/88380598
PyTorch(GPU版)详细安装教程https://www.bilibili.com/video/BV1Rz411e7eJ?from=search&seid=5212425445242088592
cuda与cudnn的关系https://www.jianshu.com/p/622f47f94784,https://www.cnblogs.com/anai/p/12838668.html
cuda和cudnn版本对应关系https://developer.nvidia.com/rdp/cudnn-archive#a-collapse742-10
配置pycharmhttps://www.cnblogs.com/yufeng97/p/13069247.html?utm_source=tuicool
Python入门:Anaconda和Pycharm的安装和配置https://www.cnblogs.com/yuxuefeng/articles/9235431.html
import torch错误https://stackoverflow.com/questions/63212096/when-importing-pytorch-microsoft-visual-c-redistributable-is-not-installed
手把手教你在win10下搭建pytorch GPU环境(Anaconda+Pycharm)的更多相关文章
- 1.WIN10下搭建vue开发环境
WIN10下搭建vue开发环境 详细的安装步骤如下: 一.安装node.js 说明:安装node.js的windows版本后,会自动安装好node以及包管理工具npm,我们后续的安装将依赖npm工具. ...
- win10下搭建vue开发环境
特别说明:下面任何命令都是在windows的命令行工具下进行输入,打开命令行工具的快捷方式如下图: 详细的安装步骤如下: 一.安装node.js 说明:安装node.js的windows版本后 ...
- 史上最全最详细的环境搭建教程,行百里者手把手教你在windows下搭建Anaconda+pycharm+库文件(TensorFlow,numpy)环境搭建
我是在搭建TensorFlow开发环境的道路上走了很多弯路 掉了很多头发,为了让广大同学们不在受苦受累 下面我将手把手教你学习如特快速搭建python环境 快速导入numpy,PIL,pillow,等 ...
- 手把手教你在Windows下搭建React Native Android开发环境
最近看到React Native好像好厉害的样子,好奇心驱使之下体验了一下并将在Window下搭建React Natvie Android环境的步骤记录下来,并有需要的朋友参考.(我都是参考官方文档的 ...
- 手把手教你如何用eclipse搭建前端开发环境
3.创建静态web工程 打开eclipse,选择file,new project 或者 new other...,选择web项中的static web project ,next. 输入你的项目名,如 ...
- win10下搭建QTP测试环境
安装环境win 10 64位企业版 个人学习用1..net 3.5无法安装更新问题解决:打开windows update 服务2.win10 安装中提示为了对电脑进行保护,已经阻止此应用,请与管理员联 ...
- sublime text3 下搭建python IDE环境 --Anaconda插件篇
近来在园区发现大家使用ST3(Sublime text 3)工具进行python学习.然后自己也跟风了一把. 1.ST3下载地址: http://www.sublimetext.com/3 2.安装S ...
- 【原创】windows下搭建vue开发环境+IIS部署
[原创]win10下搭建vue开发环境 如果要转发,请注明原作者和原产地,谢谢! 特别说明:下面任何命令都是在windows的命令行工具下进行输入,打开命令行工具的快捷方式如下图: 详细的安 ...
- windows下搭建vue开发环境+IIS部署
原创]win10下搭建vue开发环境 https://www.cnblogs.com/ixxonline/p/6007885.html 特别说明:下面任何命令都是在windows的命令行工具下进行输 ...
随机推荐
- 题解 洛谷 P3185 【[HNOI2007]分裂游戏】
首先可以发现,当所有巧克力豆在最后一个瓶子中时,就无法再操作了,此时为必败状态. 注意到,对于每个瓶子里的巧克力豆,是可以在模\(2\)的意义下去考虑的,因为后手可以模仿先手的操作,所以就将巧克力豆个 ...
- Netty 学习笔记(1) ------ Hello World
服务端启动流程 package com.example.netty; import com.example.netty.handler.HelloServerHandler; import io.ne ...
- MySQL之外键、联合查询、子查询
外键(foreign key): 外面的键(键不在自己表中),如果一张表中有一个字段(非主键)指向另外一张表的主键,那么将该字段称之为外键. 外键可以在创建表的时候或者创建表之后增加(但是要考虑数据的 ...
- SpringBoot+Vue项目上手
博客 https://gitee.com/RoadsideParty/White-Jotter-Vue?_from=gitee_search UI框架 https://at-ui.github.io/ ...
- Socket通信,基本方法介绍
Socket是什么呢? Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口. 在设计模式中,Socket其实就是一个门面模式,它把复杂的TCP/IP协议族隐藏在Socket接口 ...
- myBatis源码解析-日志篇(1)
上半年在进行知识储备,下半年争取写一点好的博客来记录自己源码之路.在学习源码的路上也掌握了一些设计模式,可所谓一举两得.本次打算写Mybatis的源码解读. 准备工作 1. 下载mybatis源码 下 ...
- Caused by: java.sql.SQLSyntaxErrorException: Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'c.id'
打开mysql客户端,输入 select @@global.sql_mode 再执行 set @@global.sql_mode ='STRICT_TRANS_TABLES,NO_ZERO_IN_DA ...
- Spring学习之Spring中AOP方式切入声明式事务
mybatis-spring官方文档说明 一个使用 MyBatis-Spring 的其中一个主要原因是它允许 MyBatis 参与到 Spring 的事务管理中.而不是给 MyBatis 创建一个新的 ...
- JVM笔记-GC常用参数设置
GC常用参数 -Xmn -Xms -Xmx -Xss 年轻代 最小堆 最大堆 栈空间, -Xms -Xmx 一般设置成一样大小, -XX:+UseTLAB 使用TLAB,默认打开 -XX:+Print ...
- 安装fiddler 谷歌插件
移动 .crx 插件无法安装问题 解决方案: 修改后缀名为 .zip 文件 进行解压后,使用浏览器扩展程序加载已解压的文件进行扩展 添加插件 2020-06-20