内部错误:在Jupyter Lab中使用CUDA GPU训练Tensorflow模型时复制输入Tensor失败

whhtz7ly  于 2022-12-13  发布在  其他
关注(0)|答案(1)|浏览(743)

我开始使用GPU为Cats and Dogs数据集训练CNN模型。但是当运行模型时,有时我会遇到以下错误:InternalError: Failed copying input tensor from /job:localhost/replica:0/task:0/device:CPU:0 to /job:localhost/replica:0/task:0/device:GPU:0 in order to run _EagerConst: Dst tensor is not initialized
我应该做些什么来防止这种情况发生?

u1ehiz5o

u1ehiz5o1#

当训练时GPU中没有足够的内存时生成错误消息,这通常是由批处理大小引起的。
最简单的解决方案是在jupyter实验室中重新启动内核,并将批处理大小减少到最佳数量。
您可以进一步监控运行期间的内存使用情况并记录运行元数据,然后使用这些数据确定最佳批处理大小。为此,您可以使用Tensorboard。此外,默认情况下,Tensorflow将尝试分配尽可能多的GPU内存。您可以使用GPUConfig选项更改此设置。以便Tensorflow只分配所需的内存。查看这个GitHub issue
请注意,重复运行模型可能会产生开销,如果您进行非常密集的实验,最好能够不时地重新启动运行时,以清除所有内容。

相关问题