尝试导入 tensorflow 时出现非法硬件指令

Illegal hardware instruction when trying to import tensorflow

我刚刚使用 virtualenv 方法的说明安装了 tensorflow。安装过程很顺利,所以我认为那里没有任何问题。安装后我继续尝试导入它以验证一切正常,我收到以下消息:

[1]    4492 illegal hardware instruction (core dumped)  python

这是在我使用 python 交互式控制台使用以下命令后发生的:

import tensorflow as tf

我尝试使用 link 和 pip 重新安装它,但没有成功。

我创建了 virtualenv:

python3.6 -m venv venv

在这不起作用之后(因为它产生了同样的错误)我尝试了:

virtualenv --system-site-packages -p python3.6 venv

我得到了相同的结果。

我用来安装tensorflow的命令是:

pip install tensorflow

如您所见,我打算安装 CPU-only 版本。

我阅读了一些关于显示此消息的其他框架和技术的想法,因为硬件没有实现指令,所以除了获得新硬件之外没有什么可做的。

有什么办法可以解决这个问题吗?我已经尝试了一些不同的安装方法,但是 none 确实有效

系统规格:

OS = Ubuntu 16.04 x64 LTS
Python = Python 3.6
pip version = 9.0.1
tensorflow version = TensorFlow 1.6.0
CPU = Intel Core 2 Quad Q6600  @2.40GHz

OBS:我在这台机器上确实有一个 GPU,但我不认为 tensorflow 会 运行 在上面,因为它有点旧。这是 Nvidia 8800 GTS 512。

感谢任何帮助,如果有任何遗漏信息,请告诉我。

我刚找到这个:

Illegal instruction (core dumped) after running import tensorflow

这个问题似乎是由一组指令引起的,这些指令不是在一些较旧的处理器中实现的硬件(AVX 指令集)。由于它们未在硬件中实现,因此没有真正解决此问题的方法。

如果我理解正确,解决方法是将 tensorflow 从 1.6.0 降级到 1.5.0,这也适用于 GPU 版本。它对我有用。

我暂时将此标记为已回答,但如果有人知道如何让版本 1.6.0 正常工作,请告诉我。