linux 下 tensorflow GPU/CPU版本安装、环境搭建

tensorflow(00)–环境搭建

本文将展示如何在 debian 下安装 CPU/GPU 版本的 tensorflow1.12.0

本文使用的基本环境:deepin15.9(基于debian8)、python3.6、pip9

一、 CPU 版本安装

直接使用 pip 进行安装即可:

pip install tensorflow
# 可使用 ‘==1.x.x’ 指定版本。[eg.] pip install tensorflow==1.6

二、GPU 版本安装

本文依据的机器环境如下:
显卡:NVIDIA GFX150
显卡驱动版本:390.67
gcc 版本:7.3.0

注意:截止本文,安装 GPU 版本的 tensorflow 需要 NVIDIA 的显卡支持,因此
接下来的操作都是在显卡驱动正确安装的基础之上的。(使用 deepin 的用户使用 deepin 的
显卡驱动管理器进行切换即可。其次在安装 cuda 时有安装驱动的选项,由于本人已经安装好了
NVIDIA 的闭源驱动因此并未勾选,没有安装驱动的读者不妨一试)

1. 安装 tensorflow

pip install tensorflow-gpu 

2. 安装 cuda

2.1 确定所需 cuda 版本

在终端下的 python 环境中(或新建一个 py 文件点击运行):

import tensorflow as tf

接下来将会报错,会提示你缺少库文件(由于我们没有安装 cuda):

ImportError: libcublas.so.9.0: cannot open shared object file

以上代码即表明 cuda9.0 未安装成功。不同的 tensorflow 版本对应的 cuda 不同因此报错所需的 libcublas.so 库文件版本也不同。

大多数教程都是先安装 cuda 在安装 tensorflow,但由于tensorflow、cuda、cudnn这三者之间的版本依赖非常严格,因此存在这样一个问题,即教程书写者的配置、操作是正确的(如果不指定版本,pip 将默认安装最新版本的库,由此导致版本不同),对于阅读者来说可能就不正确了。事实上本人就踩了这个坑,安装了 2 次 cuda 才安装成功。因此本文先安装 tensorflow,安装完成之后运行 tensorflow,缺什么补什么。

2.2 下载并安装 cuda

下载:

传送门:https://developer.nvidia.com/cuda-downloads

上述页面中直接提供下载的是 cuda 的最新版本,需要其他版本的读者移步:
https://developer.nvidia.com/cuda-toolkit-archive

选择目标平台(根据自身平台选择),本文所使用的 cuda 平台选择如下:

https://developer.nvidia.com/cuda-90-download-archive?target_os=Linux&target_arch=x86_64&target_distro=Ubuntu&target_version=1704&target_type=runfilelocal

Linux -> x86_64 -> Ubuntu -> 17.02 -> runfile(local)
安装:
(在终端中进入下载目录,本文下载目录为 ~/Downloads/)

sudo sh cuda_9.2.148_396.37_linux.run # cuda_9.2.148_396.37_linux 是你下载的版本

之后会有一系列选择(安装位置、是否创建 samples 、是否安装显卡驱动等)根据自身需要选择,
本文除了安装 NVIDIA 显卡一项选择 n 外其余都选择 y 或默认。
环境变量:
需要将以下三个目录添加到环境变量:

① PATH 中添加:/usr/local/cuda/bin 
② 添加变量:LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64

验证安装是否成功,在终端中输入:

nvcc -V

如果显示版本号即安装成功。(本文版本号:release 9.0, V9.0.176)

任何修改环境变量不在赘述。

3. 安装 cuDDN

cuDDN 的安装非常简单:下载对应版本后解压、设置环境变量即可。(下载 cuDDN 需要注册 NVIDIA 账号)

传送门:https://developer.nvidia.com/cudnn

注意: 切记选择你对应的 cuda 版本的 cuDDN。
(本文:Download cuDNN v7.4.2 (Dec 14, 2018), for CUDA 9.2)

下载完成后将之解压到任意目录(推荐 /opt)。

环境变量

① 追加变量:LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64:/opt/cuda/lib64

至此安转完毕,用一个简单的例子检验是否安装成功:

import tensorflow as tf
hello = tf.constant('Hello, TensorFlow!')
sess = tf.Session()
print(sess.run(hello))

GPU 版本的 tensorflow 安装完成后会默认导入 GPU 版,可能出现以下错误:

警告:Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA

这是因为你使用了 GPU 版本的缘故,忽略即可。

你可能感兴趣的:(机器学习)