ubantu安装cuda和GPU版tensorflow(详细)

首先十分感谢我的老师对我的支持,终于申请到了电脑,现在终于可以在linux系统下载配置tensorflow-GPU加速器了,对于新手说安装过程也是十分’感动’,掉坑无数,希望本文可以给大家带来帮助。

步骤一:安装Nvidia显卡驱动
步骤二:下载并安装cuda8.0
步骤三:安装GPU版tensorflow
步骤四:安装atom及其插件
步骤五:测试程序

步骤一 :安装Nvidia显卡驱动
安装稳定版Nvidia-384显卡驱动,驱动链接 https://link.zhihu.com/?target=http%3A//www.geforce.com/drivers
打开终端采用如下命令安装

    sudo add-apt-repository ppa:graphics-drivers/ppa
    sudo apt-get update 
    sudo apt-get install nvidia-384
    sudo apt-get install mesa-common-dev
    sudo apt-get install freeglut3-dev

安装完成后在终端输入nvidia-smi查看啊驱动信息:

这里写图片描述
步骤二:下载并安装cuda8.0
说明:ubantu16.04只能安装cuda8.0,其他版本安装很多问题。
1、cuda下载
历史版本链接https://developer.nvidia.com/cuda-toolkit-archive(需要注册后下载,毕竟免费嘛),记得选择cuda8的版本。
这里写图片描述

下载的是run文件(不要问为什么不载deb文件,说多了都是泪… …)
2、cuda安装

cd /download/ #首先跳转至下载目录或者直接在下载目录打开终端
sudo chmod +x cuda_8.0.61_375.26_linux.run 
sudo ./cuda_8.0.61_375.26_linux.run 

画重点,敲!黑!! 板!!!

这里写图片描述
安装提示是否安装Linux-x86_64 361.62驱动,这里必须输入“N”不安装,因为我们在步骤一就安装了稳定的Nvidia驱动嘛,如果不小心按下了“Y”,那么恭喜你,cuda后面的安装都会出错[笑哭]。
后面的全部按照默认即可,然后耐心等待一下,可以去喝杯茶或者咖啡~。

安装完毕后,再声明一下环境变量,并将其写入到 ~/.bashrc 的尾部,终端输入:sudo 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}}

最后测试cuda8.0,在终端执行以下命令:

cd ~/NVIDIA_CUDA-8.0_Samples/1_Utilities/deviceQuery
make
./deviceQuery

输出Result = PASS 表示安装成功。

这里写图片描述

步骤三:安装GPU版tensorflow

    #安装python3
    sudo apt-get install python-pip python-dev 
    sudo apt-get install python3

    #安装pip用来安装tensorflow
    sudo apt-get install python3-pip
    sudo pip3 install -upgrade pip

    #选择python3作为默认,我们使用python3编写程序
    sudo update-alternatives --config python 
    sudo pip3 install tensorflow-gpu

安装完成后可以在终端测试以下,如下图tensorflow安装成功

这里写图片描述

步骤四:安装atom及其插件

可以参考链接:http://blog.csdn.net/li_haiyu/article/details/78950819

步骤五:测试程序
最后在atom新建一个文件保存问.py文件,测试代码如下:

# Creates a graph.
import tensorflow as tf
a = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[2, 3], name='a')
b = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[3, 2], name='b')
c = tf.matmul(a, b)
# Creates a session with log_device_placement set to True.
sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))
# Runs the op.
print(sess.run(c))

这里写图片描述

最后输出如下,可以看到使用编译代码的设备,“GPU :0”:自己电脑上的GPU。如果电脑还有多个GPU,则为“GPU:1/2/3”。

这里写图片描述

总结:自己摸索找资料的确花费很多时间,希望本文能给大家带来帮助。
参考链接1:http://blog.csdn.net/u013294888/article/details/56666023
参考链接2:https://zhuanlan.zhihu.com/p/31430631
参考链接3:http://www.52nlp.cn/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0%E4%B8%BB%E6%9C%BA%E7%8E%AF%E5%A2%83%E9%85%8D%E7%BD%AE-ubuntu-16-04-nvidia-gtx-1080-cuda-8
参考链接4:https://zhuanlan.zhihu.com/p/28083241

猜你喜欢

转载自blog.csdn.net/li_haiyu/article/details/78950915
今日推荐