1. 首先檢查是否有其他進程佔用GPU
nvidia-smi
查看當前使用 GPU 的情況:
PID
就是進程號, 可以發現進程 3232 佔用了大部分內存, 故選擇殺死它:
sudo kill -9 3232
如下圖所示:
如果發現不是 GPU 佔用導致的問題, 請看下面的方法:
2. 檢查GPU的配置
2.1 限制GPU使用
config = tf.ConfigProto()
config.gpu_options.per_process_gpu_memory_fraction = 0.5
config.gpu_options.allow_growth = True
with tf.Session(config=config) as sess:
2.2 指定使用的GPU
import os
os.environ['CUDA_VISIBLE_DEVICES'] = "1"
2.3 減小 batch size
將 batch size
設爲 1