为什么GPU上的总内存和可用内存之间有如此大的差异

时间:2017-04-10 20:29:12

标签: tensorflow keras

我有一台GeForce GTX 1070并使用了由tensorflow支持的Keras。当我加载Keras而不对它运行任何操作时,它已经使用了很多GPU内存。这是为什么?我该如何解放它?

I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\core\common_runtime\gpu\gpu_device.cc:885] Found device 0 with properties: 
name: GeForce GTX 1070
major: 6 minor: 1 memoryClockRate (GHz) 1.7845
pciBusID 0000:01:00.0
Total memory: 8.00GiB
Free memory: 6.66GiB

1 个答案:

答案 0 :(得分:3)

TensorFlow会在启动时自动获取尽可能多的GPU内存。这是因为它可以更有效地管理分配的内存,这就是您在这里看到的内容。这里有github issue,其中包含如何告诉tf使用少于所有可用内存的说明。