我试图改变西亚诺程序中使用的设备。
from theano import config
config.device = "gpu1"
但是我犯了错误
Exception: Can't change the value of this config parameter after initialization!
我想知道在代码中将gpu转换为gpu1的最佳方法是什么?
谢谢
发布于 2015-05-28 14:54:22
在同一进程中运行的代码中无法更改此值。您可以做的最好的事情就是拥有一个“父”进程,它可以改变THEANO_FLAGS
环境变量并生成子进程。然而,产卵的方法将决定儿童在哪个环境中工作。
还请注意,没有方法可以通过更改来维护进程的内存。您不能开始在CPU上运行,对存储在内存中的值执行一些工作,然后更改为在GPU上运行,然后使用内存中的值继续运行,从工作的早期阶段(CPU)开始。必须关闭进程并重新启动,才能应用设备更改。
一旦您的import theano
设备是固定的,不能在进行导入的进程中进行更改。
发布于 2016-03-29 08:38:41
对我有用的另一种可能是在导入theano之前在过程中设置环境变量:
import os
os.environ['THEANO_FLAGS'] = "device=gpu1"
import theano
发布于 2015-11-07 04:18:40
删除.theanorc中的“设备”配置,然后在代码中:
import theano.sandbox.cuda
theano.sandbox.cuda.use("gpu0")
对我来说很管用。
https://groups.google.com/forum/#!msg/theano-users/woPgxXCEMB4/l654PPpd5joJ
https://stackoverflow.com/questions/30184994
复制相似问题