我正在使用Udacity进行自驾车课程。我在Windows 10中启动了一个公共环境,我可以运行tensorflow,但我想使用GPU。
我的GPU listed兼容(GTX 950M)。
我按照Windows 10上的tensorflow说明添加GPU:
https://www.tensorflow.org/install/install_windows
并下载并安装了cuda_8.0.61_win10
接下来我重新启动了我的环境。我查看它是否正在使用简单的python程序:
import tensorflow as tf
# Create TensorFlow object called tensor
hello_constant = tf.constant('Hello World!')
with tf.Session() as sess:
# Run the tf.constant operation in the session
output = sess.run(hello_constant)
print(output)
执行得很好,如下:
(carnd-term1) D:\SelfDrivingCar\tensor-exp>python hello.py
b'Hello World!'
接下来我安装了tensorflow的gpu版本:
(carnd-term1) D:\SelfDrivingCar\CarND-Traffic-Sign-Classifier-Project>pip install tensorflow-gpu
Collecting tensorflow-gpu
Downloading tensorflow_gpu-1.1.0-cp35-cp35m-win_amd64.whl (48.5MB)
100% |################################| 48.6MB 16kB/s
Requirement already satisfied: six>=1.10.0 in d:\programdata\anaconda3\envs\carnd-term1\lib\site-packages (from tensorflow-gpu)
Requirement already satisfied: protobuf>=3.2.0 in d:\programdata\anaconda3\envs\carnd-term1\lib\site-packages (from tensorflow-gpu)
Requirement already satisfied: wheel>=0.26 in d:\programdata\anaconda3\envs\carnd-term1\lib\site-packages (from tensorflow-gpu)
Requirement already satisfied: werkzeug>=0.11.10 in d:\programdata\anaconda3\envs\carnd-term1\lib\site-packages (from tensorflow-gpu)
Requirement already satisfied: numpy>=1.11.0 in d:\programdata\anaconda3\envs\carnd-term1\lib\site-packages (from tensorflow-gpu)
Requirement already satisfied: setuptools in d:\programdata\anaconda3\envs\carnd-term1\lib\site-packages (from protobuf>=3.2.0->tensorflow-gpu)
Installing collected packages: tensorflow-gpu
Successfully installed tensorflow-gpu-1.1.0
我重新调试hello.py并获得以下内容
(carnd-term1) D:\SelfDrivingCar\tensor-exp>python hello.py
Traceback (most recent call last):
File "d:\ProgramData\Anaconda3\envs\carnd-term1\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 18, in swig_import_helper
return importlib.import_module(mname)
File "d:\ProgramData\Anaconda3\envs\carnd-term1\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 "d:\ProgramData\Anaconda3\envs\carnd-term1\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 41, in <module>
from tensorflow.python.pywrap_tensorflow_internal import *
File "d:\ProgramData\Anaconda3\envs\carnd-term1\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 21, in <module>
_pywrap_tensorflow_internal = swig_import_helper()
File "d:\ProgramData\Anaconda3\envs\carnd-term1\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 20, in swig_import_helper
return importlib.import_module('_pywrap_tensorflow_internal')
File "d:\ProgramData\Anaconda3\envs\carnd-term1\lib\importlib\__init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
ImportError: No module named '_pywrap_tensorflow_internal'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "hello.py", line 1, in <module>
import tensorflow as tf
File "d:\ProgramData\Anaconda3\envs\carnd-term1\lib\site-packages\tensorflow\__init__.py", line 24, in <module>
from tensorflow.python import *
File "d:\ProgramData\Anaconda3\envs\carnd-term1\lib\site-packages\tensorflow\python\__init__.py", line 51, in <module>
from tensorflow.python import pywrap_tensorflow
File "d:\ProgramData\Anaconda3\envs\carnd-term1\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 52, in <module>
raise ImportError(msg)
ImportError: Traceback (most recent call last):
File "d:\ProgramData\Anaconda3\envs\carnd-term1\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 18, in swig_import_helper
return importlib.import_module(mname)
File "d:\ProgramData\Anaconda3\envs\carnd-term1\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 "d:\ProgramData\Anaconda3\envs\carnd-term1\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 41, in <module>
from tensorflow.python.pywrap_tensorflow_internal import *
File "d:\ProgramData\Anaconda3\envs\carnd-term1\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 21, in <module>
_pywrap_tensorflow_internal = swig_import_helper()
File "d:\ProgramData\Anaconda3\envs\carnd-term1\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 20, in swig_import_helper
return importlib.import_module('_pywrap_tensorflow_internal')
File "d:\ProgramData\Anaconda3\envs\carnd-term1\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.
我删除了环境并使用以下命令重复整个过程:
pip install --ignore-installed --upgrade https://storage.googleapis.com/tensorflow/windows/gpu/tensorflow_gpu-1.1.0-cp35-cp35m-win_amd64.whl
并得到了相同的结果。
以下不起作用(Cannot import Tensorflow for GPU on Windows 10),因为列出的目录中没有名为cudnn64_6.dll的文件。
为什么会出现导入错误?
答案 0 :(得分:4)
你需要安装cudnn。目前仅正式支持5.1版。不知道在6.0中提到的6.0的重命名技巧: