手把手教你在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的命令行工具下进行输 ...
随机推荐
- pyinstall打包资源文件
相关代码 main.py import sys import os #生成资源文件目录访问路径 #说明: pyinstaller工具打包的可执行文件,运行时sys.frozen会被设置成True # ...
- 有关 Session 的那些事儿
原文链接: https://blog.by24.cn/archives/about-session.html Web 开发中,Session 是经常用到的概念,但是在日常交流中,似乎又经常引起误解. ...
- [redis] -- 集群篇
三种集群方式 主从同步:主从复制模式中包含一个主数据库实例(master)与一个或多个从数据库实例(slave) 优点: master能自动将数据同步到slave,可以进行读写分离,分担master的 ...
- web自动化 -- 消息提示框处理 (alert、confirm、prompt)
一.前提知识 1.警告消息框(alert) 警告消息框提供了一个"确定"按钮让用户关闭该消息框,并且该消息框是模式对话框,也就是说用户必须先关闭该消息框然后才能继续进行操作. 2. ...
- 21天学通C++(C++程序的组成部分)
C++程序被组织成类,而类由成员函数和成员变量组成. 本章学习: 1)C++程序的组成部分. 2)各部分如何协同工作. 3)函数及其用途. 4)基本输入输出操作. C++程序划分为两个部分,以#大头的 ...
- 96年/离职8个月/拒绝华为offer/目前自由职业-记这大半年来的挣扎与迷茫
仅以此文,记录自己这大半年来的挣扎与迷茫. 2019 年 11 月 在公司工作七个月之后,我被裁员了. 回忆自己这七个月的经历,不管是遇到的人和事,更多感到的是收获和感恩,于是我写下了:「应届毕业生工 ...
- PHP ftp_systype() 函数
定义和用法 ftp_systype() 函数返回 FTP 服务器的系统类型标识符. 如果成功,该函数返回系统类型.如果失败,则返回 FALSE. 语法 ftp_systype(ftp_connecti ...
- 2020牛客暑期多校训练营 第二场 I Interval 最大流 最小割 平面图对偶图转最短路
LINK:Interval 赛时连题目都没看. 观察n的范围不大不小 而且建图明显 考虑跑最大流最小割. 图有点稠密dinic不太行. 一个常见的trick就是对偶图转最短路. 建图有点复杂 不过建完 ...
- Pintech品致全新多功能MDO 704E系列示波器全新推出
2020年 7月,Pintech品致全新推出推出首款具有多个模拟通道和多个数字通道的示波器.每个模拟通道带宽为200 MHz,每个模拟通道采样率同时达1 GSa/s,在一台仪器中,实现精确.可重复的. ...
- 解Bug之路-Nginx 502 Bad Gateway
解Bug之路-Nginx 502 Bad Gateway 前言 事实证明,读过Linux内核源码确实有很大的好处,尤其在处理问题的时刻.当你看到报错的那一瞬间,就能把现象/原因/以及解决方案一股脑的在 ...