TensorFlow:调用 cuInit 失败:CUDA_ERROR_NO_DEVICE

TensorFlow : failed call to cuInit: CUDA_ERROR_NO_DEVICE

我的测试:

import tensorflow as tf
hello = tf.constant('Hello, TensorFlow!')
sess = tf.Session()`

错误:

c:\l\work\tensorflow-1.1.0\tensorflow\stream_executor\cuda\cuda_driver.cc:405]

调用 cuInit 失败:CUDA_ERROR_NO_DEVICE

-> 但“/cpu:0” 工作正常

配置:

nvidia-smi :

为什么 Tensorflow 检测不到我的 GPU?

问题已解决 on GitHub。如果您为 CUDA_VISIBLE_DEVICES 环境变量设置了无效值,则会显示此错误消息,例如当您只有一个 GPU(其 ID 0)并设置 CUDA_VISIBLE_DEVICES=1CUDA_VISIBLE_DEVICES=2.

真正的答案是添加以下代码行:

import os
os.environ['CUDA_VISIBLE_DEVICES'] = "0"

如果您使用的是 Google Colab,则可能是您的运行时不是 GPU。单击“运行时”下拉菜单。 Select“更改运行时类型”。现在 select GPU。