0

我们正在使用多个 Jupyter 笔记本在 GPU 上运行 TensorFlow 应用程序。每隔一段时间,其中一次运行会使笔记本电脑崩溃,并简单地通知“内核已崩溃......”。

当我们将代码放入 python .py 文件时,stderr 输出为

F tensorflow/core/kernels/conv_ops_3d.cc:369] Check failed:   stream->parent()->GetConvolveAlgorithms(&algorithms)
Aborted

在另一次运行中,stderr 报告了:

F tensorflow/core/common_runtime/gpu/gpu_util.cc:296] GPU->CPU Memcpy failed

问题是 tensorflow 应用程序正在占用大量内存。在 Linux 中,您可以运行top以查看发生了什么。在我们的机器上,我们看到每个 tensorflow 进程都在抓取0.55t

当您在 Jupyter 笔记本中运行该进程并且不关闭笔记本时,笔记本不会释放内存。在某些时候,您将运行一个无法访问内存的进程,它会死掉。如果你在笔记本中运行,它只会告诉你内核已经死了。

有人能帮忙吗?

4

1 回答 1

1

一个建议是在导入 tensorflow 之前放置以下代码段:

import os
os.environ["CUDA_VISIBLE_DEVICES"]="-1"

在@ Nicolas 评论之后添加

是的,这会禁用 GPU!这不是想要的。

于 2017-06-30T16:33:29.830 回答