画像キューブ (450x450x1500) である大きなデータセットに取り組んでいます。個々のデータ要素で動作するカーネルがあります。各データ要素は、6 つの中間結果 (フロート) を生成します。私のブロックは 1024 スレッドで構成されています。6 つの中間結果は、各スレッド (6 つの float 配列) によって共有メモリに格納されます。ただし、中間結果をそれぞれ加算して合計 (6 つの合計値) を生成する必要があります。これらの 6 つの float 配列をグローバル メモリに保存し、ホスト コードから推力または他のライブラリからリダクションを実行するのに十分なグローバル メモリがありません。
共有メモリ内の配列のカーネル関数内から呼び出すことができるリダクション ルーチンはありますか?
この問題を解決する最善の方法は何ですか? 私は CUDA プログラミングの初心者であり、提案を歓迎します。