谷歌协作平台:没有可用的GPU后端。

26

这里讲述了如何在Google Colaboratory中使用GPU:

只需要在笔记本设置中的加速器下拉菜单中选择“GPU”(可以通过编辑菜单或命令面板(cmd/ctrl-shift-P)实现)。

然而,当我在笔记本设置中选择GPU时,会弹出一个窗口提示:

无法分配后端 没有可用GPU的后端,您想要使用没有加速器的运行时吗?

当我运行以下代码时:

import tensorflow as tf
device_name = tf.test.gpu_device_name()
if device_name != '/device:GPU:0':
    raise SystemError('GPU device not found')
print('Found GPU at: {}'.format(device_name))
当然,我收到了“GPU设备未找到”的错误消息。看起来描述不完整。你有什么想法需要做些什么吗?
7个回答

55

您需要配置笔记本电脑以使用GPU设备。

点击 编辑->笔记本设置->硬件加速器->GPU。


我在/device:GPU:0找到了GPU。这是否意味着GPU0是我的英特尔HD(R)图形家族?我该如何使其检测到我的第二个GPU,即NVIDIA? - Infinite Loops

29

当GPU不可用时,您需要稍后重试。该消息表示所有可用的GPU都在使用中。

常见问题提供了额外信息:

我如何使用GPU?为什么它们有时不可用?

Colaboratory适用于交互式使用。长时间运行的后台计算(特别是使用GPU)可能会被停止。请勿将Colaboratory用于加密货币挖掘。这样做是不受支持的,并可能导致服务不可用。我们鼓励希望通过Colaboratory UI运行连续或长时间运行计算的用户使用本地运行时

连续训练GPU似乎有冷却时间。因此,如果出现错误对话框,请稍后重试,并尝试在随后的会话中限制长期培训。


8
我的声誉略低,不能发表评论,但针对@Bob Smith的回答中冷却期的额外信息如下。

持续使用GPU会有一个冷却期。所以,如果你遇到错误提示,请稍后再试,并尽量在后续的训练中限制长时间的使用。

根据我最近的经验,我认为Colab最多会分配给你12小时的GPU使用时间,之后大约需要8小时的冷却时间才能再次使用计算资源。在我的情况下,即使没有GPU,我也无法连接实例。我不太确定接下来这一点,但我想如果同时运行3个实例,你的12小时使用时间将快3倍。我不知道12小时限制何时重置,但猜测可能是一天。

总之,还缺少一些细节,但主要的结论是,如果超过限制,你将被锁定8小时无法连接实例(如果你正在积极地处理某些事情,这是非常痛苦的)。

1
如何检查使用限制?我的意思是,现在只是上午时间,我正在使用TPU/GPU时遇到了超过使用限制的错误。 我只使用了一两个小时... 上一次使用是在昨晚12:00之前,所以已经超过8个小时。 - Pallavi
我不是100%确定,但我相信你在24小时内最多有12个小时的时间。 - DerekG

8

添加一些图片以使其更清晰

enter image description here

enter image description here


5

在尝试了重置运行时仍然无效之后,我进行了以下操作:

运行时 -> 重置所有运行时 ->

然后我得到了一个愉快的:

Found GPU at: /device:GPU:0

1

这是你问题的确切答案。

根据Colab的一篇文章:

总体使用限制、空闲超时时间、最大VM寿命、可用GPU类型和其他因素会随着时间变化而有所不同。

有时会优先为使用Colab进行交互式操作或最近在Colab中使用更少资源的用户分配GPU和TPU。因此,长时间运行计算的用户或最近在Colab中使用了更多资源的用户更有可能遇到使用限制,并暂时受到GPU和TPU访问限制。具有高计算需求的用户可能有兴趣使用在自己硬件上运行的本地运行时的Colab UI。


-6

Google Colab默认安装的是TensorFlow 2.0,如果需要更改为TensorFlow 1,请添加以下代码:

%tensorflow_version 1.x 在任何Keras或TensorFlow代码之前使用它。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接