GPU 在执行 Tensorflow 或 Theano 代码期间丢失

标签 gpu nvidia tensorflow-gpu cudnn theano-cuda

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

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

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

我正在与:

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

  • 我不确定如何解决这个问题,任何人都可以提出可能导致此问题以及如何诊断/解决此问题的想法吗?

    最佳答案

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

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

    关于GPU 在执行 Tensorflow 或 Theano 代码期间丢失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45891934/

    相关文章:

    OpenCL 和 Tesla M1060

    opencv - 为什么 CPU 和 GPU 内存之间的数据交换这么慢?

    memory - 如何在 OpenCL 中使用固定内存/映射内存

    tensorflow - 了解 ResourceExhaustedError : OOM when allocating tensor with shape

    cuda - 了解流式多处理器 (SM) 和流式处理器 (SP)

    java - OpenCL 和 Java - 奇怪的性能结果

    linux - tensorflow docker gpu 图像未检测到我的 GPU

    cuda - 在应用程序运行时检查 CUDA MPS 服务器是否打开/关闭?

    tensorflow - list_local_device tensorflow 未检测到 gpu

    python : tensorflow-gpu import errors