大家都在看

主页 > A派生活 >AI 加速器自学组装指南(二)-Tensorflow 软体架设 >

AI 加速器自学组装指南(二)-Tensorflow 软体架设

2020-06-06 来源:http://www.678salon.com 559
AI 加速器自学组装指南(二)-Tensorflow 软体架设

在上一篇谈完硬体组装基本架构后,这篇我们要谈的是 Tensorflow 软体架设,要安装软体,使用者当然要有 Linux 的安装概念与实作,因为这可是要用到终端机指令才行,而非如 Windows 安装那般一直按滑鼠点按即可。

AI- Tensorflow with GPU 安装纪录

OS: Ubuntu 16.04.03 LTS (Server Version)
Python: 3.5.2
Tensorflow: 1.3.0
Graphics Card: Nvidia Tesla P100
Graphics Card Driver: NVIDIA-Linux-x86_64-384.81.run
CUDA Version: cuda_8.0.61_375.26_linux & cuda_8.0.61.2_linux (20171020时测试只能用cuda 8),cuda_9.0.176_384.81_linux (因Tensorflow 1.3不支援cuda 9)
cuDNN Version: cudnn-9.0-linux-x64-v7.tgz
Test Package: libcudnn7-doc_7.0.3.11-1+cuda9.0_amd64.deb

Google 有推出开放原始版的 AI 套件来让一般人使用,本次是记录安装 Tenforflow with GPU 的安装过程,Tensorflow 的安装方式有两大类和 4 种方式,可以根据你的需求再做调整。AI 加速器自学组装指南(二)-Tensorflow 软体架设

本次安装是选择 TensorFlow with GPU support + virtualenv,选择用 virtualenv 安装是因为维护方便,以下会分两大部分来介绍,因为文章和图片不少,所以会分成两篇来记录。

第一部分  前置準备( Part 1 Pre-installation)

前置準备的部分包含了,显卡驱动程式的安装和 CUDA、CUDNN 驱动程式的安装,另外铁的教训,不要想偷懒,请爱用 Source Code 安装,用套件管理程式来安装,未来有许多坑等着你自己跳。
首先,更新各项套件到最新版本。

AI 加速器自学组装指南(二)-Tensorflow 软体架设

接着安装开发所需要的工具。

AI 加速器自学组装指南(二)-Tensorflow 软体架设

要安装显卡驱动程式之前请先关闭 nouveau,因为 Ubuntu 系统整合的显示卡驱动程式是 nouveau,我们需要先将 nouveau 从 linux 核心移除掉才能安装 NVIDIA 官方驱动,方法就是将 nouveau 添加到黑名单 blacklist.conf 中。(P.S. 不管你是 Desktop Version 还是 Server Version 都要做,因为不做的话预设是启动 nouveau,你会发现你安装完显卡驱动程式一重开机之后,之前装好的驱动却没有反应的问题。)

确认一下档案的属性和位置,不同版本的 Linux 位置存放点都不同,这边以 Ubuntu 16.04 版为主。

到这个文件的最底层,加上以下清单。

AI 加速器自学组装指南(二)-Tensorflow 软体架设

AI 加速器自学组装指南(二)-Tensorflow 软体架设

增加完毕存档后离开 vim 模式,terminal 模式底下更新核心模组。

AI 加速器自学组装指南(二)-Tensorflow 软体架设

执行完毕后没有任何问题就重新开机。

重开机完成之后可以检查看看有没有成功关闭,下面第一张图是还没关闭前,第二张是关闭后。

AI 加速器自学组装指南(二)-Tensorflow 软体架设AI 加速器自学组装指南(二)-Tensorflow 软体架设

你会发现本来有的模组就没有再被读取到了,接着安装下载好的 Nvidia Driver。

AI 加速器自学组装指南(二)-Tensorflow 软体架设AI 加速器自学组装指南(二)-Tensorflow 软体架设

基本上都是确定就可以,但最后一个步骤它会问你允不允许 Nvida 自动修改 X Configure 档案,网路上有人建议是选 NO,有人说依照预设既可,也有人说可以,因为不确定到底影响在哪里,所以为了可以顺利安装下去,这边以选择 YES 为主。

安装完毕之后可以执行 Nvidia 提供的工具来看看有无安装成功。

AI 加速器自学组装指南(二)-Tensorflow 软体架设

接着安装下载回来的 CUDA Toolkit 8.0。

AI 加速器自学组装指南(二)-Tensorflow 软体架设

安装过程中基本上都是依照预设就可以,但是中间会问你要不要安装它内建的显卡驱动程式,这边一定要选 NO,因为你前面已经装了最新版的显卡驱动了。详情可以参考 NVIDIA 的官方文件。
安装完毕后会出现告警视窗,说你没有安装它的驱动程式,无视它就好,接着要设定相关的环境变数路径,如果不设定的话执行程式会出现找不到 Library 的问题,因为是用 run 来安装,所以安装完毕后 cuda 的路径通常会在 /usr/local/cuda-8.0/bin 底下,记得在要执行程式的使用者帐号底下的 .bashrc 加入以下两行变数(这边以 64bit 为主),详情可以参考 NVIDIA 官方文件的第 6 章(图截的是 9.0 测试的,但是过程是一样的)。

AI 加速器自学组装指南(二)-Tensorflow 软体架设AI 加速器自学组装指南(二)-Tensorflow 软体架设

安装完毕之后可以测试看看 cuda 有没有安装成功,首先到刚刚安装 cuda 的时候会问你 sample 档案要放在哪里,预设是你下载 cuda 的位置,以本例来说就是到「 /home/mis/NVIDIA_CUDA-8.0_Samples」,Compiler 之后会出现 bin 的目录,到底下去,执行相关的测试程式。

AI 加速器自学组装指南(二)-Tensorflow 软体架设AI 加速器自学组装指南(二)-Tensorflow 软体架设AI 加速器自学组装指南(二)-Tensorflow 软体架设

AI 加速器自学组装指南(二)-Tensorflow 软体架设

AI 加速器自学组装指南(二)-Tensorflow 软体架设

如果有安装成功的话就会显示「Result = PASS」的字样,接着要安装 cuDNN,因为 Tensorflow 目前的版本只支援到 CUDA 8.0,而且后来真的在使用 Tensorflow 的时候发现只装 CUDA 8.0 根本不够用,所以就全装吧。

实际跑 Tensorflow 后会发现可能需要用到这 3 样东西,所以就都先下载下来吧,然后再放到 Server 上解压缩,要注意目录名称不要重複,详情可以参考 NVIDIA 官方文件的第 2 章。

AI 加速器自学组装指南(二)-Tensorflow 软体架设AI 加速器自学组装指南(二)-Tensorflow 软体架设

如果之后执行 tensorflow 的时候有出现「ImportError: libcudart.so.6.0: cannot open shared object file: No such file or directory」,就补安装刚刚下载下来的旧版 Library 就好(例如: cuDNN v6.0)
接着来测试看看 cuDNN 有没有装成功,这边是个满诡异的情况,因为官方文件使用 tar 来安装的话就没有地方可以单独下载测试文件,而测试文件却只有包在 deb 档案裏面,变成你还要额外下载 deb 档案下来并且安装才行,但是要注意不要下载到 runtime 的 deb 档案,下载测试用的 sample 就好并且安装。

安装后会出现 /usr/src/cudnn_samples_v7 的目录,把这个目录 CP 到自己的家目录底下,并且 Compiler 和执行。

如果都成功的话会显示「Test passed」的字样。

AI 加速器自学组装指南(二)-Tensorflow 软体架设AI 加速器自学组装指南(二)-Tensorflow 软体架设

AI 加速器自学组装指南(二)-Tensorflow 软体架设

AI 加速器自学组装指南(二)-Tensorflow 软体架设

到这边第一部分準备完成,可以进行第二部分 Tensorflow 主程式的安装啰。

第二部分  Tensorflow GPU 版安装(Part 2 Install Tensorflow with GPU)

OS: Ubuntu 16.04.03 LTS (Server Version)
Python: 3.5.2
Tensorflow: 1.3.0
Graphics Card: Nvidia Tesla P100
Graphics Card Driver: NVIDIA-Linux-x86_64-384.81.run
CUDA Version: cuda_8.0.61_375.26_linux & cuda_8.0.61.2_linux (20171020 时测试只能用 cuda 8),cuda_9.0.176_384.81_linux (因 Tensorflow 1.3.0 尚未支援 cuda 9)
cuDNN Version: cudnn-9.0-linux-x64-v7.tgz
Test Package: libcudnn7-doc_7.0.3.11-1+cuda9.0_amd64.deb

首先是安装和更新相关套件的版本。

AI 加速器自学组装指南(二)-Tensorflow 软体架设

再来是利用 python 的虚拟环境来建立 tensorflow 的运作环境。

上面红色的安装路径可以由自己来决定,没有强制规定一定要放在哪里,以本例来说是放在 /opt/tensorflow 下,你没特别指定的话,预设是你目前操作的使用者帐号的家目录底下。

AI 加速器自学组装指南(二)-Tensorflow 软体架设

安装完毕后就可以启动 tensorflow 的执行环境了。

AI 加速器自学组装指南(二)-Tensorflow 软体架设

可以看到你的命令提示字元前面多了一个「(tensorflow)」,代表已经启用了。安装完毕后可以先更新套件一下。(注意下面的指令需要在有「(tensorflow)」的时候使用才行)。

AI 加速器自学组装指南(二)-Tensorflow 软体架设

可以开始来测试看看有没有正常运作,先输入以下指令。

AI 加速器自学组装指南(二)-Tensorflow 软体架设

然后依序输入以下指令后你会看到程式回传给你「’Hello, TensorFlow’」的字样代表是有正常在运作的。

AI 加速器自学组装指南(二)-Tensorflow 软体架设

要离开 tensorflow 的执行环境的话就输入:



上一篇: 下一篇: