我无法使用tensorflow,因为在尝试导入tensorflow时收到以下错误消息:
2020-02-28 09:31:24.742077: W tensorflow/stream_executor/platform/default/dso_loader.cc:55] Could not load dynamic library 'cudart64_100.dll'; dlerror: cudart64_100.dll not found
Traceback (most recent call last):
File "<input>", line 1, in <module>
File "C:\Program Files\JetBrains\PyCharm Community Edition 2019.3.3\plugins\python-ce\helpers\pydev\_pydev_bundle\pydev_import_hook.py", line 21, in do_import
module = self._system_import(name, *args, **kwargs)
File "C:\Users\Maximal\Documents\Python\PyCharm\Projekt1\venv\lib\site-packages\tensorflow\__init__.py", line 98, in <module>
from tensorflow_core import *
File "C:\Program Files\JetBrains\PyCharm Community Edition 2019.3.3\plugins\python-ce\helpers\pydev\_pydev_bundle\pydev_import_hook.py", line 21, in do_import
module = self._system_import(name, *args, **kwargs)
File "C:\Users\Maximal\Documents\Python\PyCharm\Projekt1\venv\lib\site-packages\tensorflow_core\__init__.py", line 40, in <module>
from tensorflow.python.tools import module_util as _module_util
File "C:\Program Files\JetBrains\PyCharm Community Edition 2019.3.3\plugins\python-ce\helpers\pydev\_pydev_bundle\pydev_import_hook.py", line 21, in do_import
module = self._system_import(name, *args, **kwargs)
File "C:\Users\Maximal\Documents\Python\PyCharm\Projekt1\venv\lib\site-packages\tensorflow\__init__.py", line 50, in __getattr__
module = self._load()
File "C:\Users\Maximal\Documents\Python\PyCharm\Projekt1\venv\lib\site-packages\tensorflow\__init__.py", line 44, in _load
module = _importlib.import_module(self.__name__)
File "C:\Users\Maximal\AppData\Local\Programs\Python\Python36\lib\importlib\__init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "C:\Users\Maximal\Documents\Python\PyCharm\Projekt1\venv\lib\site-packages\tensorflow_core\python\__init__.py", line 52, in <module>
from tensorflow.core.framework.graph_pb2 import *
File "C:\Program Files\JetBrains\PyCharm Community Edition 2019.3.3\plugins\python-ce\helpers\pydev\_pydev_bundle\pydev_import_hook.py", line 21, in do_import
module = self._system_import(name, *args, **kwargs)
File "C:\Users\Maximal\Documents\Python\PyCharm\Projekt1\venv\lib\site-packages\tensorflow_core\core\framework\graph_pb2.py", line 7, in <module>
from google.protobuf import descriptor as _descriptor
File "C:\Program Files\JetBrains\PyCharm Community Edition 2019.3.3\plugins\python-ce\helpers\pydev\_pydev_bundle\pydev_import_hook.py", line 21, in do_import
module = self._system_import(name, *args, **kwargs)
File "C:\Users\Maximal\Documents\Python\PyCharm\Projekt1\venv\lib\site-packages\google\protobuf\descriptor.py", line 47, in <module>
from google.protobuf.pyext import _message
File "C:\Program Files\JetBrains\PyCharm Community Edition 2019.3.3\plugins\python-ce\helpers\pydev\_pydev_bundle\pydev_import_hook.py", line 21, in do_import
module = self._system_import(name, *args, **kwargs)
我已经安装了Cuda工具包10.0和相应版本的cuDNN以及Visual Studio。刚开始我得到消息:
Could not load dynamic library 'cudart64_101.dll'; dlerror: cudart64_101.dll not found
因此,我检查了cuda文件夹,仅找到一个cudart64_100.dll。经过一番研究,我发现cudart_101.dll是cuda工具包10.1版的一部分。因此,我将cuDNN的相应版本安装了10.1。但是现在我收到消息了:
Could not load dynamic library 'cudart64_100.dll'; dlerror: cudart64_100.dll not found
这对我来说毫无意义,而且我没有找到解决此问题的方法。 我使用最新版本的PyCharm,Python 3.6,Tensorflow-gpu 2.0.0和Cuda 10.0和10.1
答案 0 :(得分:0)
在这一点上,我将完全删除(例如,卸载)两个CUDA软件包(10.0和10.1),因为同时拥有两个CUDA并不是一个好主意。卸载后,请确保检查所有文件夹,以确保没有剩余任何内容。
然后,检查您的NVIDIA驱动程序是否最新。
严格按照Windows的安装说明进行操作。 确保您获得的CuDNN软件包与您安装的CUDA版本兼容。通过this链接安装CuDNN时,它将为您提供一个向导,您可以在其中为不同的CUDA版本选择不同的CuDNN版本。为版本10.1选择一个,并将cudnn64_7.dll
,cudnn.h
和cudnn.lib
分别放在CUDA安装目录的右侧文件夹中。
然后,我将继续创建一个新的conda环境,例如
conda create --name DeepLearning3.6 python=3.6 tensorflow-gpu numpy scipy pandas scikit-learn pandas
可以(或者您可能需要的其他软件包,我通常以它们为起点,但请确保您的环境至少包括tensorflow-gpu和numpy)。当然,您也可以使用pip和venv,两者都应由您决定。
然后,不要忘记在PyCharm中指向正确的环境(Ctrl + Alt + S
,选择正确的项目解释器,在此示例中将其称为DeepLearning3.6
)。尝试再次运行该脚本,它现在应该可以运行了。