GPh*_*ilo 113 python python-3.x keras tensorflow tensorflow2.0
我刚刚通过安装了最新版本的 Tensorflow pip install tensorflow
,每当我运行程序时,我都会收到日志消息:
W tensorflow/stream_executor/platform/default/dso_loader.cc:55] 无法加载动态库“cudart64_101.dll”;dlerror: 找不到 cudart64_101.dll
这很糟糕吗?如何修复错误?
GPh*_*ilo 115
在新的 Tensorflow 2.1 版本中,默认的tensorflow
pip 包包含 TF 的 CPU 和 GPU 版本。在以前的 TF 版本中,找不到 CUDA 库会发出错误并引发异常,而现在库会动态搜索正确的 CUDA 版本,如果找不到,则会发出警告(开头的W表示对于警告,错误有一个E(或F表示致命错误)并回退到 CPU-only 模式。事实上,这也在警告之后作为信息消息写入日志(请注意,如果您有更高的默认的最低日志级别,您可能看不到信息消息。完整的日志是(强调我的):
2020-01-20 12:27:44.554767: W tensorflow/stream_executor/platform/default/dso_loader.cc:55] 无法加载动态库“cudart64_101.dll”;dlerror: 找不到 cudart64_101.dll
2020-01-20 12:27:44.554964: I tensorflow/stream_executor/cuda/cudart_stub.cc:29]如果你的机器上没有设置 GPU,请忽略上面的 cudart dlerror。
如果您的机器上没有支持 CUDA 的 GPU,或者您不在乎没有 GPU 加速,则无需担心。另一方面,如果您安装了 tensorflow 并想要 GPU 加速,请检查您的 CUDA 安装(TF 2.1 需要 CUDA 10.1,而不是10.2 或 10.0)。
如果您只是想摆脱警告,您可以调整 TF 的日志记录级别来抑制警告,但这可能有点矫枉过正,因为它会使所有警告静音。
您的 CUDA 设置已损坏,请确保您安装了正确的版本。
Cha*_*sal 59
要在 TensorFlow 2.1 中安装 GPU 支持的先决条件:
pip install tensorflow
。Jen*_* Pu 23
TensorFlow 2.3.0 在 CUDA 11 上运行良好。但是你必须安装 tf-nightly-gpu(在你安装了 tensorflow 和 CUDA 11 之后):https ://pypi.org/project/tf-nightly-gpu/
尝试:
pip install tf-nightly-gpu
Run Code Online (Sandbox Code Playgroud)
之后,您将在控制台中收到消息:
I tensorflow/stream_executor/platform/default/dso_loader.cc:48] Successfully opened dynamic library cudart64_110.dll
Run Code Online (Sandbox Code Playgroud)
小智 13
我用另一种方式解决了这个问题。首先,我从此链接安装了 cuda 10.1 工具包
我选择安装程序类型(exe(本地))并在自定义模式下安装 10.1 意味着(没有 Visual Studio 集成,NVIDIA PhysX 因为以前我安装了 CUDA 10.2 所以需要的依赖项会自动安装)
安装后,从以下路径 (C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\bin) ,在我的情况下,我复制了“cudart64_101.dll”文件并粘贴到 (C:\Program Files\ NVIDIA GPU 计算工具包\CUDA\v10.2\bin)。
然后导入 Tensorflow 工作顺利。
NB 抱歉英语不好
Nic*_*ais 11
在conda
环境中,这就是解决我的问题的原因(我错过了cudart64-100.dll
:
把它放在我的 conda 环境中
C:\Users\<user>\Anaconda3\envs\<env name>\Library\bin
这就是全部!您可以仔细检查它是否有效:
import tensorflow as tf
tf.config.experimental.list_physical_devices('GPU')
Run Code Online (Sandbox Code Playgroud)
在我的情况下,tensorflow 安装正在寻找 cudart64_101.dll
cudart64_101 的 101 部分是 Cuda 版本 - 这里 101 = 10.1
我下载的是11.x,所以我系统上cudart64的版本是cudart64_110.dll
这是错误的文件!!cudart64_101.dll ? cudart64_110.dll
从https://developer.nvidia.com/下载 Cuda 10.1
安装(我的 NSight Visual Studio 集成崩溃了,所以我把它关掉了)
安装完成后,您应该有一个 Cuda 10.1 文件夹,并且在 bin 中系统抱怨缺少 dll
检查10.1 bin文件夹的路径是否注册为系统环境变量,所以在加载库时会检查
如果系统没有立即选择该路径,您可能需要重新启动
如果您看到上述错误,但实际上您安装了 CUDA 10,此答案可能会有所帮助:
pip install tensorflow-gpu==2.0.0
Run Code Online (Sandbox Code Playgroud)
输出:
I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cudart64_100.dll
Run Code Online (Sandbox Code Playgroud)
这对我来说是解决方案。
小智 5
我安装了 cudatoolkit 11 并将 dll 复制
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.1\bin
到C:\Windows\System32
. 它针对 PyCharm 进行了修复,但针对 Anaconda jupyter 进行了修复:
[名称:“/device:CPU:0”device_type:“CPU”内存_限制:268435456局部性{}化身:6812190123916921346,名称:“/device:GPU:0”device_type:“GPU”内存_限制:13429637120局部性{bus_id:1个
链接{ } } incarnation: 18025633343883307728physical_device_desc: "设备: 0, 名称: Quadro P5000, pci 总线 id: 0000:02:00.0, 计算能力: 6.1" ]
归档时间: |
|
查看次数: |
253535 次 |
最近记录: |