Ubuntu 16安装GPU版本tensorflow

时间:2022-03-24 05:46:04

pre { direction: ltr; color: rgb(0, 0, 0) }
pre.western { font-family: "Liberation Mono", "Courier New", monospace }
pre.cjk { font-family: "Nimbus Mono L", "Courier New", monospace }
pre.ctl { font-family: "Liberation Mono", "Courier New", monospace }
h1 { margin-bottom: 0.21cm; direction: ltr; color: rgb(0, 0, 0) }
h1.western { font-family: "Liberation Serif", "Times New Roman", serif }
h1.cjk { font-family: "Noto Sans CJK SC Regular"; font-size: 24pt }
h1.ctl { font-family: "Noto Sans CJK SC Regular"; font-size: 24pt }
p { margin-bottom: 0.25cm; direction: ltr; color: rgb(0, 0, 0); line-height: 120% }
p.western { font-family: "Liberation Serif", "Times New Roman", serif; font-size: 12pt }
p.cjk { font-family: "Noto Sans CJK SC Regular"; font-size: 12pt }
p.ctl { font-family: "Noto Sans CJK SC Regular"; font-size: 12pt }
code.western { font-family: "Liberation Mono", "Courier New", monospace }
code.cjk { font-family: "Nimbus Mono L", "Courier New", monospace }
code.ctl { font-family: "Liberation Mono", "Courier New", monospace }
a:link { }

Ubuntu 16安装GPU版本tensorflow

1首先安裝显卡驱动

首先去官网上查看适合你GPU的驱动

http://www.nvidia.com/Download/index.aspx?lang=en-us

sudo add-apt-repository ppa:graphics-drivers/ppa

sudo apt-get update

是你查到的版本号)

sudo apt-get install mesa-common-dev

sudo apt-get install freeglut3-dev

执行完上述后,重启(reboot)。

重启后输入

nvidia-smi

如果出现了你的GPU列表,则说明驱动安装成功了。另外也可以通过,或者输入

nvidia-settings

出现

Ubuntu 16安装GPU版本tensorflow

2接着安装CUDA

https://developer.nvidia.com/cuda-downloads

cuda是nvidia的编程语言平台,想使用GPU就必须要使用cuda。

注意这里下载的是cuda8.0的runfile(local)文件

下载完cuda8.0后,执行如下语句,运行runfile文件:

sudo sh cuda_8.0.27_linux.run

因为驱动之前已经安装,这里就不要选择安装驱动。其余的都直接默认或者选择是即可。

ubuntu的gcc编译器是5.4.0,然而cuda8.0不支持5.0以上的编译器,因此需要降级,把编译器版本降到4.9:

在terminal中执行:

sudo
apt-get install gcc -4.9 gcc-5 g++-4.9 g++-5

sudo
update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.9 20

sudo
update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 10

sudo
update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.9 20

sudo
update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-5 10

sudo
update-alternatives --install /usr/bin/cc cc /usr/bin/gcc 30

sudo
update-alternatives --set cc /usr/bin/gcc

sudo
update-alternatives --install /usr/bin/c++ c++ /usr/bin/g++ 30

sudo
update-alternatives --set c++ /usr/bin/g++

配置cuda8.0之后主要加上的一个环境变量声明,在文件~/.bashrc之后加上

gedit
~/.bashrc

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}}

然后设置环境变量和动态链接库,在命令行输入

sudo
gedit /etc/profile

在打开的文件里面加上(注意等号两边不能有空格)

export
PATH=/usr/local/cuda/bin:$PATH

保存之后,创建链接文件

sudo
gedit /etc/ld.so.conf.d/cuda.conf

在打开的文件中添加如下语句:

/usr/local/cuda/lib64

保存退出执行命令行:

sudo
ldconfig

使链接立即生效。

测试cuda的Samples

命令行输入(注意cuda-8.0是要相对应自己的cuda版本)

cd
/usr/local/cuda-8.0/samples/1_Utilities/deviceQuery

make

sudo
./deviceQuery

返回GPU的信息则表示配置成功

3
安装cudnn

上官网下载对应的cudnn

https://developer.nvidia.com/cudnn

下载完cudnn后,命令行输入文件所在的文件夹(ubuntu为本机用户名)

cd
home/ubuntu/Downloads/

tar
zxvf cudnn-8.0-linux-x64-v5.1.tgz #解压文件

cd进入cudnn5.1解压之后的include目录,在命令行进行如下操作:

sudo
cp cudnn.h /usr/local/cuda/include/ #复制头文件

再cd进入lib64目录下的动态文件进行复制和链接:(5.1.5为对应版本具体可修改)

sudo
cp lib* /usr/local/cuda/lib64/ #复制动态链接库

cd
/usr/local/cuda/lib64/

sudo
rm -rf libcudnn.so libcudnn.so.5 #删除原有动态文件

sudo
ln -s libcudnn.so.5.1.5 libcudnn.so.5 #生成软衔接

sudo
ln -s libcudnn.so.5 libcudnn.so #生成软链接

4
安装第三方库

sudo apt-get install python-pip python-dev
sudo apt-get install python-numpy swig python-dev python-wheel 
5 安装tensorflow
sudo -H pip install tensorflow_gpu-1.2.1-cp27-none-linux_x86_64.whl (直接安装tensorflowGPU版本1.2.1)
sudo pip install --upgrade tensorflow_gpu-1.2.1-cp27-none-linux_x86_64.whl (在旧版本上升级到tensorflowGPU版本1.2.1)
sudo pip uninstall tensorflow (卸载tensorflow)