Linux VM 上的 Google Cloud Deep Learning 引发未知 Cuda 错误

Posted

技术标签:

【中文标题】Linux VM 上的 Google Cloud Deep Learning 引发未知 Cuda 错误【英文标题】:Google Cloud Deep Learning On Linux VM throws Unknown Cuda Error 【发布时间】:2021-12-22 01:07:48 【问题描述】:

我正在尝试在 Google Cloud 上设置深度学习 VM,但我一遍又一遍地遇到同样的问题。

我将按照所有步骤,设置一个 N1-highmem-8(8 个 vCPU,52gb 内存)实例,添加一个 T4 GPU 并选择Deep Learning Image: TensorFlow 2.4 m69 CUDA 110 图像。就是这样。

之后,我将 ssh 进入 vm,运行安装所有 NVIDIA 驱动程序的脚本,然后......当我开始使用它时,只需运行

from tensorflow.keras.layers import Input, Dense

i = Input((100,))
x = Dense(500)(i)

我不断收到failed call to cuInit: CUDA_ERROR_UNKNOWN: unknown error。到那时,我还没有安装任何东西,也没有做任何自定义,只是来自 GCP 的香草图像。

更令人担忧的是,即使我删除了 vm,然后使用相同的配置创建一个新的,有时错误不会立即发生,有时它会立即出现。

有人遇到过吗?我用谷歌搜索,看看是否有人遇到过这个问题,虽然我遇到了一些建议,但它们都是旧的,对我没有用。此外,NVIDIA 支持论坛上的建议告诉我重新安装所有内容,而我使用专门用于深度学习的预构建 GCP 映像的全部意义在于,我不必陷入安装和解决问题的地狱NVIDIA 驱动程序。

【问题讨论】:

您是否尝试过使用 TensorFlow 2.2 映像 (cu101)。 cuda 版本 10 非常稳定,已经为我工作了很多次。除非明确需要使用 TF 2.4 【参考方案1】:

问题已通过 M74 图像修复,但您使用的是 M69。因此,请遵循Google Cloud public forum 中提供的两个修复之一。

我们可以通过以下方式缓解该问题:

修复 #1: 在新的 VM 实例中使用最新的 DLVM 映像(M74 或更高版本):他们已针对 M74 中的最新 DLVM 映像发布了修复,因此您将不再受到这个问题。

修复 #2: 修补运行早于 M74 的现有实例的映像。

Run the following via an SSH session on the affected instance:
gsutil cp gs://dl-platform-public-nvidia/b191551132/restart_patch.sh /tmp/restart_patch.sh
chmod +x /tmp/restart_patch.sh
sudo /tmp/restart_patch.sh
sudo service jupyter restart

只需执行一次,不需要每次重启实例都重新运行。

【讨论】:

谢谢!这就像一个魅力!由于一些限制,我不得不使用 tf 2.4,所以这个解决方案是完美的。

以上是关于Linux VM 上的 Google Cloud Deep Learning 引发未知 Cuda 错误的主要内容,如果未能解决你的问题,请参考以下文章