在CPU上使用tensorflow-mkl出现的问题
在CPU上使用tensorflow-mkl出现的问题
我对tensorflow还不熟悉,实际上是因为我正在编写的服务器代码需要调用它。
我正在使用conda来安装各种软件包。我使用了conda install -c anaconda tensorflow-mkl。(注意:我没有GPU,使用的是CPU)
我总是遇到这个错误:
Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX
发生错误的具体代码行是:
tensorflow.contrib.predictor.from_saved_model(path)
进一步研究后,我发现这是因为我安装的tensorflow软件包不支持上述指令,需要支持该指令。
一些问题:
1. 我如何确保我安装的tensorflow软件包支持上述函数?有没有可以下载的来源?
- 如果不重要,有没有办法忽略这个指令或者忽略其中的任何错误?
提前感谢!
问题出现的原因是无法通过conda或者pip安装tensorflow-mkl的CPU版本。解决方法是使用以下命令从终端中安装tensorflow:
conda install tensorflow -c anaconda
或者
pip install tensorflow==1.13.1
如果还没有安装pip,可以使用以下链接进行安装:
问题出现的原因是:CPU支持AVX指令,但是当前安装的TensorFlow二进制文件没有编译使用AVX指令集。
解决方法是:在实际代码之前添加以下几行代码,以抑制警告:
import os os.environ['TF_CPP_MIN_LOG_LEVEL']='2' import tensorflow as tf
根据TensorFlow官方文档的说明,从TensorFlow 1.6版本开始,二进制文件使用了AVX指令,这可能无法在较旧的CPU上运行。
您可以参考下面的链接,了解有关Intel优化TensorFlow安装的更多详细信息:
https://software.intel.com/en-us/articles/intel-optimization-for-tensorflow-installation-guide
希望这个答案解决了您的问题。谢谢。