====== Tensorflow-GPU安装过程 ======
创建日期 星期三 01 五月 2019
===== 1.安装CUDA和显卡驱动 =====
----
注意:Linux系统默认安装、加载的是开源显卡驱动-nouveau
==== a.查看计算机的显卡是否支持CUDA套件 ====
==== b.去NVIDIA官网上下载CUDA9.2 run(local)文件 ====
==== c.安装CUDA9.2(同时安装NVIDIA显卡驱动程序) ====
1. 开机时对启动选项进行修改:按 "e" linux一行添加 nouveau.modeset=0 init 3(不使用nouveau开源显卡驱动,进入完全多用户模式)
2. 进入终端模式,lsmod 会提示已经加载nouveau驱动,再rmmod nouveau进行卸载
3. 使用''sudo ./cuda_9.2_linux.run --no-opengl-libs''命令安装cuda(安装完成后,可以使用nvidia-smi进行nvidia显卡驱动的测试)
注意:如果nvidia-smi 提示:NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA drivMake sure that the latest NVIDIA driver is installed and running.这是因为NVIDIA驱动没有被加载使用。
4.将新安装的cuda-9.2可执行文件、库路径加入系统变量和库路径中;(`nvcc -V`命令检验CUDA套件是否安装正确)。
5.下载适用于CUDA9.2版本的cuDNN,并解压,将相关文件复制到对应的CUDA安装目录下。
6.重启系统,操作系统会重新加载nouveau驱动程序,类似第一步添加nouveau.modeset=0,操作系统则会记载、使用NVIDIA显卡驱动,此时nvidia-smi 正常显示出显卡的信息;
注意:安装CUDA显卡驱动时,会在/etc/modprobe.d/目录下自动生成nvidia-installer-disable-nouveau.conf文件来禁用nouveau驱动程序。但有时会出现禁用后仍然加载nouveau驱动程序,此时使用```sudo update-initramfs -u```命令重新生成 kernel initramfs即可。
===== 2.安装Tensorflow-gpu =====
------------------
从源码编译
安装Bzeal编译工具:先下载bazel可执行脚本(本文中使用的文件名是bazel-0.15.0-installer-linux-x86_64.sh)。然后在可执行脚本文件目录下用 `./bazel-0.15.0-installer-linux-x8664.sh --user`命令进行安装。
下载tensorflow源文件,进入源文件目录。
执行`./configure`命令,按需求进行配置。
执行```bazel build --jobs=4 --config=opt //tensorflow/tools/pip_package:build_pip_package```命令编译pip包,其中的`--job`选项会限制bazel编译时的任务数,一般不需要指明该选项,bazel会调用计算机的所有资源进行编译。但是计算量很大,容易导致死机,所以可以添加上任务数的限制来防止这种情况。
注意:编译过程中可能会提示编译错误,编译停止。忽略错误,重新继续编译。(错误一般是编译器内部错误、电脑卡死,这一般是内存不够导致的,linux添加swapfile可以有效解决;某个文件未被创建、有价值,多线程编译使得相互依赖的编译结果不同步生成导致这个错误)
执行`bazel-bin/tensorflow/tools/pip_package/build_pip_package /tmp/tensorflow_pkg`命令在/tmp/tensorflow_pkg目录下生成whl python安装包,最后执行`pip3 install XXX.whl`命令完成安装即可。
Reference:http://www.python36.com/how-to-install-tensorflow-gpu-with-cuda-9-2-for-python-on-ubuntu/
使用conda安装(!!!不适用!!!)
conda install tensorflow-gpu
创建python 3.6 环境
conda create -n tf python=3.6
conda activate tf
再进行安装就没有问题了
conda install tensorflow-gpu
tensorflow还不支持python3.7(2018-01)
conda create -n python=3.6
conda install --use-local your-pkg-name