OS:Ubuntuの14.04LTS
言語:Pythonのアナコンダ2.7(keras、theano)
GPU:GTX980Ti CUDA:CUDAIpython NotebookでGPUを使用することはできますか?
7.5私は私のGPU(GTX980Ti) を使用してIPythonノートブックにkerasにPythonコードを実行したいです
しかし、私はそれを見つけることができません。
以下のコードをテストしたいと思います。私はUbuntuの端末への上でそれを実行すると、 は、私は(これはよくGPUを使用しています。それは問題ありません)として、以下のコマンドを私は以下
export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
のようなパスを設定し
ファースト第二に、私は
THEANO_FLAGS='floatX=float32,device=gpu0,nvcc.fastmath=True' python myscript.py
以下
ようなコードを実行し、それがうまく動作します。
しかしpycharm(python IDE)または でコードを実行すると、Ipython Notebookで実行するとgpuは使用されません。 CPUのみを使用します
myscript.pyコードは以下のとおりです。
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 xrange(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')
、それを解決するために、私はそれはのようなエラーを生成 (複数myscript.pyに挿入二行)
import theano.sandbox.cuda
theano.sandbox.cuda.use("gpu0")
以下のようにコード使用GPUを強制
以下ERROR (theano.sandbox.cuda): nvcc compiler not found on $PATH. Check your nvcc installation and try again.
どのようにしますか?私は2日間過ごしました..
そして、私は確かにホームディレクトリに '.theanorc'ファイルを使用する方法を行いました。
'/ usr/local/cuda/bin'に' nvcc'があることを再確認しましたか?インストール時に別の場所が選択されている可能性があります。 Pythonの中から 'PATH'を印刷すると、' nvcc'へのパスが入っていますか? 'nvcc'の場所を追加した環境変数とは異なる環境変数' PATH'のインスタンスを取得している可能性があります。 – njuffa
@talomiesお返事ありがとうございます! – user3704652
@talomiesしかし、私は/ usr/local/cuda/binにnvccがあることをもう一度チェックします。そして/usr/local/cuda-7.5/binにもnvccがあります。問題はありますか? – user3704652