Tensorflow(1.13.1)导入时发生异常:DLL加载失败(Windows 10)

时间:2019-05-11 19:50:31

标签: python tensorflow

我已在Windows 10计算机上安装了Python 3.7.3。 之后我用tensorflow模块下载了: pip install https://storage.googleapis.com/tensorflow/windows/cpu/tensorflow-1.13.1-cp37-cp37m-win_amd64.whl

在计算机上安装了Visual Studio 2019,并带有其他MSVC v141(VS 2017)和MSVC v140(VS 2015)。

当我在python中运行import tensorflow as tf时,出现以下错误:

Traceback (most recent call last):
  File "C:\Users\foo\AppData\Local\Programs\Python\Python37\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 58, in <module>
    from tensorflow.python.pywrap_tensorflow_internal import *
  File "C:\Users\foo\AppData\Local\Programs\Python\Python37\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 28, in <module>
    _pywrap_tensorflow_internal = swig_import_helper()
  File "C:\Users\foo\AppData\Local\Programs\Python\Python37\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 24, in swig_import_helper
    _mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
  File "C:\Users\foo\AppData\Local\Programs\Python\Python37\lib\imp.py", line 242, in load_module
    return load_dynamic(name, filename, file)
  File "C:\Users\foo\AppData\Local\Programs\Python\Python37\lib\imp.py", line 342, in load_dynamic
    return _load(spec)
ImportError: DLL load failed: Eine DLL-Initialisierungsroutine ist fehlgeschlagen.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Users\foo\AppData\Local\Programs\Python\Python37\lib\site-packages\tensorflow\__init__.py", line 24, in <module>
    from tensorflow.python import pywrap_tensorflow  # pylint: disable=unused-import
  File "C:\Users\foo\AppData\Local\Programs\Python\Python37\lib\site-packages\tensorflow\python\__init__.py", line 49, in <module>
    from tensorflow.python import pywrap_tensorflow
  File "C:\Users\foo\AppData\Local\Programs\Python\Python37\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 74, in <module>
    raise ImportError(msg)
ImportError: Traceback (most recent call last):
  File "C:\Users\foo\AppData\Local\Programs\Python\Python37\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 58, in <module>
    from tensorflow.python.pywrap_tensorflow_internal import *
  File "C:\Users\foo\AppData\Local\Programs\Python\Python37\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 28, in <module>
    _pywrap_tensorflow_internal = swig_import_helper()
  File "C:\Users\foo\AppData\Local\Programs\Python\Python37\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 24, in swig_import_helper
    _mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
  File "C:\Users\foo\AppData\Local\Programs\Python\Python37\lib\imp.py", line 242, in load_module
    return load_dynamic(name, filename, file)
  File "C:\Users\foo\AppData\Local\Programs\Python\Python37\lib\imp.py", line 342, in load_dynamic
    return _load(spec)
ImportError: DLL load failed: Eine DLL-Initialisierungsroutine ist fehlgeschlagen.


Failed to load the native TensorFlow runtime.

See https://www.tensorflow.org/install/errors

for some common reasons and solutions.  Include the entire stack trace
above this error message when asking for help.

我已经从其他答案中测试了一些解决方案,但没有任何解决方案能够解决我的问题。有人有主意吗?


编辑: 原因是我的CPU不支持AVX。现在可以了。

1 个答案:

答案 0 :(得分:1)

TensorFlow版本1.6或更高版本的二进制文件是使用AVX指令集预先构建的。

因此,在没有这些指令集的任何CPU上,CPU或GPU版本的TF将无法加载。
显然,您的CPU型号不支持AVX指令集。您仍然可以将TensorFlow与以下给出的替代方法一起使用:

  • 尝试Google Colab使用TensorFlow。
    使用TF的最简单方法是切换到google colab。您已预先安装了最新的稳定TF版本。您还可以使用pip install安装其他任何首选的TF版本。
    它具有附加的优势,因为您可以根据任务轻松切换到不同的硬件加速器(cpu,gpu,tpu)。 您所需要的只是一个良好的互联网连接,您已经准备就绪。
  • 尝试通过更改CPU优化标志从源代码构建TF。