リアルタイム 3D モデリングでアプリケーションを最適化しようとしています。アプリケーションの計算部分は、ほぼ完全に CUDA の GPU 上で実行されます。このアプリケーションでは、小さな (6x6) 倍精度対称正定線形システム Ax = b を毎秒 500 回以上解く必要があります。現在、これは Cholesky を使用した効率的な CPU ベースの線形代数ライブラリで行われていますが、CPU から GPU へのデータのコピー、および GPU へのデータのコピーが 1 秒あたり数百回必要であり、毎回のカーネル起動のオーバーヘッドなどがあります。
データを CPU にまったく取り込まずに、GPU のみで線形システムの解を計算するにはどうすればよいですか? MAGMA ライブラリについて少し読んだことがありますが、GPU のみのアルゴリズムではなく、ハイブリッド アルゴリズムを使用しているようです。
GPU 上の個々の線形システムのソリューションは、既存の CPU ベースのライブラリよりもはるかに遅くなるという事実に備えていますが、間のデータ通信を削除することでそれを補うことができるかどうかを確認したいと考えていますホストとデバイス、およびカーネルの起動などのオーバーヘッドが毎秒数百回発生します。GPU のみの LAPACK のような代替手段がない場合、GPU のみでこの特定の 6x6 ケースを解決するために何かを実装するにはどうすればよいでしょうか? たとえば、GPU BLAS ライブラリを使用して、多大な時間の投資なしでそれを行うことができますか?