ano*_*n01 4 python gcc tensorflow
我正在用bazel从源代码构建张量流,如下所述:
https://www.tensorflow.org/install/install_sources
在安装文档之后,我使用以下代码成功编译:
bazel build -c opt --copt=-mavx --copt=-mavx2 --copt=-mfma --copt=-mfpmath=both \
--cxxopt="-D_GLIBCXX_USE_CXX11_ABI=0"--config=cuda \
-k //tensorflow/tools/pip_package:build_pip_package
Run Code Online (Sandbox Code Playgroud)
这里接受的答案和安装文档中的注释"添加--cxxopt="-D_GLIBCXX_USE_CXX11_ABI=0"到gcc 5及更高版本的构建命令"的组合.
但是,会import tensorflow as tf导致错误
illegal instruction (core dumped), exiting python.
Run Code Online (Sandbox Code Playgroud)
我还试过:conda update libgcc无济于事.
如何使用gcc 5.0从源代码构建tensorflow?
错误消息告诉我你的程序是用你的处理器没有的指令编译的,看看你的构建字符串让我怀疑-mavx2和-mfma哪个AFAIK只在最近(和高端)的CPU中实现.请注意,gcc将使用标志进行编译,以获得CPU不支持的指令,但程序将无法在您的计算机上运行.
要确保您的CPU支持这些标志,请在bash中运行gcc -march=native -Q --help=target | grep enabled并检查输出是否包含您要使用的所有构建标志(除了-mfpmath它之外没有显示为启用或禁用,因为它允许输出列表.你需要检查完整的gcc -march=...命令输出).
为了回答你的最终评论,没有办法"启用"这些指令,它们是用硬件实现的,它们可以在你的CPU上使用,或者它们不是.
| 归档时间: |
|
| 查看次数: |
2001 次 |
| 最近记录: |