我们使用多个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
来查看正在发生的事情。在我们的机器上,我们看到每个张量流程都抓住了0.55t
!
当您在Jupyter笔记本中运行该进程并且不关闭笔记本时,笔记本电脑不会释放内存。在某些时候,您将运行一个无法访问内存的进程,它将会死亡。如果你在笔记本中运行,它只会告诉你内核已经死了。
任何人都可以帮忙吗?
答案 0 :(得分:1)
一个建议是在导入tensorflow之前放置以下代码段:
import os
os.environ["CUDA_VISIBLE_DEVICES"]="-1"
在@Nicolas评论后添加
是的,这会禁用GPU!这不是想要的东西。