私はPythonをTheanoで使用してOpenCLでコードを高速化しようとしています。libgpuarray
とpygpu
を指示どおりにインストールしましたが)エラー。インストールで、OpenCLランタイムがインストールされていることが検出されました。
OpenCLでTheanoの例を実行できないのは、主にGPUの指定方法がわからないためです。 inxi
によると、私のGPUはRadeon HD 5340/5450/5470
です。 Theanoドキュメントのすべてのコードはdevice=cuda0
を使用しており、OpenCLについて言及している場所はdevice=openclN
であり、N
は数字です。
device=opencl0
を試してみたところ、正しいフォーマットはopencl<int>:<int>
であるというpygpu
エラーが発生しました。それ以来、私は任意の数の組み合わせ(opencl0:0
など)を試し、常にGpuArrayException: Unknown error
を試しました。
私のシステムはUbuntu 14.04 x64で、ハードウェアは東芝サテライト15インチです。Theano
をpip
と一緒にインストールし、後でサイトの指示に従ってlibgpuarray
をインストールしました。
何が悪いのですか?
opencl0:0は正しいです。 pyopenclが機能することを確認できますか? opencl(またはdrivers/clコンパイラ)に問題がある可能性があります。
ただし、現時点では、TheanoはOpenCLで完全には機能しないと思います。現在のところ、部分的なサポートがあり、「hello world」には十分ですが、重要なコードを実行するには不十分です。
見る:
https://github.com/Theano/Theano/issues/2189
https://github.com/Theano/Theano/issues/1471
https://github.com/Theano/Theano/issues/219
https://github.com/Theano/Theano/pull/1732
要約すると、いいえ、ほとんどのものは移植されていません(たとえば、一般的な操作であるElemwiseなど)。私は本当にOpenCLでTheanoを見たいです。これは、AMDが売り込むのに最適なことです。すぐに:)