tensorflow的GPU版本运行时出现OOM错误解决方法
问题描述
在使用tensorflow的GPU版本跑神经网络相关的代码时出现了如下的错误:Hint: If you want to see a list of allocated tensors when OOM happens, add report_tensor_allocations_upon_oom to RunOptions for current allocation info.
解决方法
出现上述原因主要是因为GPU的显存太小,导致程序运行时没有更多的内存支持。
- 指定GPU
在程序前两行加入下面的代码:
import os
os.environ[“CUDA_VISIBLE_DEVICES”] = ‘1’ #指定第一块GPU可用
PS:在任务管理器中性能栏查看自己的GPU使用情况,决定具体使用哪块GPU。 - 调参
batch_size:将此参数的值设置小一点;
特征大小:若输入是图片,将图片适当调小 - 使用CPU
import os
os.environ[“CUDA_VISIBLE_DEVICES”] = “”
引号里填的是GPU的序号,不填的时候代表不使用GPU。