Anaconda,GUDA,Pytorch是什么?

Anaconda

Anaconda是Red Hat Enterprise Linux、CentOS、Fedora等操作系统的安装管理程序。它以Python及C语言写成,以图形的PyGTK和文字的python-newt接口写成。它可以用来自动安装配置,使用户能够以最小的监督运行。
Anaconda安装管理程序应用在RHEL,Fedora和其他一些项目,Anaconda提供纯文字模式和GUI模式,用户可以安装在各种各样的系统。[1]

Anaconda是一个开源的包、环境管理器,可以用于在同一个电脑上安装不同版本的软件包,并能够在不同的环境之间切换,Anaconda不是语言,它只是Python的一个集成管理工具或系统,我们只需要安装Anaconda就可以了,甚至不用单独去安装Python。
我们在使用过程中会出现Conda,实际上这是一个可执行的命令,它的重要的功能就是包管理与环境管理,包管理也就是下载众多Packages和科学计算工具等,环境管理就是用户可以安装不同版本的Python来进行快速切换。安装Anaconda让我们省去了大量下载模块包的时间,更加方便。[2]

GUDA

CUDA是NVIDIA推出的只能用于自家GPU的并行计算框架。只有安装这个框架才能够进行复杂的并行计算。主流的深度学习框架也都是基于CUDA进行GPU并行加速的。还有一个叫做cudnn,是针对深度卷积神经网络的加速库。

Pytorch

PyTorch是一个Python包,它提供了两个高级功能:

  • 具有强大GPU加速的张量计算(如NumPy)
  • 基于基于磁带的自动升级系统构建的深度神经网络

您可以根据需要重用自己喜欢的Python包,例如NumPy,SciPy和Cython来扩展PyTorch。[3]

安装前的准备

首先我们要确定电脑是否有英伟达(NVIDIA)的独立显卡,可以在此电脑-->管理-->设备管理器-->显示适配器中查看。本教程更偏向于Windows操作系统的安装,推荐使用Python3.7。

Anaconda的下载及安装

Anaconda的下载

目前推荐Anaconda有两种下载途径:

推荐使用镜像站下载,基本上可以跑到慢速,官方服务器可能没有国内CDN节点速度没有清华镜像站快。但官网更新效率会比镜像站高很多,最新版本第一时间再官网就可以下载,镜像站里的大部分版本已经足够使用了,注意自己的系统是x86还是x64的构架,64位还是32位根据自己电脑情况,一般为64位,右击此电脑-->属性可以查看。

官网下载则翻到官网底部,按自己的相应的系统选择对应的安装程序即可

清华大学镜像站则按自己的相应的系统和需要的版本选择对应的安装程序即可,一般建议安装最新版,除非有特殊需求。一般越新鲜的版本越靠下。

Anaconda的安装

下载完成后一路NextI Agree就可以了,Install for安装页建议选择All Users (requires admin privileges)

下一步则要选择安装路径,不建议安装在C盘,这个程序占用硬盘内存较大,一定不要安装在中文或包含空格的路径下!

选择完路径则会出现高级选项页面,默认只勾选第二项,若勾选第一项则会自动添加环境变量,后续可以直接在cmd中使用相关命令,不勾选仅可以在Anaconda提供的终端工具内操作,官方建议不勾选,为保证后续环境变量正确配置,这边也是建议不勾选

最后等待安装完成取消全部勾选,轻击Finish按钮完成安装,两个选项也可勾选,勾选并Finish会自动打开Anaconda的使用教程页面。

可以添加以下四个清华镜像源,优先从国内镜像源下载速度更快。

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/conda-forge/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/

CUDA的下载安装及配置

下载前的准备

首先要知道自己的电脑是支持CUDA的哪个版本,CUDA是可以向下兼容的,如电脑支持CUDA11.6的,则表示11.6及以下的版本均可安装使用,相反高于11.6以上的版本,电脑可能无法正常兼容。一般建议先到PyTorch官网偏下位置查询下Pytorch目前支持的GUDA版本有哪些,根据Pytorch官网现有支持的及自己电脑能兼容的CUDA版本进行选择具体下载哪个版本号的CUDA。

Windows端可以使用以下方法查询自己电脑兼容的CUDA版本:
CTRL+R打开运行窗口,输入cmd回车,使用nvidia-smi命令可查询到自己显卡兼容的CUDA版本号。


此处则表明该电脑最高兼容11.2及11.2以下的版本

GUDA的下载

目前可前往英伟达官网进行下载-->https://developer.nvidia.com/cuda-toolkit-archive
根据Pytorch官网现有支持的及自己电脑能兼容的CUDA版本进行选择具体下载哪个版本号的CUDA。

根据计算机情况下载相应构架的版本,建议选择exe[local]离线安装包版本,我第一次尝试使用exe[network]在线版本安装时,进度条就不带动的(哭,后来选择用的exe[local]离线安装包,选择完成后稍微往下翻一些就可以看到Download按钮。

GUDA的安装

双击执行刚下载完成的exe文件,会先解压文件到临时目录(不是安装目录),一般保持默认即可

出现NVIDIA CUDA安装程序界面,同意并继续即可,到安装选项界面,一定要选择自定义安装。

下一步则需要我们选择安装位置,这三个地址十分重要,后续我们将进行环境变量的配置,建议不要改变路径,保存默认即可。

之后等待安装完成即可,可能会有一个页面询问是否安装VSCode(Install VSCode),可根据需求选择,可装可不装。

GUDA环境的配置

首先在右键此电脑-->属性-->高级系统设置-->环境变量。

在Path中手动添加如下路径:

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\[版本号]\lib\x64
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\[版本号]\include
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\[版本号]\extras\CUPTI\lib64
C:\ProgramData\NVIDIA Corporation\CUDA Samples\[版本号]\bin\win64
C:\ProgramData\NVIDIA Corporation\CUDA Samples\[版本号]\common\lib\x64

其中路径内的[版本号]替换为下载CUDA的版本号即可(字母v不要漏了),例如:
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\lib\x64

CUDA Samples文件夹可能会出现只有一个记事本文档的情况,没有上述路径,对于这种情况CUDA Samples内的文件需额外自行去下载解压到这个文件夹内,下载链接-->Releases · NVIDIA/cuda-samples (github.com),下载完成后解压到C:\ProgramData\NVIDIA Corporation\CUDA Samples\[版本号]内即可。

配置完成环境变量后,我们就可以检查下CUDA是否安装成功:
CTRL+R打开运行窗口,输入cmd回车,使用nvcc -V命令,若没有报错且出现类似下图的提示,则代表安装成功。

安装cuDNN

目前可前往英伟达官网进行下载-->https://developer.nvidia.com/cudnn

下载与CUDA对应的cuDNN,下载可能需要登录英伟达账号,若没有英伟达账号可以进行免费注册,下载时一定注意与CUDA的版本对应,例如要下载的CUDA为10.2则下载第二个。

下载之后将其进行解压缩,将cuDNN文件夹中的bin、clude、lib三个文件夹中的文件,发布复制到CUDA安装目录的对应相同名字的文件夹下。
CUDA默认路径:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\[版本号]

PyTorch的安装与测试

PyTorch的安装

打开Anaconda Prompt命令行工具,首先需要创建一个Pytorch的虚拟环境,可以使用命令conda create -n pytorch_gpu python=3.7进行创建。(前提条件:Python是3.7版本),如命令行提示:Proceed([y]/n)?,输入y并回车等待环境创建完成。
创建完成后输入 conda activate pytorch_gpu 命令进入Pytorch的环境,如果前面括号的内容发生改变代表进入成功。

前往PyTorch官网选择对应的系统及可兼容的CUDA版本获取pip命令-->https://pytorch.org/
复制到刚刚创建好的Pytorch的环境内,执行PyTorch官网给出的pip安装命令即可(Run this Command一栏)

此pip下载安装的过程较为漫长,耐心等待下载安装完成即可。

PyTorch测试是否安装成功

测试Pytorch CUDA是否可用

首先进入我们刚才建立的虚拟环境,使用conda activate [虚拟环境名]命令,例如命名为pytorch_gpu则输入命令:conda activate pytorch_gpu
之后输入python命令,进入到python,输入以下命令:

import torch print(torch.__version__)
print(torch.cuda.is_available()# cuda是否可用
torch.cuda.device_count(# 返回GPU的数量
torch.cuda.get_device_name(0# 返回gpu名字,设备索引默认从0开始

运行结果若与下图相同则代表安装成功,Pytorch CUDA可用。

测试显卡CUDA是否正常的方法

分别运行C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\[版本号]\extras\demo_suite路径下 bandwidthTest.exe 和 deviceQuery.exe ,若均显示 PASS 则代表正常。

参考文献

[1] Anaconda - Wiki (Anaconda - 维基百科,自由的百科全书 (wikipedia.org))
[2] pytorch GPU版本安装 - CSDN ((pytorch GPU版本安装_尘世猫的博客-CSDN博客)
[3] pytorch - Github (pytorch/pytorch:Python中的Tensors和Dynamic Neural Network,具有强大的GPU加速 (github.com))



“最终,你受益最多的,是你学业之外的东西”