在Ubuntu 18.04上安装Tensorflow
我们将经历几个阶段,安装cuda-9.0,cudnn和tensorflow cpu以及tensorflow gpu版本。最后我们将用cuda-9.0安装pytorch。在MARVEl电影中黑寡妇的“我与这场战争作战,所以你不必”。
昨天晚上,2018年4月29日,我成功在Ubuntu 18.04上安装了Tensorflow。但是,安装Tensorflow的关键是正确安装Cuda和cuDNN libray,因为昨晚Tensorflow编译的运行文件只支持cuda-9.0。检查这个帖子是不是已经过时。 在我们安装Cuda-9.0之前,您可能需要将ubuntu镜像源网站更改为适合您的最新版本。我把它改成了mirro.ustc.edu.cn, 因为我在中国安徽合肥。和ubuntu16.04不同,你需要显示应用程序页面中搜索软件和更新。 然后请将GPU驱动更改为由Nvidia测试的390版本。
安装Cuda-9.0
阅读完Tensorflow网站,我们知道我们必须首先安装cuda9.0。首先百度CUDA-9.0 ,.然后选择linux,然后ubuntu-16.04,最后下载runfile,即1.6 GB,但可以非常快速地下载。
在我们安装runfile之前,我们需要安装一些依赖关系,否则你会得到“Missing recommended libary”这样的警告。
安装像这样的依赖关系。
sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev
接下来,让我们像这样一样安装cuda-9.0。
sudo chmod 777 *.runfile # give permission to run all the runfile files
sudo ./cuda_9.0.176_384.81_linux.run -toolkit -samples -silent -override #
cuda-9.0安装路径是“/usr/local/cuda-9.0”。为避免missing libray错误,我们在cuda-9.0的这个目录中创建一个符号链接“cuda”。
cd /usr/local
sudo ln -s /usr/local/cuda-9.0 cuda # create the symbolic link
在验证我们安装cuda-9.0之前,我们会降低我们的gcc版本,否则我们会得到”gcc later than 6 is not supported error” 这样的错误。
检查这个和Ubuntun 18.04上的gcc版本,我们决定降低我们的gcc版本。
gcc --version # check ubuntu 18.04 gcc version, you will find it's 7.3.0
sudo apt install gcc-5 g++-5
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 50 # you will find that message that tells you the gcc-5 is set to be automatic.
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-5 50 # similiar message as gcc
将cuda设置为环境变量
export PATH=/usr/local/cuda-9.1/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-9.1/lib64\
${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}
验证cuda-9.0安装
cd NVIDIA_CUDA-9.0_Samples/5_Simulations/fluidsGL
make clean && make
./fluidsGL
如果cuda-9.0正确安装,在我们的制作过程中应该没有错误信息。然后我们可以得到流体模拟。
我们的cuda-9.0已成功安装!在我们继续之前, 我们可以测试一下其他的sample。
安装cuDNN7.0
让我们安装cuDNN库来加速我们的深度学习算法。注册,点击“Archived cuDNN Releases”。然后下载 cuDNN v7.0.5 (Dec 5, 2017), for CUDA 9.0 下载三个文件ubuntu16.04文件 runtime library. developer library, and code samples and user guide。
sudo dpkg -i libcudnn7_7.0.5.11-1+cuda9.0_amd64.deb
sudo dpkg -i libcudnn7-dev_7.0.5.11-1+cuda9.0_amd64.deb
sudo dpkg -i libcudnn7-doc_7.0.5.11-1+cuda9.0_amd64.deb
安装Freeimage
在我们验证cuDNN之前,我们必须首先安装freeimage lilbray作为ministCUDNN示例代码的依赖关系。否则,会有提示要求我们正确设置Freeimage。
sudo apt-get install libfreeimage3 libfreeimage-dev
验证cuDNN安装
cp -r /usr/src/cudnn_samples_v7/ $HOME
cd $HOME/cudnn_samples_v7/mnistCUDNN
make clean && make
./mnistCUDNN
如果一切正常,我们可以得到我们的结果 - “测试通过!”
我们也可以编译其他示例。
安装Tensorlfow
我们将使用virualenv安装。 首先安装libcupti-dev库。
sudo apt-get install libcupti-dev
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/extras/CUPTI/lib64
然后我们将安装virtualenv并创建一个Tensorflow Environment。
sudo apt-get install python3-pip python3-dev python-virtualenv
virtualenv --system-site-packages -p python3 tensorflow # create a enviroment named tensorflow
这需要一段时间,请耐心等待。
安装Tensorflow CPU版本
当环境创建好了,我们必须在每次使用tensorflow时激活它。首先按照推荐安装tensorflow cpu version。
source ~/tensorflow/bin/activate
pip3 install --upgrade tensorflow # install the cpu version
验证Tensorflow CPU版本
在同一个环境中,这意味着你会在你的shell中看到它。
(tensorflow)$
键入python和下面的python代码。
python
# Python
import tensorflow as tf
hello = tf.constant('Hello, TensorFlow!')
sess = tf.Session()
print(sess.run(hello))
这是我的结果。虽然它与官方验证结果不同,但是应该没问题。
>>> print(sess.run(hello))
b'Hello, TensorFlow!'
>>>
###安装Tensorflow GPU版本 首先确保我们处于同一环境中。
pip3 install --upgrade tensorflow-gpu
但是,下载whl文件的网速较慢。所以我们可以用自己的“方法”到浏览器中的whl文件和本地pip3安装。
验证Tensorflow GPU版本
仍然确保你在Tensorflow Enviroment。
键入python和下面的python代码。
python
# Python
import tensorflow as tf
hello = tf.constant('Hello, TensorFlow!')
sess = tf.Session()
print(sess.run(hello))
结果是一样的。但是我们可以看到我们的GPU设备正在工作。您可以在下面的测试结果中看到我的GTX 1050 Ti。
我们在Ubuntu 18.04上成功安装了Tensorflow。 您可以在Tensorflow网站上测试更多的模型,git克隆模型库非常缓慢。因此,我们也可以用“自己的方法”在浏览器中下载张量流模型库。 This my fisrt example.
##安装Pytorch 我们将使用由pytorch推荐的软件包管理器Anaconda来安装它。 ###安装Anaconda 我在合肥,所以我选择科大镜像来下载anaconda安装的.sh文件。 在我们安装了Anaconda之后。我们必须改变“Anaconda3”的拥有者,否则我们不能将文件写入此目录。 我们检查我们的用户名和用户组。
groups
第一组通常是你现在的组。 这是我的结果。
由于我的用户组是bryan,我的用户名也是bryan。所以我会将下面的命令改为“chown -R bryan:brayn anaconda3”。“-R”的意思是迭代,这个参数将改变整个anacodna3文件的所有者。
chown -R YOUR_GROUp:YOUR_USER_name anaconda3
更改Anaconda频道
在安装pytorch之前,我们可以设置Anaconda镜像源以减少等待时间。同样,我的镜像源是科大镜像。
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes
###安装Pytorch 然后我们可以去pytorch网站。选择linux,python版本为3.6,cuda版本为9.0。请不要执行这个命令。 后一个pytorch意味着我们将从它的官方网站下载pytorch,这对我来说非常缓慢。因此,将最后一个pytorch替换为适合您的镜像源。
conda install pytorch torchvision cuda91 -c https://mirrors.ustc.edu.cn/anaconda/cloud/pytorch/
验证Pytorch
您可以尝试pytoch webstie上的示例。这是我的结果。
恭喜安装成功!如果本教程任何问题,请发邮件给我。
原文:https://blossomnoodles.github.io/cnBlogs/2018/04/30/Ubuntu18.04-Tensorlow-install.html
在Ubuntu 18.04上安装Tensorflow的更多相关文章
- 如何在Ubuntu 18.04上安装Pip
一.简介: Pip是一个软件包管理系统,它简化了用Python编写的软件包(如Python包索引(PyPI)中的软件包)的安装和管理. 在Ubuntu 18.04上缺省没有安装Pip,但安装非常简单. ...
- 如何在Ubuntu 18.04上安装Django
Django是一个免费的开源高级Python Web框架,旨在帮助开发人员构建安全,可扩展和可维护的Web应用程序. 根据您的需要,有不同的方法来安装Django.它可以使用pip在系统范围内安装或在 ...
- 如何在Ubuntu 18.04上安装和配置Apache 2 Web服务器(转)
如何在Ubuntu 18.04上安装和配置Apache 2 Web服务器 什么是Apache Web Server? Apache或Apache HTTP服务器是一个免费的开源Web服务器,由Apac ...
- 如何在Ubuntu 18.04上安装Go
如何在Ubuntu 18.04上安装Go 谢鸢发表于云计算教程系列订阅98 介绍 课程准备 第1步 - 安装Go 第2步 - 设置Go路径 第3步 - 测试您的安装 结论 介绍 Go是Google开发 ...
- Ubuntu 18.04上安装 phpMyAdmin
我们将安装 phpMyAdmin 在 Ubuntu18.04 上配合 Apache 一起工作. 在安装 phpMyAdmin 之前需要已经安装了LAMP栈并提供了web页面. 如果没有安装可以参照 U ...
- Ubuntu 18.04上安装Apache, MySQL, PHP, LAMP
1.安装 Apache $ sudo apt update && sudo apt install apache2 中间会遇到停顿询问是否继续, 输入 y 然后 回车. 2.测试 Ap ...
- 在Ubuntu 18.04上安装OpenCV 4(C ++和Python)
OpenCV于11月20日发布了OpenCV-3.4.4和OpenCV-4.0.0.这些版本中有很多错误修复和其他更改.发布重点如下: OpenCV现在是C ++ 11库,需要符合C ++ 11标准的 ...
- 如何在Ubuntu 18.04上安装Apache Web服务器
一. apt库安装 1.在终端输入更新检查命令,sudo apt-get update 2. 在更新完成后(如果不想检查更新,也可直接输入此步)输入:sudo apt-get install apac ...
- 在Ubuntu 18.04上安装Git
步骤1.首先,通过运行以下命令确保您的系统和apt包列表完全更新: apt-get update -yapt-get upgrade -y 第2步.在Ubuntu 18.04上安装Git. 现在让我们 ...
随机推荐
- struts2基础---->自定义拦截器
这一章,我们开始struts2中拦截器的学习. 自定义拦截器
- Request.getRequestURL
getRequestURI()就相当于你在写一个JSP页面的时候会有这样的东西"action='/WebRoot/xxx'"这个方法就是获得'/WebRoot/xxx',也就是说它 ...
- windows 下,go语言 交叉编译
http://bbs.csdn.net/topics/390601048 参考上面的操作
- Android开发规范——命名
在讲解命名规范前,先初略介绍下当前主要的标识符命名法和英文缩写规则.标识符命名法标识符命名法最要有四种: 1 驼峰(Camel)命名法:又称小驼峰命名法,除首单词外,其余所有单词的第一个字母大写. ...
- 【Android】Android背景选择器selector用法汇总
一.创建xml文件,位置:drawable/xxx.xml,同目录下记得要放相关图片 <?xml version="1.0" encoding="utf-8&quo ...
- Python 自学积累(一)
1. 当"print os.path.dirname(__file__)"所在脚本是以完整路径被运行的, 那么将输出该脚本所在的完整路径,比如: python d:/pythonS ...
- Hibernate的状态,缓存和映射
Hibernate的状态,缓存和映射 1.对象的状态 1.1.对象状态的概念和分类 在使用Hibernate操作数据库的时候,我们先创建了JavaBean对象,然后使用session来保存或者更新到数 ...
- TA-Lib中文文档(一):快速开始
TA-Lib 简介: 这是一个Python 金融指数处理库TA-LIB,他是基于 Cython 而不是 SWIG. TA-Lib is widely used by trading software ...
- Django框架【基础篇】
Python的WEB框架有Django.Tornado.Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了ORM.模型绑定.模板引擎.缓存.Session等诸多功能. ...
- SLAM for Dummies SLAM初学者教程 中文翻译 1到4章
SLAM for Dummies SLAM初学者教程A Tutorial Approach to Simultaneous Localization and Mapping 一本关于实时定位及绘图 ...