2

theanoライブラリをインポートしようとするとすぐに、次のエラーが発生します。

>>> import theano
ERROR (theano.sandbox.cuda): ERROR: Not using GPU. Initialisation of device gpu failed:
initCnmem: cnmemInit call failed! Reason=CNMEM_STATUS_OUT_OF_MEMORY. numdev=1

私の.theanorcの内容:

[global]
floatX = float32
device = gpu
optimizer = fast_run

[lib]
cnmem = 0.9

[nvcc]
fastmath = True

[blas]
ldflags = -llapack -lblas

[cmodule]
mac_framework_link=True

また、theano フラグを使用して python 環境を実行しようとしましたが、それでも同じ問題が発生します。

$ THEANO_FLAGS=mode=FAST_RUN,device=gpu,floatX=float32,lib.cnmem=0.9 python3

彼らはまた、Theano Github ページで同様の問題について言及しています:デバイス gpu の初期化に失敗しました! 、しかし、彼らは私が正しく設定したと思っていたfloatint値について話しています(特別な理由はありませんが、実際に、、および他のいくつかの値を試してみましたが、同じ結果が得られました)。CNMeM0.91.00.950.5

私のセットアップ:

  • Mac OS X 10.11.4
  • Xcode 7.2 (7.3 からダウングレードする必要がありました)
  • クーダ 7.5.19
  • パイソン 3.5.1

解決:

まず第一に、の値が総メモリの % であることを認識していませんでしたCNMeMまた、2 台のモニターで GPU を使用していたため、実際には余裕のあるメモリがあまりありませんでしたが、とにかく試してみましたが0.1、動作します。

cuDNN が無効になっている場合の 2 番目の問題は、次の行を theano 構成に追加することで解決しました。

optimizer_including = cudnn

詳細については、このページを参照してください: sandbox/cuda/dnn

4

1 に答える 1

0

まず第一に、 の値が総メモリの % であることを認識していませんでしたCNMeMまた、2 台のモニターで GPU を使用していたため、実際には余裕のあるメモリがあまりありませんでした0.1

cuDNN が無効になっている場合の 2 番目の問題は、次の行を theano 構成に追加することで解決しました。

optimizer_including = cudnn

詳細については、このページを参照してください: sandbox/cuda/dnn

于 2019-03-24T21:19:53.283 に答える