手把手教你在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的命令行工具下进行输 ...
随机推荐
- 设计模式:mediator模式
目的:解决多组件之间的通信问题,使得组件之间的通信变得简单 核心:提供一个管理类,用来处理组件之间的通信,所有的组件只和管理类通信,组件彼此之间不在单独通信 例子: class Mediator { ...
- MySQL数据库---记录相关操作
序 表中记录的相关操作一共四种:插入,更新,删除.查询.其中使用最多,也是最难的就是查询. 记录的插入 1. 插入完整数据(顺序插入) 语法一: INSERT INTO 表名(字段1,字段2,字段3… ...
- 试一试 GraphQL
GraphQL 简介 一种用于 API 的查询语言. GraphQL 既是一种用于 API 的查询语言也是一个满足你数据查询的运行时. GraphQL 对你的 API 中的数据提供了一套易于理解的完整 ...
- Python基础知识点:多进程的应用讲解
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者:东哥IT笔记 现在很多CPU都支持多核,甚至是手机都已经开始支持多核 ...
- JS常用知识点(一)
1.js数据类型 基本类型:String.Number.boolean.null.undefined.Symbol 引用类型:Object null和undefined的区别:undefined表示定 ...
- leetcode题库练习_左旋转字符串
题目:左旋转字符串 字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部.请定义一个函数实现字符串左旋转操作的功能.比如,输入字符串"abcdefg"和数字2,该函数将返 ...
- 第【7】章: 数递归、DFS、剪枝、回溯等问题 学习报告
(7.2)节: 递归问题 1.题干: 递归方便表达,但是性能上消耗过多 1.有个小孩正在上楼梯,楼梯有n阶台阶,小孩一次可以上1阶.2阶.3阶. 请实现一个方法,计算小孩有多少种上楼的方式. ...
- 全栈的自我修养: 0005 Java 包扫描实现和应用(Jar篇)
全栈的自我修养: 0005 Java 包扫描实现和应用(Jar篇) It's not the altitude, it's the attitude. 决定一切的不是高度而是态度. Table of ...
- 还不懂mysql的undo log和mvcc?算我输!
最近一直没啥时间写点东西,坚持分享真的好难,也不知道该分享点啥,正好有人要问我这些东西,所以腾出点时间,写一下这个主题.同样本篇可以给读者承诺,听不懂或者没收获算我输,哈哈! 众所周知,mysql中读 ...
- Java MD5获取
MD5算法具有以下特点: 1.压缩性:任意长度的数据,算出的MD5值长度都是固定的. 2.容易计算:从原数据计算出MD5值很容易. 3.抗修改性:对原数据进行任何改动,哪怕只修改1个字节,所得到的MD ...