手把手教你在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的命令行工具下进行输 ...
随机推荐
- python多进程之multiprocessing
什么是多进程? 简单的理解:单板上运行的一个程序就是一个进程.进程是操作系统分配资源的最小单位,不同的进程之间资源不共享,进程间通信需要使用特定的方式.python提供了自带的multiprocess ...
- STL源码剖析:仿函数
仿函数就是函数对象 函数对象: 重载了operator()的类对象 使用起来和普通函数一致,所以称为函数对象或是仿函数 STL中对于仿函数的参数进行了特殊处理,定义了两个特殊类,类里面只有类型定义 一 ...
- 高效C++:设计与声明
C++软件开发可以理解为设计一系列的类,让这些类相互使用,最终实现我们所需要的功能.类与类之间的相互关系可以很复杂,也可以很简单,如何简单高效的描述类与类之间的关系是设计的难点之一.遵循本文所提供的方 ...
- 代码Verify简介
序 对于开发者而言,编译代码和提交代码是必不可少的流程,同一个需求反复提交的情况也时常出现,那么怎么避免这种情况,且保证代码的质量,这就是Verify CI的目标.Verify表示认证验证的意思,结合 ...
- AI面试之SVM推导
SVM现在主流的有两个方法.一个是传统的推导,计算支持向量求解的方法,一个是近几年兴起的梯度下降的方法. 梯度下降方法的核心是使用了hinge loss作为损失函数,所以最近也有人提出的深度SVM其实 ...
- iPhone截长图的方法
iPhone手机暂没有长图截取功能,所以我们只能通过别的方式进行长图截取. (2020年4月10日更新) ios13目前可以截长图了,不过只能在Safari中进行长图截取,而且存储形式为pdf格式,下 ...
- NACOS安装和配置
安装包nacos-server-1.1.4.tar.gz 环境 JDK1.8 上传及解压 [root@centos7- ~ ]# mkdir -p /cslc/nacos #通过SFTP将安装包上传至 ...
- Virtuoso 中 display.drf、techfile.tf、tech.db 之间的关系,以及 Packet 在它们之间的作用
https://www.cnblogs.com/yeungchie/ 一般工艺库下的"技术文件"有 tech.db 和 techfile.tf , Packet 是 display ...
- MOSFET 的 I / V 特性曲线
https://www.cnblogs.com/yeungchie/ MOSFET 线性区(三极管区,\(V_{DS} \leq V_{GS} - V_{TH}\)) \[I_{D} = \mu_{n ...
- 这届 Showgirl行不行?AI告诉你谁是ChinaJoy上最漂亮的小姐姐
摘要: CJ开幕,顶着三伏天的酷暑高温,暴走一整天,就为了拍点漂亮小姐姐给大家看看. 一年一度的游戏视觉盛宴又来了! 作为一个游戏动漫控的肥宅,去CJ现场是必须的.除了看看游戏和动漫,各大游戏展台漂亮 ...