转载请注明出处:blog.csdn.net/sproll


本文描述在ubuntu系列操作系统上安装gpu版本的tensorflow的过程。


0,准备工作

BIOS中关闭板载显卡,显示器接在nvidia显卡上。

下载cuda和cudnn:cuda_8.0.44_linux.run,cudnn-8.0-linux-x64-v5.1.tgz

以上驱动为本文编写时的最新驱动。

1,安装linux

安装mint18或者mint 18.1(也可以安装对应的ubuntu16.04),并更新源。

具体操作步骤见网上的帮助文档。

2,禁止nouveau驱动

nouveau为非官方的开源nvidia驱动,默认情况下系统采用该驱动配合nvidia显卡。安装官方驱动前要先关闭该驱动。

在/etc/modprobe.d/blacklist.conf文件中添加:

blacklistnouveau

执行完毕后重启。此时电脑进入cpu模拟显卡输出视频的状态。

3,解决tty不能显示问题

设置tty显示参数,否则如果在quiet模式下即关闭xwindows,将导致黑屏。

在/etc/default/grub文件中,修改GRUB_CMDLINE_LINUX_DEFAULT的值为nomodeset

然后执行以下命令更新grub

sudoupdate-grub

执行完毕后重启。

4,关闭xwindows

安装显卡驱动必须先关闭当前xwindows。

执行以下命令关闭xwindows

sudoinit3

执行完毕后,如有需要,使用以下命令切换tty

Ctrl+alt+Fn

Fn为F1-F8的功能键。

5,安装cuda

cuda和cudnn为nvidia的支持库,tensorflow运行时需要它的支持。

执行cuda安装文件:cuda_8.0.44_linux.run,安装过程中需要回答一些问题,如果不明白问题的含义,可以对所有问题都选择acceptyes或者直接按回车(有时会提示选择某些组件的安装路径,按回车就是使用默认的路径)。

在安装cuda过程中,会提示是否选择安装nvidia驱动,一定要选择是。

6,安装cudnn

Cudnn包(cudnn-8.0-linux-x64-v5.1.tgz)解压后,将includelib64目录拷贝到/usr/local/cuda-8.0目录下。

7,安装pythonpippythondev

tensorflow需要python支持,执行以下命令行安装:

sudoapt-getinstallpython-pippython-dev

8,安装tensorflow

根据phthoncuda版本,安装相应版本的tensorflow。本次安装的phthonV2.7cudaV8.0,相应的tensorflow版本为V1.0

在命令行中执行安装命令:

sudo pip install --upgrade https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.0.0-cp27-none-linux_x86_64.wh

其中,tensorflow的地址(https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.0.0-cp27-none-linux_x86_64.wh)在其github主页上有说明,不同的python版本、操作系统、是否使用GPU,都会对应不同的下载地址。

安装过程中,下载可能会失败,失败的话重新执行以上命令安装。

有时pip会因为版本过旧安装失败,失败时会提示执行更新pip命令:pip--upgradepip

Youareusingpipversion8.1.1,howeverversion9.0.1isavailable.

Youshouldconsiderupgradingviathe‘pip--upgradepip’command.

然后继续重新安装tensorflow即可。

9,添加cuda路径

安装完成后,在用户目录下修改.bashrc文件(.bashrc为隐藏文件),添加以下两行,将cuda目录添加到环境变量的lib搜索目录中。

exportLD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/cuda/lib64:/usr/local/cuda/extras/CUPTI/lib64"

exportCUDA_HOME=/usr/local/cuda

10,测试tensorflow

输入以下文件内容,保存为hello.py文件。

importtensorflowastf

hello=tf.constant('Hello,TensorFlow!')

sess=tf.Session()

printsess.run(hello)

a=tf.constant(10)

b=tf.constant(32)

printsess.run(a+b)

打开控制台,进入hello.py的目录,输入以下命令,运行python

python hello.py

如果输出以下内容表示tensorflow加载成功。

Hello,TensorFlow!

42

如下图所示:

在ubuntu或者min运行环境下安装gpu版本的tensorflow的更多相关文章

  1. android – 符合Nvidia Tegra profiler 2.0的移动设备

    解决方法通常任何基于Tegra4和K1的设备都可以工作,但我会推荐Nvidia的Shield/Note用于你的工作,不仅是他们退出便宜,而且他们的机器人留下了很多香草使它更容易使用.还有(可用的)更新策略的优点.

  2. 如何在Android平台上使用Tensorflow?

    谷歌为开发者提供了TENSORFLOW开源软件.有什么方法可以在Android上使用它吗?

  3. 直接在Android NDK端使用tensorflow(不使用JAVA api)

    如何在Android上使用Capis构建和链接tensorflow库.你能指导我吗?

  4. 是否有可能在Android上训练tensorflow?

    似乎没有CAPI来训练张量流图并保存到pb.so,在Android平台上有什么办法吗?我可以在Android设备上使用pythonAPI构建tensorflow工作区吗?

  5. python深度学习tensorflow1.0参数和特征提取

    这篇文章主要为大家介绍了python深度学习tensorflow1.0参数和特征提取,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

  6. python人工智能tensorflow函数tf.get_variable使用方法

    这篇文章主要为大家介绍了python人工智能tensorflow函数tf.get_variable使用方法示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

  7. python人工智能tensorflow优化器Optimizer算法汇总

    这篇文章主要为大家介绍了python人工智能tensorflowtf优化器Optimizer算法汇总,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

  8. python神经网络tensorflow利用训练好的模型进行预测

    这篇文章主要为大家介绍了python神经网络tensorflow利用训练好的模型进行预测,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

  9. python人工智能tensorflow函数np.random模块使用

    这篇文章主要为大家介绍了python人工智能tensorflow函数np.random模块使用方法,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

  10. python人工智能tensorflow函数tensorboard使用方法

    这篇文章主要为大家介绍了python人工智能tensorflow函数tensorboard使用方法,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

随机推荐

  1. crontab发送一个月份的电子邮件

    ubuntu14.04邮件服务器:Postfixroot收到来自crontab的十几封电子邮件.这些邮件包含PHP警告.>我已经解决了这些警告的原因.>我已修复每个cronjobs不发送电子邮件(输出发送到>/dev/null2>&1)>我删除了之前的所有电子邮件/var/mail/root/var/spool/mail/root但我仍然每小时收到十几封电子邮件.这些电子邮件来自cronjobs,

  2. 模拟两个ubuntu服务器计算机之间的慢速连接

    我想模拟以下场景:假设我有4台ubuntu服务器机器A,B,C和D.我想在机器A和机器C之间减少20%的网络带宽,在A和B之间减少10%.使用网络模拟/限制工具来做到这一点?

  3. ubuntu-12.04 – 如何在ubuntu 12.04中卸载从源安装的redis?

    我从源代码在Ubuntu12.04上安装了redis-server.但在某些时候它无法完全安装,最后一次makeinstallcmd失败.然后我刚刚通过apt包安装.现在我很困惑哪个安装正在运行哪个conf文件?实际上我想卸载/删除通过源安装的所有内容,只是想安装一个包.转到源代码树并尝试以下命令:如果这不起作用,您可以列出软件自行安装所需的步骤:

  4. ubuntu – “apt-get source”无法找到包但“apt-get install”和“apt-get cache”可以找到它

    我正在尝试下载软件包的源代码,但是当我运行时它无法找到.但是当我运行apt-cache搜索squid3时,它会找到它.它也适用于apt-getinstallsquid3.我使用的是Ubuntu11.04服务器,这是我的/etc/apt/sources.list我已经多次更新了.我尝试了很多不同的debs,并没有发现任何其他地方的错误.这里的问题是你的二进制包(deb)与你的源包(deb-src)不

  5. ubuntu – 有没有办法检测nginx何时完成正常关闭?

    &&touchrestarted),因为即使Nginx没有完成其关闭,touch命令也会立即执行.有没有好办法呢?这样的事情怎么样?因此,pgrep将查找任何Nginx进程,而while循环将让它坐在那里直到它们全部消失.你可以改变一些有用的东西,比如睡1;/etc/init.d/Nginx停止,以便它会休眠一秒钟,然后尝试使用init.d脚本停止Nginx.你也可以在某处放置一个计数器,这样你就可以在需要太长时间时发出轰击信号.

  6. ubuntu – 如何将所有外发电子邮件从postfix重定向到单个地址进行测试

    我正在为基于Web的应用程序设置测试服务器,该应用程序发送一些电子邮件通知.有时候测试是使用真实的客户数据进行的,因此我需要保证服务器在我们测试时无法向真实客户发送电子邮件.我想要的是配置postfix,以便它接收任何外发电子邮件并将其重定向到一个电子邮件地址,而不是传递到真正的目的地.我正在运行ubuntu服务器9.10.先感谢您设置本地用户以接收所有被困邮件:你需要在main.cf中添加:然后

  7. ubuntu – vagrant无法连接到虚拟框

    当我使用基本的Vagrantfile,只配置了两条线:我看到我的虚拟框打开,但是我的流氓日志多次显示此行直到超时:然后,超时后的一段时间,虚拟框框终于要求我登录,但是太久了!所以我用流氓/流氓记录.然后在我的物理机器上,如果我“流氓ssh”.没有事情发生,直到:怎么了?

  8. ubuntu – Nginx – 转发HTTP AUTH – 用户?

    我和Nginx和Jenkins有些麻烦.我尝试使用Nginx作为Jenkins实例的反向代理,使用HTTP基本身份验证.它到目前为止工作,但我不知道如何传递带有AUTH用户名的标头?}尝试将此指令添加到您的位置块

  9. Debian / Ubuntu – 删除后如何恢复/ var / cache / apt结构?

    我在ubuntu服务器上的空间不足,所以我做了这个命令以节省空间但是现在在尝试使用apt时,我会收到以下错误:等等显然我删除了一些目录结构.有没有办法做apt-getrebuild-var-tree或类似的?

  10. 检查ubuntu上安装的rubygems版本?

    如何查看我的ubuntu盒子上安装的rubygems版本?只是一个想法,列出已安装的软件包和grep为ruby或宝石或其他:)dpkg–get-selections

返回
顶部