处理Theano中GPU的内存碎片

时间:2015-12-25 21:01:15

标签: python memory-management machine-learning gpgpu theano

要为GPU内存上的变量分配空间,连续内存区域必须有足够的空间。换句话说,与RAM不同,您不能将分段的内存区域分配给GPUS上的变量。将不同的共享变量存储在GPU内存中并不断更新它们可能会导致内存碎片。因此,即使GPU上有足够的可用内存(以字节为单位),您也可能无法使用这些内存区域,因为它们不在连续块中。

我的问题是Theano如何处理这样的问题?

shared_var.set_value([])是否释放分配给该共享变量的所有内存,以便下一次更新(shared_var.set_value(newDataPoints))只会为共享变量分配内存量,从而避免内存碎片化?

Here被解释为更新共享变量仍可能导致内存碎片。所以我想知道如果参数borrowallow_gc(在theanorc中)设置为True,问题是否仍然存在?

如何跟踪GPU上块(连续)中的可用内存量?

0 个答案:

没有答案