《TensorfFlow实战》读书笔记(二) —— Tensorflow 安装

《TensorfFlow实战》读书笔记(二) —— Tensorflow 安装

记录 概述,要点,代码,思维导图


书籍信息

书名:《Tensorflow实战》
作者:黄文坚 唐源
出版社出版:电子工业出版社
ISBN:978-7-121-30912-0


3.1 Tensorflow 的编译及安装

系统环境: Ubuntu 16.04
Python 3.5(Anaconda 3-4.2.0)
分为 CPU 和 GPU 两个版本(1.0.0-rc0)

若有 错误命令 有错误请提醒修改(纯手打-。-)

3.1.1 安装 Anaconda

(1)Anaconda 官网(www.continuum.io/downloads)下载 Anaconda3 4.2.0 版,对应 Python 3.5
(2) 在 Anaconda 下载目录执醒一下命令 (请根据下载文件命替换对应的文件名)

bash Anaconda3-4.2.0-Linux-x86_64.sh

(3) 进入 License 文档 “q” 键跳过, 然后 yes 确认, 默认安装路径
(4)安装完成后, 建议添加 anaconda3 的 binary 路径进 .bashrc

3.1.2 Tensorflow CPU 版本的安装

分两种情况:一、安装编译好的 release 版本;二、不支持第一种情况,使用 1.0.0-rc0 分支源码编译安装

第一种情况:

export TF_BINARY_URL=https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.0.0rc0-cp35-cp35m-linux_x86_64.whl
pip install --upgrade $TF_BINARY_URL

第二种情况:

(1) 确保系统安装了 gcc, 需要 Google 的 编译工具 bazel ( github.com/bazelbuild/bazel ), 根据安装教程 ( www.bazel.io/versions/master/doc/install.html ) 安装 v0.43 release 版本
(2) 下载 Tensorflow 1.0.0-rc0 的源码:

wget https://github.com/tensorflow/tensorflow/archive/v1.0.0-rc0.tar.gz
tar -xzvf v1.0.0-rc0.tar.gz

(3) 完成下载之后,进入 Tensorflow 代码仓库的目录,执行下面的命令进行配置:

cd tensorflow-1.0.0-rc0
./configure

(4) 接下来的输出要选择 python 路径, 确保是 anaconda 的 python 路径:

Please specify the location of python. [Default is /home/wenjian/anaconda3/bin/python]:

(5) 选择 CPU 编译优化选项,建议默认值:

Please specify optimization flags to use during compilation [Default is -march=native]:

(6) 选择是否使用 jemalloc 作为默认的 malloc 实现,建议默认:

Do you wish to use jemalloc as the malloc implementation? (linux only) [y/n]

(7) 选择是否开启对 Google Cloud Platform 的支持,N:

Do you wish to build Tensorflow with Google Cloud Platform support? [y/N]

(8) 是否需要支持 Hadoop File System, 默认 N:

Do you wish to build Tensorflow with Hadoop File System support? [y/N]

(9) 是否开启 XLA JIT 编译功能, 有探索欲望可开:

Do you wish to build Tensorflow with the XLA just-in-time compiler (experimental)? [y/N] 

(10) 选择 python 的 library 路径, 依然 anaconda 的路径:

Please input the desired Python library path to use. Default is 
[/home/wenjian/anaconda/lib/python3.5/site-packages]

(11) 选择不需要 GPU, OpenCL 和 CUDA 选择 N:

Do you wish to build Tensorflow with OpenCL support? [y/N]
Do you wish to build Tensorflow with CUDA support? [y/N]

(12) 执行编译

bazel build --copt=march=native -c opt //tensorflow/tools/pip_package:build_pip_package

(13) 生成 pip 安装包

bazel-bin/tensorflow/tools/pip_package/build_pip_package
/tmp/tensorflow_pkg

(14) pip 安装 tensorflow

pip install /tmp/tensorflow_pkg/tensorflow-1.0.0rc0-cp35-cp35m-linux_x86_64.whl

3.1.3 Tensorflow GPU 版本的安装

官网下载 NVIDIA CUDA (https://developer.nvidia.com/cuda-toolkit )

(1)(注!远程连接的机器才需要)暂停 NVIDIA 驱动的 X server

sudo init 3

(2) 将 CUDA 安装包权限设置成可执行,并执行

chmod u+x cuda_8.0.44_linux.run
sudo ./cuda_8.0.44_linux.run

(3) 安装过程(默认选项)

Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 367.48?
Install the CUDA 8.0 Toolkit?
Enter Toolkit Location
[ default is /usr/local/cuda-8.0]:

(4) 按 n 键不选择安装 CUDA samples

Install the CUDA 8.0 Samples?

安装 cuDNN(https://developer.nvidia.com/rdp/cudnn-download )( 需注册)

(5) 解压

cd /usr/local
sudo tar -xzvf ~/downloads/cudnn-8.0-linux-x64-v5.1.tgz

(6) 系统环境设置 CUDA 的路径

vim ~/.bashrc
export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64:/usr/local/cuda-8.0/extras
CUPTI/lib64:$LD_LIBRARY_PATH
export CUDA_HOME=/usr/local/cuda-8.0
export PATH=/usr/local/cuda-8.0/bin:$PATH
source ~/.bashrc

(7) 安装 Tensorflow GPU版本(预编译包)

export TF_BINARY_URL=https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.0.0rc0-cp35-cp35m-linux_x86_64.whl
pip install --upgrade $TF_BINARY_URL

(8) 若预编译版本不支持当前的 CUDA,cuDNN 版本,其他兼容性问题,可以进行编译安装,前几步与CPU 版本类似,直到选择是否支持 CUDA 一步:

DO you wish to build Tensorflow with CUDA support ?[y/N] 

(9) y 选择支持 CUDA, 选择指定 gcc 编译器, 默认

Please specify which gcc should be used by nvcc as the hostcompiler. [Default is /usr/bin/gcc]:

(10) 接下来选择 CUDA 8.0 版本、安装路径 /usr/local/cuda-8.0、cuDNN 5.1 版本、 路径 /usr/local/cuda-8.0 (命令行省略)

(11) 选择 GPU compute capability ,官网可查

Please note that each additional compute capability significantly increases your build time and binary size.
[ Default is :     ]

(12) 下载完后, 开始编译

bazel build --copt=-march=native -c opt --config=cuda //tensorflow/tools/pip_package:build_pip_package

(13) 安装

bazel-bin/tensorflow/tools/pip_package/build_pip_package /tmp/tensorflow_pkg
pip install /tmp/tensorflow_pkg/tensorflow-1.0.0rc0-cp35-cp35m-linux_x86_64.whl

你可能感兴趣的:(TensorFlow)