编译 tensorflow2.0rc1 windows gpu

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/net_wolf/article/details/101105117

编译的原因是现有的whl无法直接安装,估计因为CPU不支持AVX。

参考的文章很多,google的最有参考意义:

https://tensorflow.google.cn/install/source_windows

要点是必须安装好MSYS环境,要手工安装patch命令,否则会报错的。

pacman -S unzip patch
pacman -S msys/patch
 

还有提前安装CUDA10.1/CUDNN7.4.

bazel默认会在用户主目录创建 _bazel_{user_name}  临时目录,要预留20G~50G的空闲空间。

bazel版本太高不行,太低也不行,最后用25.3才能编译。

VS2017可以成功,其他的版本不行。

首先执行

python configure.py

回答很多问题,此时AVX无法去掉。

等完毕后编辑刚刚生成的文件.tf_configure.bazelrc 去掉包含 AVX 的那行。

默认的vs2107 x64是支持SSE的,无须设置。

然后执行:

bazel build --config=opt --config=cuda --copt=-nvcc_options=disable-warnings //tensorflow/tools/pip_package:build_pip_package 
 

INFO: From Executing genrule //tensorflow/python/keras/api:keras_python_api_gen_compat_v2:
2019-09-23 22:26:53.288200: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cudart64_101.dll
Target //tensorflow/tools/pip_package:build_pip_package up-to-date:
  C:/users/ai-k/_bazel_ai-k/6sxrqdxw/execroot/org_tensorflow/bazel-out/x64_windows-opt/bin/tensorflow/tools/pip_package/build_pip_package
  C:/users/ai-k/_bazel_ai-k/6sxrqdxw/execroot/org_tensorflow/bazel-out/x64_windows-opt/bin/tensorflow/tools/pip_package/build_pip_package.exe
INFO: Elapsed time: 33838.052s, Critical Path: 13320.29s
INFO: 9767 processes: 9767 local.
INFO: Build completed successfully, 14868 total actions
INFO: Build completed successfully, 14868 total actions

生成whl文件

C:\qycache\tensorflow>bazel-bin\tensorflow\tools\pip_package\build_pip_package tensorflow_pkg
Mon Sep 23 23:03:23 2019 : === Preparing sources in dir: /tmp/tmp.mbgGkXm8hT
Unzipping simple_console_for_windows.zip to create runfiles tree...
Unzip finished.
/c/qycache/tensorflow /c/qycache/tensorflow
/c/qycache/tensorflow
/tmp/tmp.mbgGkXm8hT/tensorflow/include /c/qycache/tensorflow
/c/qycache/tensorflow
Mon Sep 23 23:07:16 2019 : === Building wheel
warning: no files found matching '*.pd' under directory '*'
warning: no files found matching '*.so.[0-9]' under directory '*'
warning: no files found matching '*.dylib' under directory '*'
warning: no files found matching '*.dll' under directory '*'
warning: no files found matching '*.csv' under directory '*'
warning: no files found matching '*.h' under directory 'tensorflow_core\include\tensorflow'
warning: no files found matching '*.h' under directory 'tensorflow_core\include\include'
warning: no files found matching '*' under directory 'tensorflow_core\include\third_party'
C:\Program Files\Python36\lib\site-packages\wheel\pep425tags.py:83: RuntimeWarning: Config variable 'Py_DEBUG' is unset, Python ABI tag may be incorrect
  warn=(impl == 'cp')):
C:\Program Files\Python36\lib\site-packages\wheel\pep425tags.py:88: RuntimeWarning: Config variable 'WITH_PYMALLOC' is unset, Python ABI tag may be incorrect
  sys.version_info < (3, 8))) \
Mon Sep 23 23:08:05 2019 : === Output wheel file is in: /c/qycache/tensorflow/tensorflow_pkg

最终的结果:

C:\qycache\tensorflow\tensorflow_pkg>dir
 驱动器 C 中的卷是 ai_k
 卷的序列号是 7C70-90CB

 C:\qycache\tensorflow\tensorflow_pkg 的目录

2019/09/23  23:08    <DIR>          .
2019/09/23  23:08    <DIR>          ..
2019/09/23  23:08        91,559,689 tensorflow-2.0.0rc2-cp36-cp36m-win_amd64.whl
               1 个文件     91,559,689 字节
               2 个目录 459,725,352,960 可用字节

C:\qycache\tensorflow\tensorflow_pkg>

C:\qycache\tensorflow\tensorflow_pkg>pip install tensorflow-2.0.0rc2-cp36-cp36m-win_amd64.whl
Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple
Requirement already satisfied: tensorflow==2.0.0rc2 from file:///C:/qycache/tensorflow/tensorflow_pkg/tensorflow-2.0.0rc2-cp36-cp36m-win_amd64.whl in c:\program
 files\python36\lib\site-packages (2.0.0rc2)
Requirement already satisfied: astor>=0.6.0 in c:\program files\python36\lib\site-packages (from tensorflow==2.0.0rc2) (0.8.0)
Requirement already satisfied: tf-estimator-nightly<1.14.0.dev2019080602,>=1.14.0.dev2019080601 in c:\program files\python36\lib\site-packages (from tensorflow=
=2.0.0rc2) (1.14.0.dev2019080601)
Requirement already satisfied: wheel>=0.26 in c:\program files\python36\lib\site-packages (from tensorflow==2.0.0rc2) (0.33.6)
Requirement already satisfied: termcolor>=1.1.0 in c:\program files\python36\lib\site-packages (from tensorflow==2.0.0rc2) (1.1.0)
Requirement already satisfied: protobuf>=3.6.1 in c:\program files\python36\lib\site-packages (from tensorflow==2.0.0rc2) (3.9.1)
Requirement already satisfied: tensorboard<2.1.0,>=2.0.0 in c:\program files\python36\lib\site-packages (from tensorflow==2.0.0rc2) (2.0.0)
Requirement already satisfied: opt-einsum>=2.3.2 in c:\program files\python36\lib\site-packages (from tensorflow==2.0.0rc2) (3.0.1)
Requirement already satisfied: six>=1.10.0 in c:\program files\python36\lib\site-packages (from tensorflow==2.0.0rc2) (1.12.0)
Requirement already satisfied: google-pasta>=0.1.6 in c:\program files\python36\lib\site-packages (from tensorflow==2.0.0rc2) (0.1.7)
Requirement already satisfied: numpy<2.0,>=1.16.0 in c:\program files\python36\lib\site-packages (from tensorflow==2.0.0rc2) (1.17.2)
Requirement already satisfied: grpcio>=1.8.6 in c:\program files\python36\lib\site-packages (from tensorflow==2.0.0rc2) (1.23.0)
Requirement already satisfied: keras-applications>=1.0.8 in c:\program files\python36\lib\site-packages (from tensorflow==2.0.0rc2) (1.0.8)
Requirement already satisfied: absl-py>=0.7.0 in c:\program files\python36\lib\site-packages (from tensorflow==2.0.0rc2) (0.8.0)
Requirement already satisfied: gast==0.2.2 in c:\program files\python36\lib\site-packages (from tensorflow==2.0.0rc2) (0.2.2)
Requirement already satisfied: wrapt>=1.11.1 in c:\program files\python36\lib\site-packages (from tensorflow==2.0.0rc2) (1.11.1)
Requirement already satisfied: keras-preprocessing>=1.0.5 in c:\program files\python36\lib\site-packages (from tensorflow==2.0.0rc2) (1.0.5)
Requirement already satisfied: setuptools in c:\program files\python36\lib\site-packages (from protobuf>=3.6.1->tensorflow==2.0.0rc2) (41.2.0)
Requirement already satisfied: werkzeug>=0.11.15 in c:\program files\python36\lib\site-packages (from tensorboard<2.1.0,>=2.0.0->tensorflow==2.0.0rc2) (0.16.0)
Requirement already satisfied: markdown>=2.6.8 in c:\program files\python36\lib\site-packages (from tensorboard<2.1.0,>=2.0.0->tensorflow==2.0.0rc2) (3.1.1)
Requirement already satisfied: h5py in c:\program files\python36\lib\site-packages (from keras-applications>=1.0.8->tensorflow==2.0.0rc2) (2.10.0)

C:\qycache\tensorflow\tensorflow_pkg>python
Python 3.6.8 (tags/v3.6.8:3c6b436a57, Dec 24 2018, 00:16:47) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorflow as tf
2019-09-23 23:12:37.791400: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cudart64_101.dll
>>> tf.__version__
'2.0.0-rc2'
>>>

基于tensorlfow 2.0-rc2,编译好的whl文件:

https://download.csdn.net/download/net_wolf/11808254

猜你喜欢

转载自blog.csdn.net/net_wolf/article/details/101105117