我的电脑上是Nvidia GeForce GTX 1060 6GB独立显卡,因为没有驱动根本用不了显卡嘛,所以我们先来安装显卡驱动,接下来介绍的安装方式简单易行。
选择软件与更新
点击左下角设置
点击附加驱动-–>选择推荐的驱动(tested)—>点击右下角应用
安装完之后重启电脑!
验证是否安装成功,在终端输入以下命令查看显卡信息:
sudo nvidia-sm
这里说明一下,CUDA Toolkit本地安装包是内含特定版本Nvidia显卡驱动的。NVIDIA显卡驱动和CUDA工具包本身是不具有捆绑关系的,也不是一一对应的关系,只不过是离线安装的CUDA工具包会默认携带与之匹配的最新的驱动程序。CUDA本质上只是一个工具包而已,所以我可以在同一个设备上安装很多个不同版本的CUDA工具包。一般情况下,只需要安装最新版本的显卡驱动,然后根据自己的选择选择不同CUDA工具包就可以了。所以我们不用管上图中的CUDA Version 10.1(猜测是此显卡驱动所能支持的最高版本CUDA),装自己需要的版本就可以。
也可以在这里查询CUDA工具包和兼容的驱动程序版本:官网链接
最好找到系统设置左下角的详细信息部分,查看一下自己的图形卡是否已经是GeForce GTX 1060 6GB(电脑的显卡型号)。
CUDA是NVIDIA推出的用于自家GPU的并行计算框架,也就是说CUDA只能在NVIDIA的GPU上运行,而且只有当要解决的计算问题是可以大量并行计算的时候才能发挥CUDA的作用。CUDA的本质就是一个工具包(ToolKit)。
CUDA各个版本的下载地址:官网链接
然后按下图依次选择即可,注意安装类型选择runfile(local)完整安装包从本地安装,然后点击右下角下载安装包和补丁,安装包2GB左右
下载完成后,打开终端,进入到安装包所在文件夹,我的下载路径是默认的Downloads:
cd ~/Downloads/
然后执行以下命令安装:
sudo sh cuda_10.0.130_410.48_linux.run
之后会出来很多Descriptions,直到左下角显示More(0%),一直按回车往下就可以,直到出现以下第一个提示:
这里一定要注意,因为之前我们安装过显卡驱动了,第二个选项一定要选择no
其余的按提示输入接受或者yes,选择默认安装位置的输入回车即可
sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev
然后再次安装就成功了!
sudo sh cuda_10.0.130_410.48_linux.run
打开.bashrc文件:
sudo gedit ~/.bashrc
在文件的末尾添加以下两行命令:
export PATH="/usr/local/cuda-10.0/bin:$PATH"
export LD_LIBRARY_PATH="/usr/local/cuda-10.0/lib64:$LD_LIBRARY_PATH"
保存并退出,重启.bashrc文件:
sudo gedit ~/.bashrc
执行以下命令:
cd /usr/local/cuda/samples/1_Utilities/deviceQuery
sudo make
./deviceQuery
采用如下命令查看CUDA版本:
cd
nvcc -V
进入samples的安装目录,选择一个看是否可以编译成功(同上):
cd NVIDIA_CUDA-9.0_Samples/0_Simple/vectorAdd
make
./vectorAdd
cuDNN是一个SDK(Software Development Kit ,软件开发工具包),是一个专门用于神经网络的加速包,注意,它跟我们的CUDA没有一一对应的关系,即每一个版本的CUDA可能有好几个版本的cuDNN与之对应,但一般有一个最新版本的cuDNN版本与CUDA对应更好。
下载前需要邮箱进行注册和登录,cuDNN各个版本的下载地址:官网链接
我这里选择Download cuDNN v7.6.5 (November 5th, 2019), for CUDA 10.0,选择其中的cuDNN Library for Linux。
下载完成后解压,使用cd ~/Downloads
进入到下载目录然后执行以下命令(或者定位到Downloads文件夹下再打开终端执行以下命令):
sudo cp cuda/include/cudnn.h /usr/local/cuda/include/
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64/
sudo chmod a+r /usr/local/cuda/include/cudnn.h
sudo chmod a+r /usr/local/cuda/lib64/libcudnn*
解释一下以上代码的意思,前两句是把cuda下的两个文件cuda/include/cudnn.h和cuda/lib64/libcudnn*复制到/usr/local/cuda/include/和/usr/local/cuda/lib64/路径下,后两句是修改用户对这两个文件的权限,a+r表示给所有用户添加可读的权限。
最后执行以下命令查看cuDNN版本:
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
Anaconda是一个可以便捷获取包且对包能够进行管理,同时对环境可以统一管理的发行版本。Anaconda包含了conda、Python在内的超过180个科学包及其依赖项。
Conda是一个开源的包、环境管理器,可以用于在同一个机器上安装不同版本的软件包及其依赖,并能够在不同的环境之间切换。
如果想进一步了解Anaconda和Python的关系,可以看一下这篇博客:Anacoda 介绍、安装、环境切换
我参考了网上的安装教程,分别在两台电脑上安装成功,此处贴一下链接:linux下安装Anaconda3,配置python3。完美解决所有坑点!!!
Pytorch是torch的python版本,是由Facebook开源的深度学习框架。Pytorch官网:官网链接
下面的是最新版本,点击图中的install previous versions of PyTorch可以选择安装以前的版本。我们这里选择安装以前的版本,为了和之前的CUDA10.0对应。
然后选择Linux系统下CUDA10.0对应版本的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 --set show_channel_urls yes
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
然后最后一步执行以下命令安装:细心的小伙伴一定发现了下面这条命令与上述红色方框里的命令有所不同了,去掉了末尾的 -c pytorch,这里一定要去掉,不然的话,还是默认从官网安装。
conda install pytorch torchvision cudatoolkit=10.0
中间需要确认的地方yes继续就好
安装完成!
怎么验证PyTorch安装成功了呢,打开终端,输入python
,然后输入import torch
和import torchvision
不报错就说明成功了。
Pycharm是针对Python的IDE(Integrated Development Environment,集成开发环境)。
Pycharm的安装比较简单,直接在Ubuntu Software里面搜索pycharm然后Install就可以了,专业版和社区版对普通用户区别不大,我安装的是社区版。
打开pycharm,新建一个工程保存。打开菜单栏中的File—>Settings—>Project Interpreter,点击右上角的小齿轮后选择Add…
选择左侧System Interpreter,右上角的添加anaconda解释器路径,我的路径是/home/tang/anaconda3/bin/python3.7,选择完毕依次确认即可。
然后如下图所示就添加成功了!
最后我们在pycharm里写一段代码,看看能不能使用GPU加速
import torch as t
x = t.rand(5,3)
y = t.rand(5,3)
if t.cuda.is_available():
x = x.cuda()
y = y.cuda()
print(x+y)