前言
本文主要讲解在Ubuntu16.04 LTS系统上通过Anaconda安装配置不同版本的CUDA、CUDNN、TensorFlow以及Keras。在其它版本的Ubuntu上应该也是适用的(没有经过验证)。
由于需要安装的软件包很多,不同版本之间的适配就是一个比较大的问题,经过尝试采用了下面的搭配:Anaconda 5.0.1+python3.5+CUDA 8.0+CUDNN 6.0 +TensorFlow1.3或1.4+Keras2.0.8,下面进行逐步安装。
一,Anaconda安装及TensorFlow环境配置
在Anaconda官网下载Linux版本的安装文件:Anaconda3-5.0.1-Linux-x86_64.sh。本地下载后上传到服务器上,在命令行中输入:
sh /path/Anaconda3-5.0.1-Linux-x86_64.sh
按照提示进行安装。
安装完成之后,可以输入conda
命令进行测试,如果显示command not found
,这时进入root
目录,输入source ~/.bashrc
进行配置文件的激活,之后就可以使用了。
使用conda命令创建一个python版本为3.5的TensorFlow环境(默认为3.6.3):
conda create -n tensorflow python=3.5
创建完成之后,通过下面命令激活并进入tensorflow环境:
source activate tensorflow
进入环境之后可以通过conda list
命令查看当前已经安装的包。
使用conda info -e
可以查看当前所在的环境(默认环境为anaconda3)
输入下面的命令退出当前的tensorflow环境
source deactivate
新建环境之前建议更换anaconda的源,这样速度会非常快!
在创建环境之前输入下面命令:
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --set show_channel_urls yes
即可
二,安装CUDA
到CUDA官网下载CUDA8.0
的包,目前最新的是9.0,如果下载不到可以到网上搜索下载。本次安装使用的cuda包名为:cuda_8.0.61_375.26_linux.run
。将该包上传到服务器上,输入下面命令进行安装:
./path/cuda_8.0.61_375.26_linux.run
注意:安装过程中会询问你很多选项,其中一个是问你是否安装驱动(driver),如果显卡已经安装过的话这里就输入no
安装完成之后通过下面的命令将CUDA路径添加至环境变量:
sudo gedit /etc/profile
在打开的文件中添加:
export CUDA_HOME=/usr/local/cuda-8.0
export PATH=/usr/local/cuda-8.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
之后退出编辑在命令行中输入source /etc/profile
即可。
可以在命令行中输入下面命令进行测试:
nvcc -V
CUDNN的安装
CUDNN为一加速库,为可选安装项。从官网下载需要注册账号申请,两三天批准。网盘搜索一般也能找到需要的版本。本次安装为6.0版,文件名为cudnn-8.0-linux-x64-v6.0.tgz
。将该压缩包解压后是名为cuda
的文件夹,里面有include
和lib64
两个文件夹,进入cuda
目录,输入下面命令进行安装:
sudo cp include/cudnn.h /usr/local/cuda/include/
>>> sudo cp lib64/* /usr/local/cuda/lib64/
>>> cd /usr/local/cuda/lib64
>>> sudo ln -sf libcudnn.so.6.1.12 libcudnn.so.6
>>> sudo ln -sf libcudnn.so.6 libcudnn.so
>>> sudo ldconfig -v
注:
libcudnn.so.6.1.12
中的6.1.12
为版本号,不同的安装包这个对应的版本号不同。安装包解压完毕后可以进入lib64
目录中查看对于的版本。
Tensorflow安装
注意:建议安装Tensorflow和下面的Keras时,统一使用conda命令或者pip命令,不要混着用,可能会出错。同时建议尽量使用pip命令进行安装。
使用下面命令激活第一步添加的tensorflow
环境:
source activate tensorflow
进入成功后可以在命令行输入的开头看到(tensorflow)
的标注:
注:图片中的环境名为
tensorflow-py-3.5
在该环境下输入下面命令进行tensorflow
:
pip install tensorflow_gpu
or
conda install tensorflow_gpu
安装的过程会自动选择一些依赖包,建议选择yes
进行安装。不断下一步即可。
安装成功后可进入python
环境,导入tensorflow
包,如果没有错误的话,说明安装成功。
#导入tensorflow
import tensorflow
pip临时换源:(速度很快)
pip install tensorflow -i https://pypi.tuna.tsinghua.edu.cn/simple
Keras安装
Keras的安装比较见到,直接输入命令进行安装即可:
pip install keras
or
conda install keras
安装成功后可以进入python
环境进行测试:
import keras
此时会输出Using TensorFlow backend
,如下:
Using TensorFlow backend
下面的输出时机器上当前GPU设备的情况。
Keras中mnist数据集测试
使用git
下载keras
对应的开发包,运行里面自带的测试文件。
#如果有git,则不需要安装
pip install git
git clone https://github.com/fchollet/keras.git
cd keras/examples/
python mnist_cnn.py#使用所有可用的GPU进行计算
运行不出错即可。
当想要指定GPU进行运算时,可参见Keras指定使用GPU运算
在运行过程中,程序需要到 https://s3.amazonaws.com/img-datasets/mnist.npz 下载
MNIST
的训练文件,由于被墙了,基本上下载不动,这里上传一个离线的版本,链接: https://pan.baidu.com/s/1bppUbeR 密码: 77uv,下载完毕后放到对应文件夹即可。ubuntu的路径在.keras/datasets/
.