我使用bazel从源代码构建tensorflow,如下所述:
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
接受的答案here和安装文档中的注释的组合,“将--cxxopt="-D_GLIBCXX_USE_CXX11_ABI=0"
添加到gcc5及更高版本的构建命令”。在
但是,import tensorflow as tf
会导致错误
我还试过:conda update libgcc
但没有成功。在
如何使用gcc5.0从源代码构建tensorflow?在
错误消息告诉我你的程序是用你的处理器没有的指令编译的,看看你的构建字符串,我怀疑},这两个AFAIK只在最近(和高端)的cpu中实现。
请注意,gcc可以很好地编译CPU不支持的指令标志,但程序不会在您的机器上运行。在
-mavx2
和{为了确保您的CPU支持这些标志,请在bash中运行
gcc -march=native -Q help=target | grep enabled
,并检查输出是否包含您想要使用的所有构建标志(除了-mfpmath
,它没有显示为enabled或disabled,因为它允许输出列表。为此,您需要检查完整的gcc -march=...
命令输出)。在为了回答您的最终意见,没有办法“启用”这些指令,它们是在硬件中实现的,它们要么在您的CPU上可用,要么不可用
相关问题 更多 >
编程相关推荐