【问题标题】:GPU is lost during execution of either Tensorflow or Theano codeGPU 在执行 Tensorflow 或 Theano 代码期间丢失
【发布时间】:2018-02-04 03:01:11
【问题描述】:

当训练两个不同的神经网络中的任何一个时,一个使用 Tensorflow,另一个使用 Theano,有时在随机时间(可能是几小时或几分钟,主要是几小时)之后,执行冻结,我得到此消息通过运行“nvidia-smi”:

“无法确定 GPU 0000:02:00.0 的设备句柄:GPU 丢失。重新启动系统以恢复此 GPU”

我尝试监控 GPU 性能 13 小时执行,一切似乎都很稳定:

我正在合作:

  • Ubuntu 14.04.5 LTS
  • GPU 是 Nvidia Titan Xp(此行为在同一台机器上的另一个 GPU 上重复)
  • CUDA 8.0
  • CuDNN 5.1
  • 张量流 1.3
  • Theano 0.8.2

我不知道如何解决这个问题,任何人都可以就可能导致此问题的原因以及如何诊断/解决此问题提出建议吗?

【问题讨论】:

  • 您找到解决方案/答案了吗?
  • 是的,添加了一个答案,我希望这会有所帮助。

标签: gpu nvidia tensorflow-gpu cudnn theano-cuda


【解决方案1】:

我不久前发布了这个问题,但经过几周的调查后,我们设法找到了问题(和解决方案)。 我现在不记得所有细节了,但我会发布我们的主要结论,以防有人发现它有用。

底线是 - 我们拥有的硬件不够强大,无法支持高负载 GPU-CPU 通信。我们在具有 1 个 CPU 和 4 个 GPU 设备的机架式服务器上观察到这些问题,只是 PCI 总线过载。通过在机架服务器上添加另一个 CPU 解决了这个问题。

【讨论】:

  • 感谢您的回答!你还记得你是怎么知道这是由于 PCI 总线过载造成的吗?
  • 我们试图根据我们正在运行的代码来描述这些故障何时发生。我们发现它们发生在我们并行使用 3-4 个 GPU 或运行导致大量 CPU-GPU 流量的代码时。然后我们将我们的服务器规格与常用规格进行比较,发现通常有两个 CPU,而我们只有一个。于是我们又买了一个,问题就解决了。
  • 我还记得我们查看了很多服务器的系统日志,并看到了许多来自 PCI 总线的警告/错误。抱歉没有详细说明,我没有记录我们的调查过程。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-05-23
  • 1970-01-01
  • 1970-01-01
  • 2012-09-06
  • 2017-09-16
  • 2019-11-16
  • 2017-07-17
相关资源
最近更新 更多