AccelerEyes は 2012 年 12 月に、GPU コードで Mathworks と連携し、MATLAB 用の製品 Jacket を廃止したことを発表しました。
http://blog.accelereyes.com/blog/2012/12/12/exciting-updates-from-accelereyes/
残念ながら、Jacket ライセンスはもう販売していません。
私の知る限り、ArrayFire に基づく Jacket GPU Array ソリューションは、MATLAB が提供する gpuArray ソリューションよりもはるかに高速でした。
gpuArray を使い始めましたが、多くの関数の実装が不十分であることがわかりました。たとえば、単純な
myArray(:) = 0
非常に遅いです。カスタム CUDA カーネルをいくつか作成しましたが、実装が不十分な標準 MATLAB 機能により、コード全体で一貫して gpuArray を操作したとしても、多くのオーバーヘッドが追加されます。MATLAB コードを手書きの CUDA コードに置き換えることでいくつかの問題を修正しましたが、MATLAB 標準機能を再実装したくありません。
私が見逃しているもう 1 つの機能は、スパース GPU マトリックスです。
だから私の質問は:
MATLAB が提供する不適切に実装された既定の GPU 実装を高速化するにはどうすればよいですか? 特に、GPU を使用して MATLAB で疎行列演算を高速化するにはどうすればよいですか?