我有:
我听说我不能使用GPU theano但我不能使用CPU,但我想知道编程是否相同而且inanoaly theano将适用于CPU或其他情况下使用GPU。或者,如果我在编程时有一种方法可以为每个编程。
非常感谢
答案 0 :(得分:0)
在大多数情况下,在CPU上运行良好的Theano程序也可以在GPU上运行良好,而不需要更改代码。但是,有一些事情需要牢记。
并非所有操作都具有GPU版本,因此可以创建包含根本无法在GPU上运行的组件的计算。当你在GPU上运行其中一个计算时,它将无声地回退到CPU,因此程序将运行而不会失败并且结果将是正确的,但计算运行不如它可能有效并且将更慢,因为它必须在主内存和GPU内存之间前后复制数据。
如何访问数据会对GPU性能产生很大影响,但对CPU性能影响不大。主内存往往比GPU内存大,因此通常情况下整个数据集可以放在主内存中,但不能放在GPU内存中。有一些技术可用于避免此问题,但您需要提前考虑GPU限制。
如果你坚持使用传统的神经网络技术,并遵循Theano示例/教程代码中使用的模式,那么它可能在GPU上正常运行,因为这是Theano的主要用例。
答案 1 :(得分:0)
是的,有效的Theano明白你是否拥有GPU,并决定使用CPU或GPU来创建变量,唯一的困难是当你创建一个模型和变量与Theano有或没有GPU配置的变量改变,换句话说,如果您使用GPU(或CPU)创建模型并将它们保存在* .pickle(例如)中,并且在没有CPU(或GPU分别)的情况下转到另一台PC,则此模型及其变量保存将无效。