2016-03-08 71 views
0

刚开始接触Theano和我的GTX 960,但在整个几分钟训练的网络(特别是复发性回归)和GPU使用高峰时达不到一秒钟,也许两个到三次花。有没有办法迫使它在整个时间内实际使用GPU?Theano很少使用GPU

似乎需要一个肮脏的很长一段时间没有太多的数据。

回答

1

什么是真正发生在你的代码是,大部分的时间都花在获取数据到和关闭GPU,但任何GPU显示器将显示该GPU是“不使用”在此期间,即使什么它正在做的是加载数据。您无法避免这样做,除了明智地将数据加载到GPU上的方式和时间。你所描述的尖峰是完全正常的 - 也就是说,当GPU实际进行计算时。没有什么可以做的!

+0

在如你所描述的这种情况,在数据传输占主导地位的计算时间,它可能会更快地摆在首位在CPU上进行训练。 – cfh

+0

不一定 - 您仍然需要将数据导入GPU。耗时最长的事情是从磁盘读取文件,然后将它们放在需要在电路板上物理存放的位置。 – mprat

+0

我来自MatLab NN背景,几乎瞬间将数据加载到GPU中并没有问题。我不怀疑分钟的延迟是由具有从RAM复制数据到有1.5Mb我GPU造成... – MKennedy