Ubuntu安装配置Tensorflow-GPU
Ubuntu 16.04 + GTX 1080 Ti + CUDA 9.0 + Cudnn 7.1 安装配置
1. 安装显卡驱动
首先查看一下自己的电脑需要怎样的驱动,我们可以先到 http://www.nvidia.com/Download/index.aspx 查询下我们需要的是怎样的驱动,这里我的显卡是 GTX 1080 Ti,所以以此为例说明,勾选好对应的配置:
点击search并下载驱动
打开terminal,卸掉系统原有驱动:
sudo apt-get remove --purge nvidia*
在安装新驱动前,禁用nouveau:
在终端中运行 lsmod | grep nouveau
若没有输出则nouveau已禁用;若有输出则说明nouveau正在运行,需要手动禁用:
sudo vim /etc/modprobe.d/blacklist-nouveau.conf
在该文件尾部输入以下内容:
blacklist nouveau
options nouveau modeset=0
保存并关闭文件。
在终端中执行:sudo update-initramfs -u
再次运行 lsmod | grep nouveau 检查nouveau是否禁用,若未禁用则重复上述操作。
关闭图形化界面:sudo service lightdm stop
按Ctrl + Alt + F1 进入字符终端页面,
进入驱动所在的目录,运行:
sudo
sh 驱动名
安装完之后重启: sudo reboot
打开终端输入命令: nvidia-smi, nvidia-settings查看驱动安装状态:
2. 安装CUDA 9.0
sudo sh
cuda_9.0.176_384.81_linux.run
是否Accept EULA:Accpet
Install driver:Yes/No
Install OpenGL:No
Run nvidia_xconfig: No
Install Cuda Toolkit: Yes
Yes
Yes
配置CUDA的环境变量:
sudo gedit ~/.bashrc
在文件尾部输入:
- export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH
- export LD_LIBRARY_PATH=/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH
运行source ~/.bashrc 使其生效
3. 配置 Cudnn
下载Cudnn并解压:
tar -zxvf cudnn-7.0-linux-x64-v3.0-prod.tgz
解压后会看到一个cuda文件夹,里面包含了include以及lib64两个子目录。我们需要做的就是将这两个字母里面的文件复制到cuda对应的安装目录。这里以cuda的安装目录为/usr/local/cuda/,这个目录下也会包含include/以及lib64/这两个文件夹,将之前目录的文件复制过来即可。
sudo cp cuDNN/cuda/include/cudnn.h /usr/local/cuda/include
sudo cp cuDNN/cuda/lib64/* /usr/local/cuda/lib64/
这时候本来已经可以了,但是由于权限的原因原来的两个符号链接文件(libcudnn.so,libcudnn.so.7.0)已经失效了,直接编译便会报错,所以这时手动生成符号链接。
#下面的操作在/usr/local/cuda/lib64/目录下进行
sudo rm -rf libcudnn.so libcudnn.so.7.0#删除两个符号链接;
sudo ln -s libcudnn.so.7.0.64 libcudnn.so.7.0
sudo ln -s libcudnn.so.7.0 libcudnn.so
运行source ~/.bashrc 使其生效
如果出现下面问题:
/sbin/ldconfig.real:
/usr/local/cuda/lib64/libcudnn.so.7 is not a symbolic link
则参考如下解决方法,版本需对应安装的cudnn的相应版本(link:https://askubuntu.com/questions/1025928/why-do-i-get-sbin-ldconfig-real-usr-local-cuda-lib64-libcudnn-so-7-is-not-a):
sudo rm libcudnn.so
sudo ln libcudnn.so.7.0.5
libcudnn.so.7
sudo ln libcudnn.so.7 libcudnn.so
sudo ldconfig
Cudnn配置完毕
4. 安装Anaconda
根据环境下载对应的anaconda 软件,运行:
Sudo bash Anaconda3-5.1.0-Linux-x86_64.sh
安装完之后创建python虚拟环境:
conda create -n tensorflow pip python=2.7 #
or python=3.3, etc.
(根据需要选择合适的python版本)
5. 安装Tensorflow-gpu
输入命令:source activate
tensorflow-gpu
pip install --ignore-installed --upgrade
tfBinaryURL
(我装的是tensorflow-gpu 1.10版本,把tfBinaryURL 替换如下
https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.10.0-cp36-cp36m-linux_x86_64.whl
)
链接不好使~需要多试几次,tensorflow会自动下载安装
6. 缺少的一些包用pip安装:
Pip install
opencv-python
Pip install matplotlib,
etc
Ubuntu安装配置Tensorflow-GPU的更多相关文章
- 【转】Ubuntu 16.04安装配置TensorFlow GPU版本
之前摸爬滚打总是各种坑,今天参考这篇文章终于解决了,甚是鸡冻\(≧▽≦)/,电脑不知道怎么的,安装不了16.04,就安装15.10再升级到16.04 requirements: Ubuntu 16.0 ...
- Ubuntu安装配置protobuf 2.5
Ubuntu安装配置protobuf 2.5 一.安装配置环境 Linux 1.安装protobuf 下载文件 https://github.com/protocolbuffers/protobuf/ ...
- [转载]Ubuntu安装配置 git 服务器和客户端
原文地址:Ubuntu安装配置 git 服务器和客户端作者:ding404 1.配置前准备 服务器:安装ssh server另外还装了gitosis做git的权限管理 sudo apt-get ins ...
- ubuntu 安装配置 JDK7和Android Studio(apt-get方式)
Ubuntu 安装配置JKD 7 $ sudo add-apt-repository ppa:webupd8team/java $ sudo apt-get update $ sudo apt-get ...
- Ubuntu 安装配置MySQL,并使用VS的Server Explorer UI界面远程管理MySQL
为安装配置方便,使用root账号登入Ubuntu. step1: 键入下面命令安装MySQL. 过程十分简单.安装过程中只需根据提示输入root账号的密码即可. step2:安装完成后检查MySQL是 ...
- 英文版Ubuntu安装配置搜狗拼音输入法
下载搜狗输入法 1 进入搜狗输入法官网,进入上面导航兰的 "输入法Linux版" 2 根据你安装的ubuntu是32位还是64位下载 END ubuntu安装搜狗输入法 1 进 ...
- UBuntu安装配置记录
记得是06年左右第一次安装的 Linux,当时是下载的 Fedora镜像,版本已经记不清了,在商业街的电脑维修店刻的盘,回来后兴冲冲地和XP一起安装的双系统.其实就是直接的体验了一把,只是看了看X-W ...
- Ubuntu安装配置Qt 4.86环境
安装 QT4.8.6库+QT Creator 2.4.1 下载地址公布 QT4.8.6库 http://mirrors.hustunique.com/qt/official_releases/qt/ ...
- ubuntu安装anaconda3+tensorflow(cpu)+pycharm(windows几乎一样)
网上乱七八糟有的都是别人怎么写自己也怎么写,其实很简单. 首先是anaconda3的安装: 直接上官网:https://www.anaconda.com/download/ 下载下来之后进入文件所在目 ...
随机推荐
- python接口自动化框架搭建
一.在搭建接口自动化测试框架前,我觉得先需要想明白以下几点: ① 目前情况下,绝大部分接口协议是http,所以需要对http协议有个基本的了解,如:http协议请求.响应由哪些部分组成,常用的meth ...
- 前端Ajax跨域解决方案
业务场景: 前后端分离需要对接数据接口. 接口测试是在postman做的,今天才开始和前端对接,由于这是我第一次做后端接口开发(第一次嘛,问题比较多)所以在此记录分享我的踩坑之旅,以便能更好的理解,应 ...
- Ubuntu16.04使用apt安装完nginx常见问题
1.安装完并remove掉后重新install后没nginx.conf文件 解决办法: apt-get -y --purge remove nginx* apt-get -y autoremove a ...
- 网络分析:WireShark
安装 WireShark 官网 过滤器 类别 显示过滤器模式 捕获过滤器模式 逻辑表达式 and:&& or:|| 成组:() 过滤实例 仅监听某域名 http.host == &qu ...
- Vue实现点击时间获取时间段查询功能
二话不说,先上图 实现如上代码: //获取本周第一天 showWeekFirstDay: function () { let Nowdate = new Date(); let WeekFirstDa ...
- Mybatis是什么?mybatis中的对一和对多关系怎么配置
Mybatis是什么? 1.mybatis出来之前,由java的jdbc连接数据库,mybatis出来之后,将jdbc进行封装,实现更有效的连接: 2.mybatis的对象SqlSession,s ...
- Leetcode之广度优先搜索(BFS)专题-529. 扫雷游戏(Minesweeper)
Leetcode之广度优先搜索(BFS)专题-529. 扫雷游戏(Minesweeper) BFS入门详解:Leetcode之广度优先搜索(BFS)专题-429. N叉树的层序遍历(N-ary Tre ...
- 记录Linq中lambda动态表达式的使用方式
项目中有的时候我们会用到动态表达式的方式去查询数据,这里简单记录下个人的使用方式,方便使用↓ //构建参数表达式 ParameterExpression parameter = Expression. ...
- MessageBox显示位置
假设存在2个窗口类CImDlg与CChatDlg,如果希望MessageBox跟随CChatDlg,方法是 CChatDlg *pDlg = xxx; pDlg->MessageBox();
- typedef 定义结构体数组或其他数组
typedef 定义结构体数组或其他数组 C\C++语言下 typedef其实是对一个变量类型的名字进行重新定义,例如下面中: typedef struct { int num[10]; char n ...