从零开始安装双系统Ubuntu18.04、CUDA、cuDNN、TensorFlow-GPU

目录

0 写在开头

1 安装双系统——Ubuntu18.04

1.1 制作Ubuntu18.04的启动U盘

1.2 创建磁盘分区

1.3 安装Ubuntu

3 安装NVIDIA显卡驱动

4 安装CUDA

4.1 手动进行降级

4.2 安装CUDA及其补丁

4.3 测试CUDA是否安装成功

5 安装cuDNN

5.1 下载

5.2 复制cuDNN内容到CUDA相关文件夹内

6 安装TensorFlow-GPU

6.1 安装

6.2 测试安装是否成功


0 写在开头

在训练神经网络模型时,GPU运算能显著地提高运算速度。TensorFlow等许多深度学习框架可以支持在NVIDIA公司的显卡上进行加速运算,但目前不支持AMD公司的显卡。

需要提醒的是,并不是NVIDIA公司的所有显卡都能支持CUDA、TensorFlow-GPU运算。只有当电脑上NVIDIA显卡的性能满足要求时,才可以支持CUDA。参考NVIDIA官网:https://developer.nvidia.com/cuda-gpus

并且,只有当电脑上显卡的Compute Capability大于等于3.0时,才能支持TensorFlow-GPU。否则,即使成功地安装了CUDA,也不能使用GPU加速TensorFlow的运算。

1 安装双系统——Ubuntu18.04

安装双系统是指,原先的电脑已经安装了一个操作系统,比如Windows7、Windows10等操作系统,然后再重新安装一个操作系统。在安装的时候,两个系统是分别装在不同的分区内,后安装的系统不会覆盖前一个系统。而且每个单独的系统都有自己的分区格式,不会造成冲突的。安装了双系统后,在启动的时候,有一个多重启动的选择菜单,可以选择进入那个操作系统。当前状态下,只有一个系统是在运行的,不能随意的切换。如果想要进入另外一个,就要重新启动,重新选择。

本文介绍的是如何在Windows7或者Windows10的电脑上安装Linux操作系统之Ubuntu18.04。需要注意的是,如果对安装操作系统、磁盘分区等操作不熟悉,建议在执行以下操作前备份电脑中的数据。

1.1 制作Ubuntu18.04的启动U盘

在Ubuntu的官网上下载18.04,下载地址为:http://releases.ubuntu.com/18.04/

使用UltraISO软件,制作启动U盘。首先需要准备一个空白的或者备份过的U盘,U盘大小在4GB及以上。将U盘插入电脑,进入UltraISO,打开镜像文件(即下载好的Ubuntu18.04 ISO镜像文件)。

         

点击"启动"->"写入硬盘映像..."

          

按照默认设置的参数并执行写入操作

           

           

至此,完成了Ubuntu18.04启动U盘的制作。

1.2 创建磁盘分区

同时按下Windows键和X键,在弹出的列表中选择“磁盘管理”

          

选择剩余可用空间较大的磁盘分区,右键并选择“压缩卷”。图中选择的是压缩E盘60G的空间。

           从零开始安装双系统Ubuntu18.04、CUDA、cuDNN、TensorFlow-GPU_第1张图片

点击“压缩”之后,E盘后部出现黑色的60G“未分配空间”

            从零开始安装双系统Ubuntu18.04、CUDA、cuDNN、TensorFlow-GPU_第2张图片

至此,磁盘分区过程完成。

1.3 安装Ubuntu

插入U盘,重启电脑。在出现电脑品牌的LOGO界面时,按下BIOS的快捷键(电脑型号不同快捷键不同)。进入系统BIOS后设置优先U盘启动,设置后电脑自动重启并进入Ubuntu安装界面。

         

用户根据自己的需要选择语言等选项,这些设置都不是非常重要。

但是,下图“安装类型”的设置至关重要。一定要选择“其他选项”。

          

          从零开始安装双系统Ubuntu18.04、CUDA、cuDNN、TensorFlow-GPU_第3张图片

分配空间时需要注意:

第一次分区:

“空闲”处点“+”,进行如下设置:

大小:25600MB(设置分配给Ubuntu 根目录的空间。因为避免出现CUDA和TensorFlow安装时根目录存储空间不够的情况,建议设置20GB以上。)

新分区的类型:主分区

新分区的位置:空间起始位置

用于:EXT4日志文件系统

挂载点:“/”

            从零开始安装双系统Ubuntu18.04、CUDA、cuDNN、TensorFlow-GPU_第4张图片

第二次分区:

“空闲”处,继续点“+”,如下设置,

大小:4096MB

新分区的类型:逻辑分区

新分区的位置:空间起始位置

用于:交换空间

挂载点:(不需要设置)

           从零开始安装双系统Ubuntu18.04、CUDA、cuDNN、TensorFlow-GPU_第5张图片

第三次分区:

“空闲”处,继续点“+”,如下设置,

大小:512MB(网上有的文章设置的200MB,但是会导致安装时GRBU配置出现问题“GRUB installation failed”)

新分区的类型:逻辑分区

新分区的位置:空间起始位置

用于:EXT4日志文件系统

挂载点:/boot

           从零开始安装双系统Ubuntu18.04、CUDA、cuDNN、TensorFlow-GPU_第6张图片

第四次分区:

“空闲”处,继续点“+”,如下设置,

大小:剩余的全部空间,剩下多少就显示多少

新分区的类型:逻辑分区

新分区的位置:空间起始位置

用于:EXT4日志文件系统

挂载点:/home

           从零开始安装双系统Ubuntu18.04、CUDA、cuDNN、TensorFlow-GPU_第7张图片

分区设置完毕后,下方还有一个设置项“安装启动引导器的设备”,选择/boot 所在分区进行安装,然后点击“现在安装”。

         从零开始安装双系统Ubuntu18.04、CUDA、cuDNN、TensorFlow-GPU_第8张图片

接下来的设置按照提示一步一步进行下去就可以了。

完成所有的安装设置后,会提示重启电脑。重启过后,就安装成功了。

需要注意的是,按照如下的安装方式,在Windows7操作系统下,开机时会有选项让用户选择打开哪个操作系统(Windows7还是Ubuntu18.04),不会有任何的影响。但是,如果主操作系统是Windows10,在Windows10重启后会自动地修改电脑BIOS的BOOT选项,使得无法引导打开Ubuntu18.04的操作系统。此时,可以在开机时打开BIOS,手动调整BOOT顺序,从而打开Ubuntu18.04操作系统。

3 安装NVIDIA显卡驱动

打开Ubuntu18.04的命令行,输入以下命令以安装Ubuntu18.04的显卡驱动。

sudo ubuntu-drivers autoinstall

驱动安装完成后,一定要重新启动电脑。打开Ubuntu18.04的“设置"->"详细信息"->"关于"。如果"图形处理"处对应于自己的独立显卡的型号,那么说明安装成功。

4 安装CUDA

根据我的多次实验,目前在Ubuntu18.04系统上,适合安装的CUDA版本是9.0版本。安装9.0以上的版本会导致TensorFlow-GPU在运行时报错,“import error:libcuda.so.9.0:cannot open shared object file:no such file or directory”。

下载地址:https://developer.nvidia.com/cuda-90-download-archive

按照下图进行选择

需要下载5个文件,第一个是主文件,后面的4个是补丁。

          从零开始安装双系统Ubuntu18.04、CUDA、cuDNN、TensorFlow-GPU_第9张图片

下载完成后,开始安装:

4.1 手动进行降级

在命令行逐行输入下面的命令

sudo apt-get install gcc-4.8
sudo apt-get install g++-4.8
cd /usr/bin
sudo mv gcc gcc.bak
sudo ln -s gcc-4.8 gcc
sudo mv g++ g++.bak
sudo ln -s g++-4.8 g++

分别查看gcc和g++版本号

gcc -v
g++ -v

如果显示version为4.8,那么说明降级成功。

4.2 安装CUDA及其补丁

输入命令安装Base Installer

sudo sh cuda_9.0.176_384.81_linux.run

执行代码后,会出现Notice内容,按下键盘上的D按键可以快速翻页。

需要注意的是,由于已经安装过NVIDIA显卡驱动程序,故在提问是否安装显卡驱动时选择No,其他选择默认路径或者选择Yes即可。

然后,继续执行以下命令逐一安装4个patch:

sudo sh cuda_9.0.176.1_linux.run
sudo sh cuda_9.0.176.2_linux.run
sudo sh cuda_9.0.176.3_linux.run
sudo sh cuda_9.0.176.4_linux.run

安装完毕之后,在命令行输入下面的代码

sudo gedit ~/.bashrc

将以下两条语句加入.bashrc文件中

export PATH=/usr/local/cuda-9.0/bin${PATH:+:$PATH}}      #注意,根据自己的版本,修改cuda-9.2/9.0...
export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}} #注意,根据自己的版本,修改cuda-9.2/9.0...

至此,CUDA安装完成。

4.3 测试CUDA是否安装成功

在命令行中输入下列命令

cd ~/NVIDIA_CUDA-9.0_Samples/1_Utilities/deviceQuery
make
sudo ./deviceQuery

查看输出结果,如果最后一行是"Result = Pass"表示CUDA安装成功。

           这里写图片描述

再输入下列命令

cd ../bandwidthTest
make
sudo ./bandwidthTest

查看输出结果,如果出现"Result = Pass"表示CUDA安装成功。

           这里写图片描述

5 安装cuDNN

由于安装的是CUDA9.0版本,所以安装的cuDNN的版本对应的是7.2.1

5.1 下载

从零开始安装双系统Ubuntu18.04、CUDA、cuDNN、TensorFlow-GPU_第10张图片

下载"cuDNN v7.2.1 Library for Linux",下载完毕后,进入到Downloads文件夹路径下,可以看到压缩包,然后解压。

5.2 复制cuDNN内容到CUDA相关文件夹内

在命令行中输入

sudo cp cuda/include/cudnn.h    /usr/local/cuda/include      注意,解压后的文件夹名称为cuda ,将对应文件复制到 /usr/local中的cuda内
sudo cp cuda/lib64/libcudnn*    /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn.h   /usr/local/cuda/lib64/libcudnn*

至此,cuDNN安装完成。

6 安装TensorFlow-GPU

6.1 安装

在命令行中输入

pip3 install tensorflow-gpu

安装完成之后输入

python3

在python3的交互模式中输入

>>> from tensorflow.python.client import device_lib
>>> device_lib.list_local_devices()

如果出现下图所示,GPU被列出来,那么表明安装成功。

         从零开始安装双系统Ubuntu18.04、CUDA、cuDNN、TensorFlow-GPU_第11张图片

6.2 测试安装是否成功

在Python环境中输入下列代码

import numpy

import tensorflow as tf

a = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[2, 3], name='a')

b = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[3, 2], name='b')

c = tf.matmul(a, b)

sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))

print(sess.run(c))

如果输出的信息类似下图,则表明TensorFlow-GPU安装成功,并且利用GPU加速运算。

            从零开始安装双系统Ubuntu18.04、CUDA、cuDNN、TensorFlow-GPU_第12张图片

                                                            您的支持是我不断前行的动力,谢谢!

从零开始安装双系统Ubuntu18.04、CUDA、cuDNN、TensorFlow-GPU_第13张图片从零开始安装双系统Ubuntu18.04、CUDA、cuDNN、TensorFlow-GPU_第14张图片

你可能感兴趣的:(sys)