首页 > 解决方案 > Tensorflow ImportError - DLL 加载失败

问题描述

首先要报告的是我有一个不支持 AVX的 CPU 。所以我购买了 GeForce GTX1060 来运行 Tensorflow,但不幸的是我无法让它工作。我得到这个:

ImportError: DLL load failed: A dynamic link library (DLL) initialization routine failed.

我已经安装了:

我在 Anaconda 上有 Python 3.6.8。Win10 x64。不知道为什么在启动 Python 时我看到对 win32 的引用。我想这不是根本原因,而是为了以防万一。

 Python 3.6.8 |Anaconda, Inc.| (default, Dec 30 2018, 18:50:55) [MSC v.1915 64 bit (AMD64)] on win32

我已经尝试过 tensorflow-gpu 1.12.0 和 1.10.0。两者都给我 DLL 错误。我一直在尝试不同的包,所以可能一些依赖关系被破坏了,但是 stacktrace 没有给我提供任何信息给我作为 Python 新手。

这是我在导入 tensorflow-gpu 1.12.0 时得到的堆栈跟踪:

>>> import tensorflow as tf
Traceback (most recent call last):
  File "C:\Python\Anaconda3\envs\tensorflow_gpuenv\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 58, in <module>
from tensorflow.python.pywrap_tensorflow_internal import *
  File "C:\Python\Anaconda3\envs\tensorflow_gpuenv\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 28, in <module>
_pywrap_tensorflow_internal = swig_import_helper()
  File "C:\Python\Anaconda3\envs\tensorflow_gpuenv\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:\Python\Anaconda3\envs\tensorflow_gpuenv\lib\imp.py", line 243, in load_module
return load_dynamic(name, filename, file)
  File "C:\Python\Anaconda3\envs\tensorflow_gpuenv\lib\imp.py", line 343, in load_dynamic
return _load(spec)
ImportError: DLL load failed: A dynamic link library (DLL) initialization routine failed.

这是针对 tensorflow-gpu 1.10.0 的:

>>> import tensorflow as tf
Traceback (most recent call last):
  File "C:\Python\Anaconda3\envs\tensorflow_gpuenv\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 58, in <module>
from tensorflow.python.pywrap_tensorflow_internal import *
  File "C:\Python\Anaconda3\envs\tensorflow_gpuenv\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 18, in <module>
_pywrap_tensorflow_internal = swig_import_helper()
  File "C:\Python\Anaconda3\envs\tensorflow_gpuenv\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 17, in swig_import_helper
return importlib.import_module(mname)
  File "C:\Python\Anaconda3\envs\tensorflow_gpuenv\lib\importlib\__init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
ImportError: DLL load failed: A dynamic link library (DLL) initialization routine failed.

这是“点子列表”结果:

Package                  Version
------------------------ ----------
absl-py                  0.6.1
alabaster                0.7.12
asn1crypto               0.24.0
astor                    0.7.1
astroid                  2.1.0
Babel                    2.6.0
backcall                 0.1.0
bleach                   3.0.2
certifi                  2018.11.29
cffi                     1.11.5
chardet                  3.0.4
cloudpickle              0.6.1
colorama                 0.4.1
cryptography             2.4.2
decorator                4.3.0
docutils                 0.14
entrypoints              0.2.3
gast                     0.2.0
grpcio                   1.16.1
h5py                     2.8.0
idna                     2.8
imagesize                1.1.0
ipykernel                5.1.0
ipython                  7.2.0
ipython-genutils         0.2.0
isort                    4.3.4
jedi                     0.13.2
Jinja2                   2.10
jsonschema               2.6.0
jupyter-client           5.2.4
jupyter-core             4.4.0
Keras                    2.2.4
Keras-Applications       1.0.6
Keras-Preprocessing      1.0.5
keyring                  17.0.0
lazy-object-proxy        1.3.1
Markdown                 3.0.1
MarkupSafe               1.1.0
mccabe                   0.6.1
mistune                  0.8.4
mkl-fft                  1.0.6
mkl-random               1.0.2
nbconvert                5.3.1
nbformat                 4.4.0
numpy                    1.14.5
numpydoc                 0.8.0
packaging                18.0
pandocfilters            1.4.2
parso                    0.3.1
pickleshare              0.7.5
pip                      18.1
prompt-toolkit           2.0.7
protobuf                 3.6.1
psutil                   5.4.8
pycodestyle              2.4.0
pycparser                2.19
pyflakes                 2.0.0
Pygments                 2.3.1
pylint                   2.2.2
pyOpenSSL                18.0.0
pyparsing                2.3.0
pyreadline               2.1
PySocks                  1.6.8
python-dateutil          2.7.5
pytz                     2018.7
pywin32                  223
PyYAML                   3.13
pyzmq                    17.1.2
QtAwesome                0.5.3
qtconsole                4.4.3
QtPy                     1.5.2
requests                 2.21.0
rope                     0.11.0
scipy                    1.1.0
setuptools               39.1.0
six                      1.11.0
snowballstemmer          1.2.1
Sphinx                   1.8.2
sphinxcontrib-websupport 1.1.0
spyder                   3.3.2
spyder-kernels           0.3.0
tensorboard              1.12.2
tensorflow-gpu           1.12.0
termcolor                1.1.0
testpath                 0.4.2
tornado                  5.1.1
traitlets                4.3.2
typed-ast                1.1.0
urllib3                  1.24.1
wcwidth                  0.1.7
webencodings             0.5.1
Werkzeug                 0.14.1
wheel                    0.32.3
win-inet-pton            1.0.1
wincertstore             0.2
wrapt                    1.10.11

有人请给我提示要检查哪个污垢。我在不同的论坛上看到了许多建议来安装所有不同版本和构建的 tensorflow、不同的 CUDA 版本或其他选项,但在我开始这些冗长的程序之前,我想知道它是否有意义。也许 CPU 上缺乏 AVX 是一个阻碍,使所有的努力都徒劳无功。

还有一件事——有一次,当我同时安装了 tensorflow 和 tensorflow-gpu(不确定版本)时,我卸载了普通的 tensorflow,然后命令“ import tensorflow as tf ”运行没有错误。不幸的是,在下一步“ from tensorflow import keras ”中,我从 Python 获得了无法找到 keras 的信息。没有进一步的测试允许我重复这一点。

我想这就是全部。任何帮助将不胜感激。

标签: pythontensorflowavx

解决方案


推荐阅读