3D の数千点のコレクションが与えられた場合、あるカットオフ値 (ユークリッド距離に関して) 内に収まる各粒子の近傍のリストを取得する必要があり、可能であれば、最も近いものから最も遠いものへと並べ替える必要があります。
CUDA または OpenCL 言語で、この目的のための最速の GPU アルゴリズムはどれですか?
3D の数千点のコレクションが与えられた場合、あるカットオフ値 (ユークリッド距離に関して) 内に収まる各粒子の近傍のリストを取得する必要があり、可能であれば、最も近いものから最も遠いものへと並べ替える必要があります。
CUDA または OpenCL 言語で、この目的のための最速の GPU アルゴリズムはどれですか?
私が知っている最速の GPU MD コードの 1 つであるHALMDは、 CUDA SDK の例で使用されているのと同じ種類のアプローチの (高度に調整された) バージョンを使用しています。HALMD の論文と Particles のホワイトペーパーはどちらも非常に明確に書かれています。根底にあるアルゴリズムは、粒子をカットオフ半径サイズのビンに割り当て、そのインデックスに基づいて基数ソートを実行してから、隣接するビン内の粒子を調べることです。
私はテストも使用もしていません。私はグーグルで検索して、最初に見つけたリンクを投稿しました。