【问题标题】:Tensorflow-gpu issue (CUDA runtime error: device kernel image is invalid)Tensorflow-gpu 问题(CUDA 运行时错误:设备内核映像无效)
【发布时间】:2020-11-23 14:43:35
【问题描述】:

我有一个 python 虚拟环境 (conda),我在其中安装了 CUDA 工具包 10.1.243 和 tensorflow-gpu 2.3.0rc0。我的 CUDA 驱动程序是 11.0。

为了测试 tensorflow 是否正确安装到 GPU,我从 venv 中运行了一系列命令:

tf.test.is_built_with_cuda()

是的

tf.config.list_physical_devices(‘GPU’)

找到具有以下属性的设备 0: pciBusID:0000:01:00.0 名称:Quadro M2000M 计算能力:5.0 [PhysicalDevice(name='/physical_device:GPU:0', device_type='GPU')]

python -c "import tensorflow as tf; print(tf.reduce_sum(tf.random.normal([1000,1000])))"

tensorflow.python.framework.errors_impl.InternalError:GPU:0 上的 CUDA 运行时隐式初始化失败。状态:设备内核映像无效

我不确定如何解决此问题。我感觉它与修改编译有关,以便 tensorflow 支持我的设备(5.0)的计算能力,但我不确定如何进行。谢谢!!

【问题讨论】:

    标签: python tensorflow gpu nvidia


    【解决方案1】:

    我也遇到了同样的问题。我使用以下命令将 Tensorflow2.3 版本降级为 2.2。

    pip install --upgrade tensorflow==2.2
    

    现在可以运行了,但是速度很慢。

    【讨论】:

      【解决方案2】:

      根据这个 github issue 的解释,谷歌 Tensorflow 工程团队已经放弃了对一些旧版本 GPU 的支持: https://github.com/tensorflow/tensorflow/issues/41990

      我相信您的 GPU 属于那些较低版本的 GPU 系列。 所以从 2.3 降级你的 TF。到2.2是一个解决方案。并且 TF 工程师建议我们自己构建 TF2.3 并更改其构建配置脚本以启用较低版本的 GPU 支持,但 Google TF 团队并未确认它可以工作,也没有责任解决我们将遇到的任何问题.

      【讨论】:

      • 我得到了 rtx 2080,很奇怪他们不支持这个设备。
      • @SidKaushik 是的,这很奇怪,但我终于通过将我的环境从 TF 切换到 pytorch 完全解决了这个问题,TF 确实是谷歌的一个失败的 SW 堆栈,至少它让我很沮丧很多次。
      【解决方案3】:

      我推荐pip install tensorflow-gpu==2.2

      【讨论】:

      • 也许添加更多解释来解释这如何回答问题?
      • 我想说的不仅仅是pip install tensorflow==2.2使用pip install tensorflow-gpu==2.2
      猜你喜欢
      • 1970-01-01
      • 2018-09-21
      • 2012-06-15
      • 2021-08-21
      • 1970-01-01
      • 2020-12-31
      • 2019-08-27
      • 2023-03-14
      • 1970-01-01
      相关资源
      最近更新 更多