一、英伟达驱动安装与更新
二、Anaconda 的安装
三、Pytorch环境安装
四、paddlepaddle环境安装
五、pycharm安装--验证CUDA和cudnn版本
之前我们在利用GPU进行深度学习的时候,都要去NVIDIA的官网下载CUDA的安装程序和cudnn的压缩包,然后再进行很繁琐的系统环境配置。不仅环境配置麻烦,而且还特别容易配置错误,特别还有CUDA和cudnn版本的对应也特别容易搞错,但是利用anaconda安装配置pytorch和paddlepaddle环境的时候会自动帮我们配置好cuda和cudnn。这篇博客就是针对小白的保姆级深度学习的环境配置教程
显卡驱动程序就是用来驱动显卡的程序,它是硬件所对应的软件。驱动程序即添加到操作系统中的一小块代码,其中包含有关硬件设备的信息。正常有显卡的电脑都是有驱动程序的,但是有的时候驱动可能版本比较低,支持的cuda版本也是比较低的(但是有的人的显卡是比较老的,就不建议更新驱动,这样会导致各种各样的问题,但是搞深度学习还是要用一块好的显卡用来学习,这点我是有血泪教训的,咬咬牙买块好的显卡,把知识学到手,以后的工资可以多赚会很多显卡的钱),NVIDIA出的30系列的显卡好像只支持cuda11以上的版本。
首先查看电脑的显卡版本,步骤为:此电脑右击-->管理-->设备管理器-->显示适配器。就可以看到电脑显卡的版本了。如图,可以看到我的是一块RTX3060显卡。
有显卡驱动的,可以直接在桌面右键,找到英伟达驱动控制面板打开就好了。
再得知以上的信息以后我们就可以对应我们的显卡去英伟达官网上去找相对应的显卡驱动更新或者下载了。
显卡驱动的下载地址(可能打开比较慢,多打开几遍)。
然后根据自己的电脑的配置去选择驱动。这里Notebooks是笔记本的意思,所以如果你是笔记本电脑,那么产品系列那个选项就要选择(Notebooks)的。还有那个下载类型有两种一个是Studio版本,一个是Game Ready版本。其实两个版本都差不多,一个是偏办公用,一个是偏游戏娱乐。按如下操作将驱动下载下来。然后点击下载来的程序,不断的下一步就好了。
安装(更新)好了显卡驱动以后。我们按下win+R组合键,打开cmd命令窗口。输入如下的命令。
nvidia-smi
得到如下图的信息图,可以看到驱动的版本是471.68;最高支持的CUDA版本是11.4版本。得到显卡的最高支持的CUDA版本,我们就可以根据这个信息来安装环境了。
打开网址,现在是2021年8月,对应的anaconda版本是支持python3.8。如果想下载之前的版本,或者更低python版本的anaconda,可以打开网址。
双击下载好的anaconda安装包,just me是说只供当前用户使用。all user 是供使用这台电脑的所有用户使用,是权限问题。对空间影响不大。如果你的电脑上只有建了一个用户,all users和just me 的作用是一样的。所以点击just me就好了。
然后点击next,当让你选择安装安装路径的时候,一定不要选择默认安装位置,因为默认位置是c盘,以后要在anaconda里面创建环境的时候会很占内存,最好在D盘中创建一个文件夹来放anaconda。
和图中一样将图中的√勾上,虽然出现红色的警告,但是要勾上,将anaconda添加到环境变量中去。然后点击完成就好了。
安装完成以后,按下开始键(win键)在左边就会出现anaconda3这个文件夹,可以发现anaconda已经安装好了。
按下开始键(win键),点击如图中的图标。打开anaconda的终端。
执行如下的指令查看有哪些环境
conda env list
可以看出来,新安装的anaconda只有一个base环境。
这里先讲一下anaconda环境,首先base环境是一个大的环境,类似一个很大的一个房子(但是没有房间),当我们每创建一个环境就都会相当于在这个大房子里面用隔板创建一个房间,然后这个房间里面可以安装我们所需要的包,这样管理起来就比较方便。如图可以比较直观的诠释anaconda的环境
创建虚拟环境conda create -n 环境名字(英文) python=x.x(python版本),如下,我就是创建了一个名字叫pytorch,python是3.8版本的环境。
conda create -n pytorch python=3.8
在base环境中执行如上的命令,就会创建一个新的虚拟环境,这个虚拟环境会安装一些基础的包,如下图所示。询问是否安装的时候,输入y。就可以创建环境了。
当安装好了以后,执行conda env list这个命令,就可以看到比一开始多了一个pytorch这个环境。现在我们可以在这个环境里面安装深度学习框架和一些Python包了。
执行如下命令,激活这个环境。conda activate 虚拟环境名称
conda activate pytorch
安装pytorch-gup版的环境,由于pytorch的官网在国外,下载相关的环境包是比较慢的,所以我们给环境换源。在pytorch环境下执行如下的命名给环境换清华源。
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
然后打开pytorch的官网,由于开头我们通过驱动检测到我的显卡为 RTX3060,最高支持cuda11.4版本,所以我们选择cuda11.1版本的cuda,然后将下面红色框框中的内容复制下来,一定不要把后面的-c pytorch -c conda-forge也复制下来,因为这样运行就是还是在国外源下载,这样就会很慢。
将复制的内容粘贴到pytorch环境下的终端,运行就可以了
这时候就开始下载环境所需要的依赖包了。
如pytorch环境安装一样,首先在base环境下创建一个新的环境来安装paddlepaddle框架。首先创建一个新的环境名叫paddle。执行如下命令。
conda create -n paddle python=3.8
创建好了名叫paddle这个环境以后,进入到这个环境中(可以在pytorch环境下进入),执行如下命令。
conda activate paddle
我们在打开paddlepaddle的官网。我们选择cuda11.2版本。
复制如下的红色框框中的命令,由于这个命令就是在清华源中下载,所以直接复制这个命令到anaconda prompt中去然后运行就可以了,如以下截图。
运行如上的命名以后(中间会询问您是否确定安装,输入y就可以了),就可以安装paddlepaddle框架所需要的基本环境依赖包(如果中间网不好,导致有些包下载失败,从新运行如上的吗,命令就可以断点下载了)。
至此。pytorch和paddlepaddle的深度学习环境就安装好了。
打开这个pycharm网址,可以发现一共有两个版本一个是专业版(Professional),一个是社区版(Community),专业版是需要花钱的,好几百美元一年。而社区版是免费的,但是也够用了,所以就下载安装社区版就好了。
将下载好的pycharm安装包,双击。安装的地址最好不要放在C盘,我是安装在D盘(反正我 的软件是不喜欢安装在C盘的。总害怕C盘会满)。
将所有的√都勾上,
安装好了点击第二个框框,然后点完成就好了
打开pycharm,创建一个新的工程,来测试anaconda是否在安装pytorch和paddlepaddle框架的时候也安装了cuda和cudnn。按如下两图创建一个工程(新工程好像必须要安装一个新的python插件),新的工程最好在D盘一个新的文件夹下,有的工程很大,C盘容易装满。
按以上的方式创建了一个工程,这时候我们就要选择我们在anaconda里面安装的环境,在界面的右下角
按照如图中的选项选择我们在anaconda中创建的深度学习环境,可以看到有paddle和pytorch两个环境,我们先选择pytorch环境。
此时刚刚的右下角已经有了我们刚刚选择的pytorch环境中的python了。
我们在创建的工程里面创建一个python脚本,在脚本中运行如下代码,查看是否anconda在安装pytorch环境的时候也安装了cuda和cudnn。
import torch
print(torch.cuda.is_available())
print(torch.backends.cudnn.is_available())
print(torch.cuda_version)
print(torch.backends.cudnn.version())
可以发现控制台打印出两个True,可以说明cuda和cudnn已经安装。并且可以得到cuda的版本为11.1和cudnn的版本为8.05版本。
安装如上的方法将python的版本切换为paddle环境中的python插件。运行如下的代码
import paddle
print(paddle.utils.run_check())
可以得到cudade 版本为11.2,cudnn的版本为8.1。
至此我们的深度学习环境安装就已经完全完成。接下来可以在相对的环境下进行深度学习的实验了。
最后还要申明一下,你可以创建不同的环境,在里面安装不同版本的cuda和cudnn版本。已经亲自尝试过了,是可以的。