Outline

Theano 上で動く Deep Learning Library である Lasagne を使ったコード GPU 上で使用した際、以下のエラーが出たのでその対策をした。
このエラーは非常に厄介で、最初は自分で書いた別のプログラムで GPU を使用して際に起こったが、その時はエラーメッセージなしで勝手にプログラムが止まったので原因究明が非常に大変だった。

$ PYTHONPATH=. python examples/copy-task.py 
Using cuDNN version 5110 on context None
Mapped name None to device cuda0: Tesla K80 (0000:83:00.0)
Segmentation fault (core dumped)

まずはここを参考に、conda を使った際にインストールされる pygpu の version が悪いことを疑って以下を試した。

$ conda install pygpu=0.6.2

しかし結果は変わらず対策を探していると、ここに ~/.theanorc の device を gpu から cuda するとセグフォると書いてあったので device を cuda から gpu にしてみた。
結果うまく行ったが、gpu にした場合バグが多く効率が悪くまた cuda で使える float64 が使えないとの情報もあるのでよりいい方法があれば追記予定。

- guchio3


Comments

comments powered by Disqus