人工智能部署及应用赛项训练指导书
编写:王俊 @ 北京工业职业技术学院
日期:2019年3月
附录1 从源码编译安装tensorflow-gpu
pip源里的tensorflow-gpu(1.12.0)要求显卡的compute capability要大于等于3.5。如果 希望在旧显卡上开启tensorflow的gpu加速(比如K2100M的compute capability是3),则需 要从源码构建tensorflow。
A1.1 安装依赖
在安装以来之前,需要完成0设备复原。构建过程中需要用到python3.6的头文件,所以 需要安装python3.6-dev
sudo apt install python3.6-dev
A1.2 安装Bazel
训练环境使用的tensorflow的版本是1.12.0,该版本需使用bazel 0.15.2构建,使用新版本 的bazel构建会出现如下错误信息:
ERROR: Config value cuda is not defined in any .rc file
下载完成后,运行安装程序:
chmod +x bazel-<version>-installer-linux-x86_64.sh
./bazel-<version>-installer-linux-x86_64.sh --user
--user
参数将Bazel安装到$HOME/bin
目录下。
A1.3 下载源代码
用git下载tensorflow源码,并切换tag到v1.12.0
git clone https://github.com/tensorflow/tensorflow.git
cd tensorflow
git checkout v1.12.0
A1.4 配置构建参数
运行configure脚本进行参数配置:
./configure
配置过程中会询问最低的compute capability限制值,以K2100M显卡为例,需要填写3.0,其 他配置细节参考
https://www.tensorflow.org/install/sourcewww.tensorflow.orgA1.5 构建并安装
构建CPU版的tensorflow
bazel build --config=opt //tensorflow/tools/pip_package:build_pip_package
构建GPU版的tensorflow
bazel build --config=opt --config=cuda //tensorflow/tools/pip_package:build_pip_package
构建时间较长,完成后,会生成一个叫做build_pip_package
的可执行文件,用来组包可供 pip
使用的whl
文件。
./bazel-bin/tensorflow/tools/pip_package/build_pip_package /tmp/tensorflow_pkg
安装tensorflow包
pip install /tem/tensorflow_pkg/tensorflow-xxxx.whl