[英]tensorflow transition to gpu version
我与 tensorflow 合作了一段时间,一切正常,直到我尝试切换到 gpu 版本。
卸载以前的tensorflow, pip 安装tensorflow-gpu (v2.0) 下载安装visual studio community 2019 下载安装ZA33B7755E5F9B504D2D0308EACA4FF28DNNcu 下载安装
使用 CUDA 样本“deviceQuery_vs2019”进行测试,结果为阳性。 测试通过 Nvidia GeForce rtx 2070
使用以前的工作文件运行测试并得到错误 tensorflow.python.framework.errors_impl.InternalError: cudaGetDevice() failed。 状态:未找到 cudaGetErrorString 符号。
经过一番研究,我发现支持的 CUDA 版本是 10.0,所以我降级了版本,更改了 CUDA 路径,但没有任何改变
使用此代码
import tensorflow as tf
print("Num GPUs Available: ",
len(tf.config.experimental.list_physical_devices('GPU')))
我明白了
2019-10-01 16:55:03.317232: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library nvcuda.dll
2019-10-01 16:55:03.420537: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1618] Found device 0 with properties:
Num GPUs Available: 1
name: GeForce RTX 2070 major: 7 minor: 5 memoryClockRate(GHz): 1.62
pciBusID: 0000:01:00.0
2019-10-01 16:55:03.421029: I tensorflow/stream_executor/platform/default/dlopen_checker_stub.cc:25] GPU libraries are statically linked, skip dlopen check.
2019-10-01 16:55:03.421849: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1746] Adding visible gpu devices: 0
[Finished in 2.01s]
CUDA seems to recognize the card, so does tensorflow, but i cannot get rid of the error: tensorflow.python.framework.errors_impl.InternalError: cudaGetDevice() failed. 状态:未找到 cudaGetErrorString 符号。
我究竟做错了什么? 我应该坚持使用 cuda 10.0 吗? 我错过了一部分安装吗?
已解决,这主要是避免冲突的版本炼金术。 这是我所做的(据我所知,订单很重要)
从那里开始,一切都像魅力一样。 我无法从 Visual Studio (devicequery) 构建 cuda 示例文件,但这不是关键步骤。 几乎每个错误都是由于文件版本不兼容造成的,我花了 3-4 天的时间来确定正确的组合。 希望有所帮助:)
tensorflow-gpu v2.0.0现在可以在conda 上使用,并且很容易安装: conda install -c anaconda tensorflow-gpu
。 无需额外下载或 cuda 安装。
添加到上面的响应中。 我按照这些步骤操作,效果很好,但我可以确认您不需要从 Visual Studio 安装 c++ 工作负载。
我有类似的问题。 结合我使用 windows 8 和 pycharm 的事实。 但是我最终使用这篇文章想通了。
有效的组合:
重要的是设置环境变量后重新启动;)
我不认为 tensorflow 2.2。 将无法使用 cuda 11...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.