2.2 cudnn
- 下载cudnn文件,需要注册账号。
- 安装下载好的cuDNN安装包,如果你安装cuda的目录为默认目录,就可以直接使用如下指令安装:
tar -xvf cudnn-9.0-linux-x64-v7.1.tgz -C /usr/local/
(2)、激活 conda 环境
source activate tensorflow
2.1 cuda
- 官网下载cuda,最好下载9.0版本:
- 选择符合自己机器的设置,选择runfile(local)下载到centos中:
- 需要下载所有补丁,下载后安装cuda:
$ sudo sh cuda_9.0.176_384.81_linux.run
- 测试cuda是否安装
$ cd /usr/local/cuda/samples/1_Utilities/deviceQuery
$ sudo make
$ ./deviceQuery
结果:
2.2、安装cuDNN
安装cudnn比较简单,简单地说,就是复制几个文件:库文件和头文件。将cudnn的头文件复制到cuda安装路径的include路径下,将cudnn的库文件复制到cuda安装路径的lib64路径下。具体操作如下
1 #解压文件
2 tar -zxvf cudnn-8.0-linux-x64-v7.tgz
3
4 #切换到刚刚解压出来的文件夹路径
5 cd cuda
6 #复制include里的头文件(记得转到include文件里执行下面命令)
7 sudo cp /include/cudnn.h /usr/local/cuda/include/
8
9 #复制lib64下的lib文件到cuda安装路径下的lib64(记得转到lib64文件里执行下面命令)
10 sudo cp lib* /usr/local/cuda/lib64/
11
12 #设置权限
13 sudo chmod a+r /usr/local/cuda/include/cudnn.h
14 sudo chmod a+r /usr/local/cuda/lib64/libcudnn*
15
16 #======更新软连接======
17 cd /usr/local/cuda/lib64/
18 sudo rm -rf libcudnn.so libcudnn.so.7 #删除原有动态文件,版本号注意变化,可在cudnn的lib64文件夹中查看
19 sudo ln -s libcudnn.so.7.0.2 libcudnn.so.7 #生成软衔接(注意这里要和自己下载的cudnn版本对应,可以在/usr/local/cuda/lib64下查看自己libcudnn的版本)
20 sudo ln -s libcudnn.so.7 libcudnn.so #生成软链接
21 sudo ldconfig -v #立刻生效
备注:上面的软连接的版本号要根据自己实际下载的cudnn的lib版本号
如图所示:
最后我们看看验证安装cudnn后cuda是否依旧可用
nvcc --version # or nvcc -V
- 1.
安装显卡驱动 - 2.
安装CUDACUDNN - 3.
安装TensorFlow-gpu - 测试
3.4、测试TensorFlow
在python的环境中,运行简单的TensorFlow程序测试(官方demo)
>>> import tensorflow as tf
>>> hello = tf.constant('Hello, TensorFlow!')
>>> sess = tf.Session()
>>> sess.run(hello)
'Hello, TensorFlow!'
>>> a = tf.constant(10)
>>> b = tf.constant(32)
>>> sess.run(a + b)
42
>>> sess.close()
运行如图所示:
至此,TensorFlow安装成功,过程充满了艰辛..(。•ˇ‸ˇ•。)…所以大家安装的时候每一步都至关重要~
PS:如有疑问,请留言,未经允许,不得私自转载,转载请注明出处:
测试
输入:
$ python
>>> import tensorflow
显示:
>>> import tensorflow
/root/anaconda3/lib/python3.6/site-packages/h5py/__init__.py:36: FutureWarning: Conversion of the second argument of issubdtype from `float` to `np.floating` is deprecated. In future, it will be treated as `np.float64 == np.dtype(float).type`.
from ._conv import register_converters as _register_converters
>>>
未报错,安装成功。
转载请注明出处。
(3)、TensorFlow 各个版本(最新的貌似是1.3的版本了)
然后根据要安装的不同tensorflow版本选择对应的一条下载链接(操作系统,Python版本,CPU版本还是CPU+GPU版本),官方文档都有相关信息。
Python 2.7
CPU:
https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.3.0-cp27-none-linux_x86_64.whl
GPU:
https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.3.0-cp27-none-linux_x86_64.whl
===============================================================================================
Python 3.4
CPU:
https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.3.0-cp34-cp34m-linux_x86_64.whl
GPU:
https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.3.0-cp34-cp34m-linux_x86_64.whl
===============================================================================================
Python 3.5
CPU:
https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.3.0-cp35-cp35m-linux_x86_64.whl
GP:
https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.3.0-cp35-cp35m-linux_x86_64.whl
===============================================================================================
Python 3.6
CPU:
https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.3.0-cp36-cp36m-linux_x86_64.whl
GPU:
https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.3.0-cp36-cp36m-linux_x86_64.whl
2. 安装CUDACUDNN
1. 安装显卡驱动
- 检测显卡驱动及型号
$ sudo rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
- 添加ELPepo源
$ sudo rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
- 安装NVIDIA驱动检测
$ sudo yum install nvidia-detect
$ nvidia-detect -v
$ yum -y install kmod-nvidia
一、安装CUDA
CUDA(Compute Unified Device
Architecture),是英伟达公司推出的一种基于新的并行编程模型和指令集架构的通用计算架构,它能利用英伟达GPU的并行计算引擎,比CPU更高效的解决许多复杂计算任务,想使用GPU就必须要使用CUDA。
2.3 环境变量设置
- 环境变量
$ vim ~/.bashrc
在其最后添加:
export PATH=/usr/local/cuda/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
export CUDA_HOME=/usr/local/cuda
- cuDNN建立连接
$ cd /usr/local/cuda/lib64
$ sudo rm -rf libcudnn.so libcudnn.so.7 #删除原有版本号,版本号在cudnn/lib64中查询
$ sudo ln -s libcudnn.so.7.0.5 libcudnn.so.7 #生成软连接,注意自己下载的版本号
$ sudo ln -s libcudnn.so.7 libcudnn.so
$ sudo ldconfig #立即生效
二、安装cuDNN
目录
(5)、在conda环境中安装TensorFlow CPU版
3. 安装TensorFlow-gpu
- 安装anaconda,可以用来建立python3和TensorFlow的一些以来环境。
$ wget https://repo.anaconda.com/archive/Anaconda3-5.2.0-Linux-x86_64.sh #下载anaconda
$ bash anaconda.sh #安装anaconda
$ vim /root/.bashrc #加入环境变量
# 最后一行添加:
export PATH="/root/anaconda3/bin:$PATH"
$ source /root/.bashrc
- 安装TensorFlow
pip install tensorflow-gpu
三、安装Anaconda
Anaconda是python的一个科学计算发行版,内置了数百个python经常会使用的库,也包括许多做机器学习或数据挖掘的库,这些库很多是TensorFlow的依赖库。安装好Anaconda可以提供一个好的环境直接安装TensorFlow。
去Anaconda官网()下载需要版本的Anaconda
下载完后执行如下命令
sudo bash Anaconda3-4.4.0-Linux-x86_64.sh
如图所示:
安装anaconda,回车后,是许可文件,接收许可。直接回车即可。最后会询问是否把anaconda的bin添加到用户的环境变量中,选择yes。在终端输入python发现依然是系统自带的python版本,这是因为环境变量的更新还没有生效,命令行输入如下命令是安装的anaconda生效。如果conda
–version没有找到任何信息,说明没有加入到环境变量没有,需要手动加入,如图所示:
刷新环境变量
source /etc/profile 或者 source ~/.bashrc #(全局的环境变量)
2.1、下载cuDNN
cuDNN是GPU加速计算深层神经网络的库。首先去官网()下载cuDNN,需要注册一个账号才能下载,没有的话自己注册一个。由于本人的显卡是GTX1080Ti,所以下载版本号如图所示,最新的版本是v7:
因为我们前面选择了conda环境为Python3.6的,所以我们选择Python3.6版本的CPU链接地址,进行安装
#如何进行安装,我们这里安装Python版本为3.6的TensorFlow
sudo pip3 install --ignore-installed --upgrade https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.3.0-cp36-cp36m-linux_x86_64.whl
备注:连接里的cpxx和cpxxm的xx是对应Python的版本号
错误归纳:
安装whl包的时候出现“tensorflow-1.3.0-cp36-cp36m-linux_x86_64.whl
is not a supported wheel on this
platform”的问题,和上面安装GPU一样的错误。我们需要下载CPU版的安装包,在安装包下载之后,注意!!!这个时候我们需要将whl文件重命名为tensorflow-1.3.0-py3-none-linux_x86_64.whl,然后手动进入环境,安装TensorFlow。
具体操作如下:
source activate tensorflow #激活tensorflow环境(这步操作了,就忽略)
cd /Downloads #切换到whl文件所在文件夹
pip install --ignore-installed --upgrade tensorflow-1.3.0-py3-none-linux_x86_64.whl #切记,不要用sudo pip,也不要用pip3,然后--ignore-installed --upgrade等参数也不能省略,否则会出错。
其他的和GPU安装是一样的,具体不做讲解。
1.2、安装CUDA(一定要按顺序执行)
下载完成后先执行安装相关依赖的命令,如果不先执行安装依赖包,后面安装CUDA会以下错误报错:
-------------------------------------------------------------
Do you accept the previously read EULA?
accept/decline/quit: accept
Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 375.26?
(y)es/(n)o/(q)uit: n
Install the CUDA 8.0 Toolkit?
(y)es/(n)o/(q)uit: y
Enter Toolkit Location
[ default is /usr/local/cuda-8.0 ]:
Do you want to install a symbolic link at /usr/local/cuda?
(y)es/(n)o/(q)uit: y
Install the CUDA 8.0 Samples?
(y)es/(n)o/(q)uit: y
Enter CUDA Samples Location
[ default is /home/cmfchina ]:
Installing the CUDA Toolkit in /usr/local/cuda-8.0 ...
Missing recommended library: libGLU.so
Missing recommended library: libX11.so
Missing recommended library: libXi.so
Missing recommended library: libXmu.so
Installing the CUDA Samples in /home/cmfchina ...
Copying samples to /home/cmfchina/NVIDIA_CUDA-8.0_Samples now...
Finished copying samples.
===========
= Summary =
===========
Driver: Not Selected
Toolkit: Installed in /usr/local/cuda-8.0
Samples: Installed in /home/cmfchina, but missing recommended libraries
Please make sure that
- PATH includes /usr/local/cuda-8.0/bin
- LD_LIBRARY_PATH includes /usr/local/cuda-8.0/lib64, or, add /usr/local/cuda-8.0/lib64 to /etc/ld.so.conf and run ldconfig as root
To uninstall the CUDA Toolkit, run the uninstall script in /usr/local/cuda-8.0/bin
Please see CUDA_Installation_Guide_Linux.pdf in /usr/local/cuda-8.0/doc/pdf for detailed information on setting up CUDA.
***WARNING: Incomplete installation! This installation did not install the CUDA Driver. A driver of version at least 361.00 is required for CUDA 8.0 functionality to work.
To install the driver using this installer, run the following command, replacing <CudaInstaller> with the name of this run file:
sudo <CudaInstaller>.run -silent -driver
所有大家一定要安装顺序进行安装,先安装依赖的库文件。
(1)安装缺失的依赖库文件
命令如下:
sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-devlibgl1-mesa-glx libglu1 #安装依赖库
(2)安装执行文件
sudo sh cuda_8.0.61_375.26_linux.run #执行安装文件
注意:安装过程中会提示你进行一些确认操作,首先是接受服务条款,输入accept确认,然后会提示是否安装cuda tookit、cuda-example等,均输入Y进行确定。但请注意,当询问是否安装附带的驱动时,一定要选N!
因为前面我们已经安装好最新的驱动NVIDIA381,附带的驱动是旧版本的而且会有问题,所以不要选择安装驱动。其余的都直接默认或者选择是即可。
(3)设置环境变量
-
输入命令,编辑环境变量配置文件
sudo vim ~/.bashrc
-
在文本末端追加以下两行代码(按键“i”进行编辑操作)
export PATH=/usr/local/cuda-8.0/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64:$LD_LIBRARY_PATH
export CUDA_HOME=/usr/local/cuda -
保存退出(按“!wq”),执行下面命令,使环境变量立刻生效
#环境变量立即生效
sudo source ~/.bashrc
sudo ldconfig
如图所示:
(4)检查cuda是否配置正确
到这一步,基本的CUDA已经安装完成了,我们可以通过以下命令查看CUDA是否配置正确:
nvcc --version
如图所示:
(5)测试CUDA的sammples
为什么需要安装cuda
samples?一方面为了后面学习cuda使用,另一方面,可以检验cuda是否真的安装成功。如果cuda
samples全部编译通过,没有一个Error信息(Warning忽略),那么就说明成功地安装了cuda。如果最后一行虽然显示PASS,但是编译过程中有ERROR,请自行网上搜索相关错误信息解决之后。
# 切换到cuda-samples所在目录
cd /usr/local/cuda-8.0/samples 或者 cd /home/NVIDIA_CUDA-8.0_Samples
# 没有make,先安装命令 sudo apt-get install cmake,-j是最大限度的使用cpu编译,加快编译的速度
make –j
# 编译完毕,切换release目录(/usr/local/cuda-8.0/samples/bin/x86_64/linux/release完整目录)
cd ./bin/x86_64/linux/release
# 检验是否成功,运行实例
./deviceQuery
# 可以认真看看自行结果,它显示了你的NVIDIA显卡的相关信息,最后能看到Result = PASS就算成功。
如图所示:
输出结果看到显卡相关信息,并且最后Result
= PASS ,这说明CUDA才真正完全安装成功了