在GPU上运行Theano的命令(Windows)

Hah*_*pro 4 python windows cmd python-2.7 theano

我在这里谈论该教程http://deeplearning.net/software/theano/tutorial/using_gpu.html

我使用的代码

from theano import function, config, shared, sandbox
import theano.tensor as T
import numpy
import time

vlen = 10 * 30 * 768  # 10 x #cores x # threads per core
iters = 1000

rng = numpy.random.RandomState(22)
x = shared(numpy.asarray(rng.rand(vlen), config.floatX))
f = function([], T.exp(x))
print(f.maker.fgraph.toposort())
t0 = time.time()
for i in range(iters):
    r = f()
t1 = time.time()
print("Looping %d times took %f seconds" % (iters, t1 - t0))
print("Result is %s" % (r,))
if numpy.any([isinstance(x.op, T.Elemwise) for x in f.maker.fgraph.toposort()]):
    print('Used the cpu')
else:
    print('Used the gpu')
Run Code Online (Sandbox Code Playgroud)

使用GPU测试Theano的部分中:有一些命令行将Theano标志设置为在cpu或gpu上运行。问题是我不知道将这些命令放入。

我尝试在Windows cmd上

THEANO_FLAGS=mode=FAST_RUN,device=gpu,floatX=float32 python theanogpu_example.py
Run Code Online (Sandbox Code Playgroud)

然后我得到

'THEANO_FLAGS' is not recognized as an internal or external command,
operable program or batch file.
Run Code Online (Sandbox Code Playgroud)

11

但是,我可以使用以下命令在cpu上运行代码

python theanogpu_example.py
Run Code Online (Sandbox Code Playgroud)

t2

我想在GPU上运行代码,该怎么办(使用本教程中的这些命令)?

解决方案
感谢@Blauelf关于Windows环境变量的思想。但是,必须将参数分开

set THEANO_FLAGS="mode=FAST_RUN"  & set THEANO_FLAGS="device=gpu" & set THEANO_FLAGS="floatX=float32" & python theanogpu_example.py 
Run Code Online (Sandbox Code Playgroud)

小智 5

docs开始THEANO_FLAGS是一个环境变量。因此,当您使用Windows时,可能需要更改

THEANO_FLAGS=mode=FAST_RUN,device=gpu,floatX=float32 python theanogpu_example.py
Run Code Online (Sandbox Code Playgroud)

进入

set THEANO_FLAGS="mode=FAST_RUN,device=gpu,floatX=float32" & python theanogpu_example.py
Run Code Online (Sandbox Code Playgroud)