我在 Python 3.6 中有许多大型深度学习任务,我想从源代码构建 tensorflow(仅限 CPU),因为我的 MacBook Pro with Touchbar 13" 指出,如果使用 SSE4.1 SSE4.2 AVX AVX2 构建,tensorflow 会运行得更快和 FMA 支持。有关该主题的 StackOverflow 和 GitHub 上有很多问题,我都阅读了它们。没有一个解决为什么它对我不起作用。
我严格按照https://www.tensorflow.org/install/install_sources提供的说明进行操作
我的配置看起来像这样
./configure
Please specify the location of python. [Default is /anaconda/bin/python]: /anaconda/python.app/Contents/MacOS/python
Please specify optimization flags to use during compilation when bazel option "--config=opt" is specified [Default is -march=native]:
Do you wish to build TensorFlow with Google Cloud Platform support? [y/N] n
No Google Cloud Platform support will be enabled for TensorFlow
Do you wish to build TensorFlow with Hadoop File System support? [y/N] n
No Hadoop File System support will be enabled for TensorFlow
Do you wish to build TensorFlow with the XLA just-in-time compiler (experimental)? [y/N] n
No XLA JIT support will be enabled for TensorFlow
Do you wish to build TensorFlow with VERBS support? [y/N] n
No VERBS support will be enabled for TensorFlow
Found possible Python library paths:
/anaconda/python.app/Contents/lib/python3.6/site-packages
Please input the desired Python library path to use. Default is [/anaconda/python.app/Contents/lib/python3.6/site-packages]
Using python library path: /anaconda/python.app/Contents/lib/python3.6/site-packages
Do you wish to build TensorFlow with OpenCL support? [y/N] n
No OpenCL support will be enabled for TensorFlow
Do you wish to build TensorFlow with CUDA support? [y/N] n
No CUDA support will be enabled for TensorFlow
INFO: Starting clean (this may take a while). Consider using --async if the clean takes more than several minutes.
Configuration finished
Run Code Online (Sandbox Code Playgroud)
使用 bazel 0.4.5 然后我尝试按照说明进行构建
bazel build --config=opt //tensorflow/tools/pip_package:build_pip_package
Run Code Online (Sandbox Code Playgroud)
这执行时没有错误,但它实际上给出了数百个警告。我可以提供这样的例子,但几乎没有任何片段会在没有警告的情况下进行。
我感谢曾经的帮助,非常感谢大家。
不幸的是,编译器警告已成为现实。但是,其中许多来自被拉入构建的外部库。这些可以通过 Bazel 的“output_filter”参数过滤掉:
bazel build --config=opt --output_filter='^//tensorflow' //tensorflow/tools/pip_package:build_pip_package
Run Code Online (Sandbox Code Playgroud)
这将输出限制为由 TensorFlow 代码生成的警告(您也可以通过这种方式完全关闭警告,但这会失去编译的所有乐趣)。由于用于构建的工具与 TensorFlow 开发的工具更接近,因此警告更少(我得到了一些关于多行注释延续、一堆有符号/无符号整数比较,以及一些关于“可能”未初始化的变量) .
这些都不是明确的错误,只是有时容易出错的代码模式。如果编译器知道有问题,它会发出一个错误。这是一个很长的说法,没有什么可担心的。
| 归档时间: |
|
| 查看次数: |
3496 次 |
| 最近记录: |