关于显卡驱动和cuda环境的安装, 本文不过多涉及,下面是两个链接,一个是驱动, 一个是CUDA:
http://www.nvidia.cn/download/driverResults.aspx/117766/cn
https://developer.nvidia.com/cuda-downloads
只要不是上古内核, 驱动安装就是傻瓜化的,不多说。
CUDA有一点麻烦, 官方只提供了几个大的发行版的安装包。 小众一些的例如Arch就没有, 但是发行版自己维护的有CUDA的包, 使用 pacman 直接安装cuda就可以了。
下面进入正题:
Linux环境上, google只针对ubuntu发布了官方的deb安装包. 并且在install guide里说了这么一句话: “don’t build a TensorFlow binary yourself unless you are very comfortable building complex packages from source and dealing with the inevitable aftermath should things not go exactly as documented.”
得,心凉. 想在其他的Linux上跑tensorflow还是比想象中麻烦一些的.
除了自己编译之外, 还有两种可行的办法在非Ubuntu发行版上使用Tensorflow.
1. Docker
首先测试使用docker部署.
也不知道是因为科学上网失效还是官方的源有问题, 一直下不到image.
并且nvidia-docker很不稳定, 自带的测试的测试还偶尔报:” nvidia-docker-plugin exits with “Error: nvml: Unknown Error” ” 我们时间宝贵, 不再折腾, 等等后续版本稳定了再说.
如果看官有兴趣, 这里是使用docker部署的instructions:
https://www.tensorflow.org/install/install_linux#InstallingDocker
2.Anaconda
使用anaconda有个好处, 就是省时间。
它可以帮助自动安装大部分科学计算和数据处理依赖的库, 同时自己搞定环境变量等等的配置。
a. 先安装anaconda。 下载linux版本的anaconda安装程序,地址在这里:https://repo.continuum.io/archive/Anaconda3-4.4.0-Linux-x86_64.sh 。
b. 执行 bash Anaconda3-4.4.0-Linux-x86_64.sh 安装。 这里不推荐安装到root,因为可能会和系统里的python版本有冲突。使用普通用户执行安装, 安装到home下比较好。
c. 创建一个virtual env 专门用来跑tensorflow。
$ conda create -n tensorflow
$ source activate tensorflow
$ conda install anaconda
$ pip install --ignore-installed --upgrade https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.2.0-cp36-cp36m-linux_x86_64.whl
注意这里,因为conda 新创建的virtual env默认安装了py3.6版本, 所以这里也要对应安装相应的tensorflow版本。 如果是2.x或者是3.5, 需要按照如下表格选择对应的版本:
The URL of the TensorFlow Python package
A few installation mechanisms require the URL of the TensorFlow Python
package. The value you specify depends on three factors:operating system Python version CPU only vs. GPU support
This section documents the relevant values for Linux installations.
Python 2.7CPU only:
https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.2.0-cp27-none-linux_x86_64.whl
GPU support:
https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.2.0-cp27-none-linux_x86_64.whl
Note that GPU support requires the NVIDIA hardware and software
described in NVIDIA requirements to run TensorFlow with GPU support.
Python 3.4CPU only: