Search code examples
tensorflowcudnn

DLL and pywrap_tensorflow missing. Tensorflow-gpu installation error


I am trying to install tensorflow-gpu in anaconda environment (python version 3.5). However, I got a few errors, mainly:

  • DLL load failed
  • No module named '_pywrap_tensorflow_internal'

It seems that this errors is quite common, however, I am not sure why the solution from the other question is not working.

  1. I do have a MSVCP140.DLL in my path. I check this through where MSVCP140.DLL. This is a fix suggested here.
  2. I've installed CUDA 8.0 from here and cuDNN 5.1 (and not cuDNN 6.0) from here.
  3. I've added the path to cudnn64_5.dll (...\bin)
  4. CPU version of tensorflow works well without error.

I've tried reinstalling CUDA and tensorflow-gpu but it still does not work. Any help?


Error message:

>ImportError: Traceback (most recent call last):
  File "C:\Users\user\Anaconda3\envs\py35\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 18, in swig_import_helper
    return importlib.import_module(mname)
  File "C:\Users\user\Anaconda3\envs\py35\lib\importlib\__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 986, in _gcd_import
  File "<frozen importlib._bootstrap>", line 969, in _find_and_load
  File "<frozen importlib._bootstrap>", line 958, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 666, in _load_unlocked
  File "<frozen importlib._bootstrap>", line 577, in module_from_spec
  File "<frozen importlib._bootstrap_external>", line 906, in create_module
  File "<frozen importlib._bootstrap>", line 222, in _call_with_frames_removed
ImportError: DLL load failed: The specified module could not be found.

>During handling of the above exception, another exception occurred:

>Traceback (most recent call last):
  File "C:\Users\user\Anaconda3\envs\py35\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 41, in <module>
    from tensorflow.python.pywrap_tensorflow_internal import *
  File "C:\Users\user\Anaconda3\envs\py35\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 21, in <module>
    _pywrap_tensorflow_internal = swig_import_helper()
  File "C:\Users\user\Anaconda3\envs\py35\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 20, in swig_import_helper
    return importlib.import_module('_pywrap_tensorflow_internal')
  File "C:\Users\user\Anaconda3\envs\py35\lib\importlib\__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
ImportError: No module named '_pywrap_tensorflow_internal'


>Failed to load the native TensorFlow runtime.

>See https://www.tensorflow.org/install/install_sources#common_installation_problems

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

Solution

  • I had the exact same problem for a long time and seem to have solved it for me just now.

    Install cuDNN 6.0 and confirm that the dll inside cuda/bin is named cudnn64_6.dll. Change only the name to cudnn64_5.dll (and make sure it is added to your path).

    Hopefully this will resolve your problem.